Programan

Pemrograman adalah sebuah proses yang mencakup kegiatan seperti analisis, algoritma, yang diterjemahkan ke dalam bahasa pemrograman sehingga dapat dijalankan oleh komputer. Atau secara sederhana, pemrograman adalah proses kreatif yang menginstruksikan komputer bagaimana menyelesaikan suatu tugas.
Perhatikan skema berikut:

Gambar 1.3.1 - Skema alur pembuatan program

Skema di atas memberikan kita gambaran bahwa dengan pemrograman sebuah masalah yang kita jumpai dapat dikonversi kedalam dunia teknologi sehingga menjadi sebuah solusi.

Membuat program adalah memberikan instruksi untuk memanipulasi berbagai jenis objek, misalnya angka, kata, gambar, suara, dll. Membuat program komputer serupa dengan membuat musik, merancang rumah atau menciptakan hal lain. Sehingga sebagian pendapat mengatakan bahwa pemrograman adalah seni, bukan rekayasa.

Ketika ditanya apa itu pemrograman? mari kita jabarkan dari berbagai sudut pandang:

Pemrograman adalah ilmu pengetahuan: Karena menggunakan algoritma yang digambarkan dengan matematika dan sains.Pemrograman adalah skill: Karena membutuhkan keterampilan dan perancangan.Pemrograman adalah rekayasa: Karena membutuhkan perpaduan antara ukuran program, kecepatan, waktu (termasuk development dan debugging).Pemrograman adalah seni: Karena melibatkan kreatifitas dan imajinasi.

Perkembangan teknologi yang sangat pesat membuat pemrograman memiliki peran sangat penting. Belajar pemrograman menawarkan peluang kepada siapapun untuk terlibat langsung dalam perkembangan teknologi. Adapun keuntungan yang akan kita dapatkan ketika mempelajari pemrograman adalah:

  • Berpikir dengan cara yang berbeda: Ketika belajar pemrograman, Kamu belajar bagaimana memecah masalah menjadi bagian-bagian kecil agar lebih mudah diselesaikan. Potongan-potongan kecil tersebut kemudian dibuatkan programnya dengan menggunakan bahasa yang dipahami komputer sehingga komputer dapat menyelesaikan solusi dengan lebih cepat dan berulang.
  • Berdampak positif pada karir: Salah satu pencapaian dalam hidup yang harus dicapai adalah pertumbuhan karir yang terus menanjak. Belajar pemrograman membantu Kamu untuk mencapainya melalui banyak jalan dan peluang.
  • Menghasilkan lebih banyak uang: Kesuksesan finansial merupakan tujuan penting bagi banyak orang, dan belajar pemrograman bisa memiliki dampak yang signifikan dengan munculnya banyak peluang yang sebelumnya tidak terlihat.
  • Membawa idemu ke kehidupan nyata: Terkadang kita memiliki gagasan tentang perbaikan hidup dari aspek manapun, misalnya: kehidupan pribadi, lingkungan kerja atau dari sudut pandang global. Akan tetapi untuk mewujudkan hal ini, kita kekurangan dukungan teknologi untuk mentransformasikan gagasan tersebut secara akurat menjadi proyek nyata yang dapat dilihat. Maka dengan belajar pemrograman Kamu dapat mengaplikasikan sendiri gagasan Kamu ke dalam bentuk aplikasi.
  • Menjadi lebih percaya diri: Salah satu bentuk perasaan terbaik yang diharapkan adalah dengan mengetahui bahwa Kamu telah mencapai sesuatu yang hebat atau memiliki kemampuan untuk menyelesaikan sesuatu yang sangat kompleks. Dengan belajar pemrograman memberikan Kamu peluang untuk mendapatkan hal tersebut.

Gambar 1.2.1 - Bagan manfaat belajar pemrograman

Dengan belajar pemrograman, Kamu akan belajar tentang konsep yang sangat berharga, terlepas apakah Kamu akan terus berkarir di bidang ini atau tidak. Satu hal yang akan Kamu temukan nanti adalah fakta bahwa komputer itu sangat bodoh, tapi taat. Komputer tidaklah pintar, ia hanya dapat mengerjakan sesuatu yang berulang dengan sangat cepat. Ia akan melakukan apapun yang Kamu instruksikan sesuai keinginan Kamu.

