Hal yang harus di pelajari programmer bukan hanya jago matematika

Hal yang harus di pelajari programmer bukan hanya jago matematika hallo teman teman selamat datang di website Dikri Nalendra07 | Teknologi hari ini...

 Hallo sobat teknlogi selamat datang kembali ke website Dikri Nalendra07 | Teknologi hari ini saya akan membahas tentang Hal yang harus di pelajadi programmer bukan hanya jago matematika

Hal yang harus di pelajari programmer bukan hanya jago matematika

Banyak sekali bahasa pemrograman serta tools yang gratis serta open source sehingga bisa membuat kita bingung memilah mereka sebab memanglah pemecahan yang ditawarkan juga sangat bagus serta menarik. Banyak pula bahasa pemrograman serta tools yang berbayar yang malah terus menjadi mempermudah kita buat memakainya serta telah banyak perihal teknis yang ditangani oleh tools berbayar tersebut.

Tetapi seluruh itu cuma diferensiasi, pada dasarnya investasi waktu kita harusnya diluangkan buat suatu yang mendasar serta bertabiat global, sehingga apabila kita pindah bahasa pemrograman ataupun tools juga tidak hendak kaget serta panik sebab wajib belajar dari dini. Kita juga tidak wajib merasa sangat susah apabila wajib berpindah version dari tipe yang lama ke tipe yang terkini.

Apapun bahasa pemrograman serta tools- nya. Sesungguhnya terdapat sebagian metode yang dapat dipahami seseorang programmer serta bisa membuat dirinya jadi dinamis terhadap tools apapun. Apa sajakah itu? berikut merupakan hal- hal berarti yang wajib dipahami oleh seseorang programmer. Cekidot gan: D.

1. Membaca Dokumentasi

Perihal inti yang satu ini kerap dibiarkan oleh programmer sementara itu sebagian besar permasalahan bisa dituntaskan lewat dokumentasi( sepanjang dokumentasinya lengkap). Sebab telah jelas kalau pihak owner library, aplikasi pihak ketiga, maupun sistem yang kita pakai telah terdokumentasi dengan baik.

Terlebih apabila dokumentasi telah memiliki Getting Started, Bimbingan, API Reference, serta Changelog. Dokumentasi tersebut telah sangat lengkap buat kita pakai saat sebelum bertanya perihal yang telah kerap ditanyakan ke forum. Tidak hanya kurangi waktu buat menjawab pendapat pedas dari para senior yang terdapat di forum. Kita pula mempunyai waktu buat menanggulangi permasalahan kita sendiri buat jadi lebih baik.

Dokumentasi juga dapat saja bukan yang formal, postingan serta forum yang ditulis oleh komunitas juga bisa jadi bahan pelajaran untuk seseorang programmer.

2. Algoritma serta Struktur Data

Kenapa algoritma serta struktur informasi itu berarti? bayangkan apabila seorang tidak dapat membongkar permasalahan yang sesungguhnya dapat dituntaskan dengan looping dalam looping ataupun wajib mentranslasikan suatu ketentuan bisnis cuma jadi struktur if yang bersarang. Belum lagi tidak sedikit programmer yang masih belum paham apa itu guna.

Algoritma baik programmer yang kuliah di jurusan IT ataupun bukan, senantiasa wajib mengenali bawah serta prinsipnya terlebih dulu. Apalagi buat permasalahan yang sama terdapat sebagian algoritma yang bisa digunakan supaya eksekusi kode lebih kilat. Apalagi kita juga wajib sanggup buat menerjemahkan algoritma yang dirancang oleh seorang buat ditransalasikan jadi kode program. Oleh sebab itu kemampuan algoritma bawah sangat dibutuhkan mengingat bawah dari pemrograman itu sendiri merupakan algoritma.

Struktur informasi ialah representasi informasi lingkungan yang digabung dari informasi simpel serta memiliki pembedahan tertentu. Suatu array memanglah lumayan. Tetapi lebih gampang apabila kita sanggup memakai list buat suatu pembedahan deret, ataupun merepresentasikan suatu jalan dengan graf ataupun tree. Struktur informasi sangat banyak dipelajari oleh jurusan IT, tetapi kerapkali dibiarkan oleh mahasiswanya sendiri.

Meski di dunia pekerjaan tidak sering sekali digunakan struktur informasi. Apabila menguasainya hendak mengganti metode berpikir kita buat menanggulangi sesuatu permasalahan. Serta tidak tidak sering terdapat permasalahan yang memanglah memerlukan struktur informasi buat menuntaskan permasalahan tersebut. Misalnya pencarian jalan terpendek ataupun studi pembedahan.

