Dalam sejarahnya, bahasa pemrograman selalu mengalami peningkatan-peningkatan dalam berbagai sisi. Entah dari sisi penggunaan memori, kemudahan dalam sintaksis maupun kemudahan dalam pengajaran untuk pembelajaran di lembaga pendidikan.
Dalam beberapa tahun belakangan sudah bermunculan berbagai bahasa pemrograman baru dengan berbagai keunggulan yang ditawarkan, seperti Dart oleh Google, Rust oleh Mozilla, dan Swift oleh Apple. Tiga perusahaan ini (Google, Mozilla, Apple) merupakan perusahaan besar dalam bidang teknologi dan tentu produk yang mereka launching memiliki hal yang pasti dibutuhkan oleh para programmer dan developer untuk memenuhi kebutuhan pasar.
Nah, setelah menganalisis dan sharing-sharing dengan para siswa maupun mahasiswa yang mengambil jurusan Ilmu Komputer (Khususnya : Software Engineer) kali ini blog ini akan sedikit memberi pencerahan dan pemahaman penting tentang dunia teknologi yang sepertinya perkembangannya tidak terkejar.
Dev! Perlu dipahami bahwa coding-world / dunia coding merupakan dunia yang sangat dinamis dan akan selalu ada perubahan, tetapi perlu diketahui pula bahwa perubahan dalam dunia teknologi khususnya coding tidak terlepas dari dasarnya. Dasar inilah yang perlu kita pahami, seperti variabel, konstanta, prosedur, fungsi, compiler maupun interpreter.
Nah, sejauh pemahaman penulis....
Dalam perkembangan teknologi selanjutnya ke OOP (Object Oriented Programming) / Pemrograman Berbasis Objek muncul istilah baru yaitu : class, method, inheritance, polymorphism maupun encapsulation. Bagi yang sudah mamang dalam dunia coding pasti berpikir "Apa ini ? Rumit sekali...." akhirnya pelan-pelan tapi pasti mereka menjauhi dunia coding dan pindah ke hal-hal yang lebih bisa ia terima.
Padahal faktnya, tidak ada perubahan yang mencolok dalam hal ini. Hanya istilahnya saja yang diubah. Contoh, dalam struktural programming kita mengenal istilah prosedur & fungsi. Nah, dalam OOP istilah itu diubah menjadi method, hanya saja method disini dibagi 2 yaitu method void sebagai pengganti prosedur dan method non-void sebagai pengganti fungsi. Mudah bukan ?
Termasuk dalam hal ini adalah class, atribut dan yang lain - lain. Ketika kita sudah memiliki pemahaman yang kuat / menggenggam dasarnya programming tentu kita tidak akan mengalami kendala kesulitan yang berarti untuk berpindah ke bahasa pemrograman manapun.
Bahasa C merupakan bahasa induk dari berbagai bahasa pemrograman modern saat ini. Jadi, jika kita mampu memahani bahasa C ( include : C++ ) dengan baik, pastinya kita tidak akan mengalami kesulitan dalam belajar Java maupun Rust. Nah, setalah Java dirasa sudah memahami kita tidak akan kesulitan dalam belajar ke bahasa Dart / Flutter.
Begitu pula dengan bahasa pemrograman Swift, bahasa ini merupakan pengembangan dari bahasa pemrograman Objective-C dimana awal dari Objective-C merupakan bahasa C. So, tau dong selanjutnya bagaimana ? Pasti lebih mudah.....
Karena, sejauh yang penulis tahu kebanyakan sekolah / universitas pasti mengajarkan bahasa C / C++ sebagai awal pengenalan programming. Jadi jangan bingung dengan berbagai pilihan bahasa pemrograman yang ada, karena intinya adalah C / C++!
Tinggal pemahanan algoritma, kondisi maupun struktur programming C dipahami dengan baik. Semua fitur-fitur pada bahasa pemrograman selanjutnya memang lebih powerful dan lebih baik manajemennya tetapi semua itu tidak terlepas dari dasar / inti dari pemrograman.
Memang pada awalnya kita akan mengalami kesulitan dalam proses pemahaman lanjutan programming, tetapi setelah berjalan sekian hari maka kita akan langsung teringat ketika kita menemukan sintaksis yang mirip dengan bahasa pemrograman sebelumnya. Selanjutnya kita hanya perlu membaca dokumentasi dari bahasa pemrograman tersebut dan akhirnya kita menjadi Master (hehe) dalam bahasa yang baru kita pelajari....
Sekian dulu ya kawan.....
Tetap semangat dalam ber-coding, jangan putus asa ketika ada aral kesulitan datang....
#HappyCoding :)