Tapi hal yang paling penting untuk Kamu tanamkan dalam diri saat belajar pemrograman adalah bahwa belajar pemrograman itu menyenangkan. Dengan sugesti positif, Kamu akan dapat menikmati proses belajar dan hasilnya pun akan lebih memuaskan.

Apa yang Dimaksud dengan Bahasa Pemrograman?

Bahasa pemrograman adalah sekumpulan perintah, instruksi dan penggunaan sintaks lainnya untuk membuat sebuah program. Bahasa pemrograman menjadi elemen penting yang harus diketahui, sebab bahasa pemrograman menjadi perantara antara programmer untuk berkomunikasi dengan komputer.

Bahasa pemrograman itu sendiri digolongkan menjadi beberapa bagian, diantaranya : machine language atau bahasa mesin, assembly language, dan high-level language atau bahasa tingkat tinggi.

Bahasa mesin adalah bahasa yang dapat dipahami oleh komputer secara langsung, direpresentasikan dalam bentuk kode biner atau 0 dan 1. Assembly language atau bahasa assembly adalah bahasa pemrograman tingkat rendah (low-level language) yang dapat digunakan oleh programmer untuk menuliskan instruksi pada komputer. High-level language atau bahasa tingkat tinggi adalah bahasa pemrograman yang lebih dekat ke bahasa manusia dibanding bahasa pemrograman tingkat rendah, sehingga lebih mudah dipelajari, ditulis dan dibaca ulang. Baik high-level language maupun low-level language akan perlu dikompilasi terlebih dahulu ke dalam bahasa mesin sehingga dapat dipahami oleh komputer.

perbandingan contoh kode dari tiap level bahasaGambar 1.3.1 - Contoh bentuk kode program

High-level language memungkinkan programmer untuk menulis kode secara lebih alami dengan menggunakan kata dan simbol yang logis. Misalnya, untuk kata seperti: function, while, if, dan lain sebagainya yang banyak digunakan dalam bahasa pemrograman.

Bahasa Pemrograman Apa yang Harus Dipelajari Terlebih Dahulu?

Hal pertama yang harus dilakukan adalah dengan menentukan hendak membuat aplikasi jenis apa. Semisal Kamu ingin membuat jenis aplikasi web, desktop, atau mobile. Kamu kemudian mesti mencari informasi tentang bahasa pemrograman apa saja yang tersedia untuk jenis yang dipilih. Namun bila Kamu masih bingung menentukan hendak membuat aplikasi apa, karena Kamu benar-benar pemula di pemrograman, maka ada beberapa pertimbangan yang dapat menjadi referensi sebelum Kamu memutuskan hendak mempelajari bahasa pemrograman yang mana dulu, diantaranya:

  • Bila kita menimbang dari sudut pandang kemudahan dalam penulisan sintaks, Kamu dapat memilih bahasa pemrograman Python. Selain karena Python juga dapat digunakan untuk membuat beragam aplikasi diantaranya web, desktop, game, mobile Android, dan untuk kebutuhan komputasi berat seperti analisis data dan machine learning. Python juga dapat digunakan untuk memprogram hardware atau mikrokontroller.
  • Bila kita menimbang dari sudut pandang tren penggunaan, maka yang paling marak digunakan sekarang adalah JavaScript. Dahulu JavaScript hanya tersedia sebagai bahasa pemrograman di sisi client (hanya berjalan di browser). Namun sekarang JavaScript sudah berevolusi dan hadir di berbagai platform. Kamu dapat membuat aplikasi web untuk sisi klien dan server sekaligus, aplikasi desktop, game, dan juga mobile.
  • Bila kita menimbang kemudahan infrastruktur, maka PHP masih menjuarai lahan ini. PHP dipercaya masih menjadi bahasa pemrograman yang paling banyak digunakan di dunia. PHP didesain khusus untuk membuat aplikasi web. Bila Kamu menggunakan PHP, Kamu tidak akan kesulitan untuk mendapatkan hosting dengan biaya yang sangat terjangkau.
  • Bila Kamu menyasar pasar enterprise, Java masih cenderung dominan. Java dikenal sangat kuat untuk membuat aplikasi skala besar seperti ERP dan sistem informasi dan umumnya digunakan di perusahaan-perusahaan besar. Selain itu Java juga menjadi bahasa pemrograman utama untuk membangun aplikasi mobile Android.
  • Bila kita menimbang konseptual pemrograman, maka C adalah pilihan bijak. Semua konsep pemrograman dari yang paling dasar akan Kamu temui di bahasa C. C merupakan bahasa tingkat tinggi yang paling cepat dan paling dekat ke bahasa mesin. Dari sisi optimasi produk akhir, aplikasi yang dikembangkan langsung dari bahasa C akan sangat efisien. Kampus-kampus IT umumnya menggunakan C untuk mengenalkan pemrograman. Hanya saja untuk mencapai produk akhir, C tidak lebih mudah dibanding bahasa yang disebutkan sebelum ini.