4. OOP serta Design Pattern

Mengapa sih wajib belajar OOP? sesungguhnya OOP ini membuat kode program kita jadi lebih terstruktur serta lebih gampang dibaca dibanding apabila kita menulisnya dengan satu skrip besar ataupun masih secara prosedural. Tidak hanya itu prinsip OOP ini ditopang pula oleh UML yang mana dengan desain aplikasi serta sistem yang sama bisa direpresentasikan ke bermacam bahasa pemrograman.

Tingkatan lanjutnya merupakan design pattern, dimana kita tidak butuh membuat pola kode kita sendiri serta bisa mencomot pattern yang telah diterapkan oleh orang lain. Misalnya kita mau membuat suatu class yang bisa menciptakan class lain. Ataupun mau menerjemahkan URL buat dieksekusi pada class serta method dari sesuatu class lewat frontend controller. Seluruhnya bisa dipelajari lewat design pattern.

Salah satu alibi utama merupakan apabila kalian mau memahami website framework, menekuni library, ataupun menulis sesuatu library. Dengan OOP serta design pattern, library yang kalian buat hendak jadi lebih baik serta bisa digunakan oleh banyak orang. Sebaliknya apabila kalian memahami OOP serta design pattern, kalian juga tidak hendak kesusahan apabila wajib mengobrak- ngabrik sesuatu website framework hingga ke dalam- dalamnya.

Meski OOP itu berarti, tetapi tidak seluruh bahasa pemrograman wajib memakai OOP. Sebagian bahasa pemrograman fungsional sangat tidak membutuhkan OOP dalam mengimplementasikan kode- kode yang terbuat oleh bahasa pemrograman tersebut.

5. Desain Aplikasi serta Database

Cuma coding saja tidak lumayan. Meski kalian jago coding, programmer wajib pula dapat menganalisis sesuatu sistem serta aplikasi sendiri. Gimana menerjemahkan kebutuhan bisnis jadi alur aplikasi mulai dari menerima input meneruskannya ke proses serta menampilkannya jadi sesuatu output.

Data- data yang melalui sepanjang di dalam proses sesuatu sistem serta aplikasi, haruslan ditaruh ke dalam suatu fitur yang dinamakan database serta pastinya buat mendesainnya juga dibutuhkan kemampuan spesial. Kalian wajib belajar desain database mulai dari Boyce- Code Wajar Form hingga Entity Relationship Diagram.

Buat desain aplikasi sendiri kalian bisa menekuni UML, DFD, serta Flowchart selaku perlengkapan bantu buat merepresentasikan ide- ide kalian dalam membangun sesuatu alur kerja dari aplikasi ataupun sistem yang hendak kalian bangun.

Misal buat membuat suatu aplikasi registrasi pelatihan saja, pasti kita memerlukan sesuatu form, memvalidasinya, hingga mencatatnya ke database yang hendak kita pakai.

6. Matematika

Tidak seluruh programmer harus memahami matematika, tetapi memahami matematika bawah hukumnya harus. Masa iya programmer tidak paham kali, untuk, tambah, ataupun kurang? Matematika, suka tidak suka tetaplah wajib dipahami terlebih apabila seseorang programmer yang terjun dalam dunia simulasi, bisnis, machine learning, akuntansi, serta ekonomi.

Tidak dapat seseorang programmer lepas tangan buat tidak memahami matematika bawah serta matematika yang terpaut dengan permasalahan yang lagi dikerjakannya. Meski sebagian rumus serta resep dikerjakan oleh orang lain. Tetapi seseorang programmer harus ketahui gimana metode merepresentasikan sesuatu resep kedalam kode aplikasi yang dibuatnya.

7. Bahasa Inggris

Salah satu kelemahan programmer yang tidak berdialog bahasa inggris selaku bahasa ibunya merupakan malas membaca postingan ataupun pemecahan lain dalam bahasa Inggris. Sementara itu manual serta dokumentasi kebanyakan ditulis memakai bahasa Inggris. Tidak hanya itu konten- konten belajar tingkatan intermediate hingga advance ditulisnya juga memakai bahasa Inggris.

Bahasa Inggris sangat memegang peranan berarti. Meski programmer cuma hingga tingkatan pasif dimana cuma memakainya buat kebutuhan membaca saja. Bahasa Inggris pula jadi bahasa standar buat berbicara dengan klien ataupun rekan sesama programmer dari belahan dunia lain( sepanjang masih dapat berdialog bahasa Inggris).

8. Mengoptimalkan Sistem Pembedahan yang Digunakan

Sistem pembedahan yang kita pakai masih jadi teka- teki untuk sebagian programmer. Sementara itu sistem pembedahan yang digunakannya dapat jadi titik dini untuk ia buat berkarir dengan memakai bahasa pemrograman tertentu. Misal pengguna Windows apabila menyadari kalau sistem operasinya itu sangat potensial apabila digunakan buat membuat aplikasi dengan ASP. NET, SQL Server, serta Azure. Pasti saja hendak dimanfaatkannya buat menekuni ketiga teknologi tersebut di Windows.

Tidak hanya itu apabila programmer yang memakai OSX ketahui kalau sangat besar kemampuan apabila kita berkarir buat membuat aplikasi iOS pasti mereka hendak mulai memasang XCode serta Objective- C ataupun Swift buat mulai membuat aplikasi mobile yang eksklusif buat produk Apple saja.

Serta apabila seorang ketahui kalau Linux yang digunakannya nyaris sama strukturnya dengan server Linux yang biasa dipasang di VPS cloud hosting pasti mereka hendak mulai belajar membangun infrastruktur sendiri serta menekuni bermacam kemampuan yang terkunci di dalam Linux buat menjadikan Linux di laptopnya selaku simulasi buat Linuxnya yang terdapat di Server.

9. Jaringan Komputer

Saat sebelum beranjak ke internet serta cloud computing pasti seseorang programmer harus memahami dasar- dasar jaringan pc semacam ip address, subnetting, serta client server. Bisa jadi banyak yang malas buat memahami TCP/ IP ataupun OSI Layer secara merata, tetapi harus ketahui sebagian perihal mendasar supaya programmer lebih cakap dalam memahami jaringan pc.

Tidak seluruh aplikasi yang dibesarkan wajib tersambung ke internet. Pasti dengan dorongan network engineer, seseorang programmer wajib ketahui pula seluk beluk jaringan pc buat menghubungkan aplikasi yang dikembangkannya kepada bermacam fitur yang tersambung lewat jaringan pc baik lokal, antar gedung, maupun antar daerah.

Terlebih apabila membangun aplikasi perkantoran, dimana kita wajib mengoptimalkan arsitektur jaringan pc yang dibentuk network engineer terhadap aplikasi kita.

10. Internet

Programmer tidak dapat mengirim e- mail? Masih terdapat kok yang semacam itu, di tengah masa cloud yang lagi booming pasti saja dasarnya wajib kita kuasai dahulu. Bermacam protokol juga wajib kita tahu meski tidak kita kuasai. Semacam beberpaa protokol berikut:

  • HTTP
  • HTTPS
  • WebSocket
  • WebSocket Secure
  • SMTP
  • FTP
  • TELNET
  • Socket
  • Thrift
  • SOAP
  • Oauth
  • Json Website Token
  • serta lainnya

Tidak cuma bermacam protokol yang wajib dipahami, sebagian layanan bawah internet semacam email wajib kalian kuasai buat proses bertukar data serta menjajaki sesuatu layanan aplikasi yang ada secara online.

Tidak kurang ingat pula seseorang programmer seyogyanya memahami bermacam aplikasi yang berkaitan dengan internet, serta sanggup membangun salah satu komponen infrastrukturnya sendiri. Misal website server serta mail server.

11. Source Management

Git, Svn, Mercurial, ketiganya merupakan tools yang bisa mempermudah kalian buat melaksanakan source code management. Masih suka mencampurkan source code dengan flashdisk? Lupakan! Waktunya kalian memakai source code management.

Perkaranya apabila kalian wajib mengerjakan sesuatu proyek bersama 10 orang tetapi masih memakai flashdisk apakah tidak hendak repot? Pasti saja hendak repot. Dengan source code management, kalian bisa memandang kode yang konflik, bisa rollback ke kode tadinya, bisa meningkatkan pendapat pada pergantian kode yang ditambahkan, serta yang sangat utama merupakan penggabungan kode program yang ditulis dari sebagian orang yang berbeda.

Tidak hanya itu source code management mempermudah kalian buat mem- backup source code kalian di server tempat layanan tersebut terletak supaya tidak terjalin musibah yang tidak di idamkan.

Sebagian layanan source code management yang populer serta free antara lain, BitBucket, Github, serta GitLab.

12. Cloud Computing

Tidak wajib seluruh programmer memahami cloud computing, tetapi apabila memahami sedikit saja, pasti hendak menolong apabila sewaktu- waktu dibutuhkan. Rata- rata cloud computing telah berbentuk managed service yang ditawarkan sesuatu vendor. Terdapat pula yang on- premise serta wajib dikelola sendiri.