Kesimpulannya, untuk pilihan paling mudah tanpa banyak pertimbangan, kami sarankan untuk mulai belajar dari bahasa pemrograman JavaScript atau Python.

Sebagai tambahan referensi, Kamu dapat menelusuri infografis di bawah ini untuk gambaran umum tentang tema yang sedang kita bahas ini.

Ilustrasi cara mulai memilih bahasa pemrogramanGambar 1.4.1 - Ilustrasi cara memilih bahasa pemrograman.

Jenis-jenis Programmer

Programmer adalah orang yang membuat software komputer. Istilah programmer bisa merujuk ke spesialis di satu bidang pemrograman komputer atau secara general yang menulis kode untuk berbagai jenis perangkat lunak.

Adapun programmer dapat digolongkan menjadi beberapa jenis:

  • Web Programmer
  • Mobile Programmer
  • Desktop Programmer
  • Hardware Programmer
  • Game Programmer

Lebih jauh tentang detail masing-masing jenis akan Kamu temukan di bagian kedua kelas ini.

Beragam Peluang Menjadi Programmer

Teknologi sudah menjadi bagian dari setiap lini kehidupan manusia. Imbasnya adalah kebutuhan akan tenaga programmer akan terus meningkat. Tidak hanya perusahaan besar yang memerlukan programmer. Perusahaan yang baru bertumbuh pun umumnya akan memerlukan dukungan teknis untuk membangun sistem berbasis IT. Dan disitulah peran programmer. Meski demikian, Kamu tidak mesti bekerja di perusahaan ketika menjadi programmer. Ada banyak peluang yang dapat ditangkap oleh programmer, diantaranya :

Kesempatan bekerja di hampir semua industri: hampir setiap jenis bisnis telah melibatkan teknologi, mulai dari membuat website, aplikasi mobile hingga sistem informasi untuk kebutuhan internal perusahaan.

Freelancer: Kamu dapat memberikan jasa pengembangan aplikasi secara mandiri sebagai programmer lepas untuk beragam segmen kehidupan dan bidang pekerjaan. Saat ini sedang ramai dilirik profesi sebagai Remote Worker yang memungkinkan kita untuk bekerja dari berbagai perusahaan manapun di seluruh dunia tanpa harus berpindah tempat atau dengan kata lain bekerja secara remote dari rumah. Cukup banyak situs yang menghubungkan antara programmer dengan pihak yang membutuhkan jasa programmer, seperti Freelancer.comUpwork.comSribulancer.com dan Projects.co.id.

Membuat produk aplikasi: Kamu dapat menjadi klien untuk dirimu sendiri, dengan membuat solusi aplikasi dari permasalahan yang Kamu hadapi di masyarakat. Aplikasi yang Kamu buat dapat Kamu sebarkan secara cuma-cuma, atau Kamu jual dengan harga tertentu. Proses monetisasi aplikasi tidak melulu harus selalu menawarkan aplikasi berbayar. Seperti contoh umumnya, kita dapat membuat aplikasi mobile gratis yang didalamnya kita pasangi iklan sponsor. Lebih jauh lagi, dengan bekal solusi yang Kamu telah buat, Kamu dapat melanjutkan usahamu menjadi perusahaan rintisan atau startup dan berkembang lebih besar lagi.

Menjadi penulis: Perihal menulis tentu saja bukan hanya terpaku pada tulisan yang berbentuk buku, akan tetapi kita dapat membuat sebuah tulisan berupa panduan ataupun dokumentasi yang dapat membantu banyak orang dalam belajar pemrograman. Tentu saja hal ini juga bisa membantu Kamu untuk mendatangkan benefit dan profit baik secara langsung maupun tidak langsung.