Misalnya saja, kita bisa melaksanakan kerjasama dengan vendor tertentu dengan jenis kerjasama berbentuk kampus serta mahasiswa. Ataupun pula dengan kerjasama berbentuk akselerator bisnis. Kalian bisa menggunakan layanan cloud mulai dari IaaS, SaaS, hingga PaaS. Tidak hanya itu kalian juga bisa dengan gampang menanggulangi permasalahan availibility serta reliabilitas aplikasi yang kalian kembangkan.

Tidak hanya itu sebagian aplikasi yang telah jadi cloud semacam Google Docs ataupun Trello, bisa kalian pakai buat menunjang proses pembuatan aplikasi yang lagi kalian kerjakan dikala ini semacam pendokumentasian proyek ataupun pembagian tugas dalam proyek tersebut.

13. Package Manager

PIP, NPM, NuGet, Composer, Yarn, Gem, GoPkg, serta yang lain ialah salah satu dari sekian package manager yang telah populer di pengguna bahasa pemrogramannya tiap- tiap. Memanglah kita terbiasa memakai class- class yang kita buat sendiri serta digabungkan dengan source proyek kita. Tetapi alangkah lebih baik apabila kita mulai mengganti kode class kita ke dalam package manager cocok bahasa pemrograman kita.

Tidak hanya itu kelebihan dari memakai package manager merupakan mudahnya mengelola library yang kita pakai ataupun yang kita buat, sehingga apabila terdapat pembaharuan terkini lumayan meng- update library tertentu saja dibanding mengubah file- nya secara manual serta membuat kita letih sendiri.

14. Unit Testing

Lumayan banyak industri yang menyimpan atensi besar terhadap unit testing demi tingkatkan mutu produk mereka. Terdapat pula yang tidak hirau dengan unit testing sebab memanglah lebih berarti berakhir saat sebelum deadline serta deliver.

Unit testing sangat diperlukan oleh seseorang programmer buat membenarkan kode yang dibuatnya cocok dengan bisnis proses serta yang terutama merupakan kurangi waktu pengujian yang sangat lama dibandingkan wajib memeriksanya secara manual serta diulang lagi dari dini apabila terdapat akumulasi guna baru.

Pada biasanya bahasa pemrograman yang ada telah mempunyai perlengkapan buat melaksanakan unit testing. Misalnya di Java terdapat Junit, Python terdapat UnitTest, PHP terdapat PHPUnit, serta yang lain.

15. Text Editor

Terdengah remeh, tetapi memanglah text editor harus dipahami pula demi tingkatkan produktivitas dikala menulis source code. Yakinkan kalian memahami seluruh fitur serta shortcut yang telah terdapat di dalam text editor tersebut.

Banyak yang memahami Vim, tidak sedikit pula yang memahami Sublime Text serta Visual Studio Code. Nyaris seluruh bacaan editor telah mempunyai fitur- fitur mutahir semacam multiline editing, split view, minimap, full text search, serta yang lain.

16. Bidang yang Digeluti

Sangat banyak hal- hal inti yang dipahami, tidak hanya itu, tidak sama bahan belajar seseorang desktop application programmer yang memakai VB. NET dengan mobile application programmer yang memakai Android, tiap- tiap memiliki disiplin serta metode yang berbeda dalam membuat suatu aplikasi.

Belum lagi apabila kita menyamakan backend website application programmer dengan frontend website application programmer keduanya mempunyai fokus yang mirip tetapi berbeda. Dimana frontend website application programmer dituntut buat lebih mahir memakai HTML- CSS- Javascript dalam membuat tampilan website yang menawan. Sebaliknya backend website application programmer dituntut buat membuat proses bisnis jadi aplikasi website berbentuk service maupun non service yang bisa mengirim email, integrasi dengan sistem lain, mencetak laporan, serta menaruh informasi ke database.

Tidak sama pula dengan programmer yang menggeluti bidang IoT dimana mereka lebih fokus pada mikrokontroler serta rangkaian elektronika buat menangkap sesuatu informasi dari entitas bergerak serta area dekat.

Oleh sebab itu kala seseorang programmer terjung ke sesuatu bidang, diharapkan ia ingin mengosongkan waktu buat mempertajam konsentrasinya di bidang yang digelutinya. Sehingga jadi lebih pakar di konsentrasinya meski belum pasti mahir di bidang yang lain.


Posting Komentar

© Teknologi Terkini. All rights reserved. Developed by Jago Desain