Apakah Saya Harus Menguasai Matematika untuk Menguasai Pemrograman?

tentu tidak harus. Akan tetapi untuk mempelajari pemrograman, Kamu harus berupaya agar memiliki pola pikir matematis. Kebanyakan orang menganggap matematika sebagai sebuah proses aritmatika atau menghafalkan formula yang kompleks. Ini sama halnya menanyakan apakah Kamu memerlukan ejaan yang sempurna atau memiliki kosa kata yang tinggi untuk menjadi penulis yang baik?

Menulis adalah tentang komunikasi, dan matematika / pemrograman adalah tentang proses berpikir logis (kemampuan memecahkan masalah secara sistematis).

Peran menguasai matematika berada pada dua sisi tergantung peruntukannya. Sebab Kamu bisa menjadi programmer yang hebat tanpa perlu mengetahui matematika tingkat lanjut. Akan tetapi berbeda halnya jika Kamu ingin menjadi programmer low-level language, membuat aplikasi pemrosesan gambar, membuat game 3D, atau analisis spesifik tentang suatu penelitian, maka matematika akan memaminkan peran yang besar.

Sebagai seorang programmer, yang terpenting yang harus Kamu miliki adalah logika yang baik dan kemampuan memecahkan masalah. Namun orang pandai dalam matematika umumnya lebih mudah dalam mempelajari pemrograman. Bukan berarti belajar matematika tidak penting, akan tetapi bukan juga menjadi halangan untuk Kamu mulai belajar pemrograman.

Perangkat yang Dibutuhkan untuk Belajar Pemrograman

Ketika akan memulai belajar pemrograman, kita harus memiliki perangkat untuk memprogram. Kita akan perlu menjabarkan secara detail berdasarkan jenis pemrograman yang akan Kamu geluti, namun secara garis besar hal yang paling diperlukan adalah komputer atau laptop.

Bila Kamu hendak belajar pemrograman web, komputer atau laptop yang terpasang aplikasi pendukung pemrograman web seperti web server, code editor dan database server sudah cukup untuk memulai belajar memprogram. Spesifikasi komputernya pun tidak perlu terlalu besar, processor dual core dan memori RAM 2GB sudah cukup. Bila Kamu punya spesifikasi yang lebih tinggi itu akan meningkatkan kecepatan pengembangan aplikasimu. Selain itu bila Kamu sudah masuk pada tahap belajar deployment atau memasang aplikasi webmu di internet, Kamu akan memerlukan layanan hosting yang bisa Kamu sewa mulai dari 10 ribu per bulannya.

Bila Kamu hendak membuat aplikasi desktop, perangkat yang kamu perlukan tidak jauh dengan kebutuhan pemrograman web. Termasuk bila Kamu hendak membuat aplikasi game untuk desktop. Hanya saja bila Kamu hendak belajar pemrograman aplikasi game, Kamu akan memerlukan memori RAM yang sedikit lebih tinggi, serta VGA card yang bagus di komputermu.

Bila Kamu hendak membuat aplikasi mobile Android, Kamu bakal perlu memori RAM minimal 4GB supaya proses bellajarnya nyaman (tidak perlu menunggu proses loading Android Studio dan proses compiling terlalu lama). Dan tentu saja Kamu akan memerlukan smartphone Android untuk mencoba aplikasimu langsung di perangkat mobile. Khusus untuk pengembangan aplikasi iOS (mobile maupun desktop), Kamu harus menggunakan perangkat Apple (iMac, Macbook, iPhone dan lain-lain).

Istilah-istilah Umum dalam Pemrograman

Berikut ini beberapa istilah yang umum digunakan di dunia pemrograman:

  • Server: perangkat yang melayani permintaan data atau kebutuhan aplikasi di sisi klien.
  • Browser: perangkat lunak yang berfungsi untuk menerima dan menyajikan sumber informasi di Internet
  • Back-end Developer: Seorang programmer yang bertugas untuk mengurusi sisi lain dari sebuah website yang tidak tanpak, meliputi: server, aplikasi, database, dll. Kode yang dituliskan oleh back-end developer inilah yang menjembatani informasi dari database ke browser.
  • Front-end Developer: Seorang programmer yang bertugas tampilan yang meliputi layout, feedback, dll dari sebuah website, sehingga pengguna dapat melihat dan berinteraksi dengan website tersebut secara langsung.
  • Fullstack Developer: Seorang programmer yang mampu bekerja sebagai Front-end dan Back-end sekaligus.
  • Debug: Proses mencari, menemukan dan mengatasi masalah yang terdapat dari sebuah program yang dapat mengganggu kelancaran penggunaan aplikasi tersebut dari berbagai sisi.
  • Bug: Sebuah error atau kesalahan yang terdapat dalam sebuah program aplikasi sehingga mengganggu kelancaran penggunaan aplikasi.
  • Syntax: Bisa diartikan sebagai tata bahasanya dalam sebuah bahasa pemrograman.
  • Method/Function: Sebuah kode blok yang dapat digunakan kembali dalam proses tertentu sesuai kebutuhan.
  • API (Aplication Programming Interface): antarmuka aplikasi yang memungkinkan dua atau lebih program aplikasi untuk saling berkomunikasi satu sama lain.

Sebenarnya banyak sekali istilah di dunia pemrograman. Yang perlu Kamu lakukan bila menemukan istilah baru yang belum Kamu ketahui adalah dengan mencari definisinya di kamus istilah atau mesin pencari. Semakin lama Kamu bergelut dengan pemrograman akan semakin akrab dengan istilah-istilah lainnya.

Bagaimana Proses Sebuah Program Dibuat?

Di bawah ini bagan ilustrasi proses kompilasi dan interpretasi kode program:

Beberapa bahasa pemrograman terkenal yang berbasis interpreted diantaranya adalah J, Julia, JavaScript, Lua, MATLAB, Perl, PHP, Python, R, Ruby, VBScript, dan Wolfram Language.

Beberapa bahasa pemrograman terkenal yang berbasis compiled diantaranya adalah ActionScript, C, C++, C#, COBOL, JavaScript, Delphi, Erlang, Fortran, Java, Objective-C, Pascal, Scala, Visual Basic, Visual FoxPro.

Bagaimana Cara Memulai Belajar Pemrograman?

Bagaimana cara memulai belajar pemrograman?.

Saat ini telah banyak media sebagai alternatif untuk belajar pemrograman baik yang bersifat offline maupun online. Untuk metode belajar baik secara offline maupun online kembali kepada pribadi masing-masing. Adapun yang akan saya jabarkan dibawah ini langkah memulai belajar meskipun setiap orang berbeda, tapi secara garis besar dapat dijadikan rujukan.

  • Tetapkan bahasa pemrograman yang ingin Kamu pelajari, untuk memulai cukup satu bahasa pemrograman saja agar Kamu menjadi lebih fokus dalam belajar.
  • Beli buku pemrograman (baik bersifat fisik maupun elektronik) dan ikuti panduannya. Apabila Kamu mempunyai kemampuan berbahasa inggris dan daya tangkap yang cepat maka sumber belajar primer dari masing-masing bahasa pemrograman umumnya sudah sangat cukup untuk dijadikan referensi belajar.
  • Mulailah belajar dasar dari bahasa pemrograman, sebab dasar yang kuat akan menjadikan Kamu lebih mudah dalam mengatasi masalah yang akan Kamu temukan kedepannya.
  • Mulai membuat project sederhana untuk melatih kemampuan Kamu dalam memecahkan masalah yang dihadapi.
  • Manfaatkan mesin pencari untuk menemukan solusi dari masalah yang Kamu hadapi selama belajar pemrograman. Untuk belajar pemrograman dasar, Kamu nyaris akan selalu menemukan solusinya di internet.
  • Bergabung di forum pemrograman sehingga Kamu bisa bertanya, belajar dari pengalaman teman-teman seperjuangan dalam belajar bahasa pemrograman. Perhatikan etika dan tata cara bertanya di forum.
  • Berkontribusi di dunia open source atau mulai bekerja secara tim meskipun dalam ruang lingkup kecil. Karena lebih dari satu kepala jauh lebih baik dan Kamu bisa mendapatkan sudut pandang baru jika saling bertukar pendapat maupun informasi dengan rekan setim. 

Komentar

Postingan populer dari blog ini

Command Line

7+ Tipe Data C++ Berserta Contoh Program dan Jangkauannya

Mengenal Fitur CSS3