| FazBrowse Wikipedia Viewer | Main Page | | |
| Viewing: https://id.wikipedia.org/wiki/Pemrograman |
| Contents |
|---|
| Entri kode sumber |
| Pemrograman modern |
| Persyaratan kualitas |
| Belajar pemrograman |
| Konteks |
| Penerbit teknis |
| Pembelajaran digital / sumber daya daring |
| Pemrogram |
| Sumber |
Pemrograman komputer adalah penyusunan urutan instruksi, yang disebut program, yang dapat diikuti oleh komputer untuk melaksanakan tugas. Pemrograman biasanya melibatkan perancangan dan penerapan algoritme, yaitu spesifikasi prosedur secara bertahap, dengan menulis kode dalam satu atau lebih bahasa pemrograman.
Saat ini, pemrogram umumnya menggunakan bahasa pemrograman tingkat tinggi yang lebih mudah dipahami manusia daripada kode mesin, yang dieksekusi secara langsung oleh unit pemrosesan pusat. Pemrograman yang mahir biasanya memerlukan keahlian dalam beberapa bidang yang berbeda, termasuk pengetahuan tentang domain aplikasi, rincian bahasa pemrograman dan pustaka kode generik, algoritme khusus, serta logika formal.
Tugas tambahan yang menyertai dan berkaitan dengan pemrograman mencakup analisis kebutuhan, pengujian, debugging (menyelidiki dan memperbaiki masalah), penerapan sistem build, dan pengelolaan artefak yang dihasilkan, seperti kode mesin program. Meskipun hal-hal tersebut terkadang dianggap sebagai bagian dari pemrograman, istilah pengembangan perangkat lunak sering digunakan untuk keseluruhan proses yang lebih luas ini—sedangkan istilah pemrograman, implementasi, dan pengodean digunakan untuk penulisan dan penyuntingan kode itu sendiri. Pengembangan perangkat lunak terkadang disebut rekayasa perangkat lunak, terutama ketika menggunakan metode formal atau mengikuti proses desain rekayasa.
| Bagian dari seri mengenai |
| Pengembangan perangkat lunak |
|---|
|
Paradigma, model |
|
Standar, kumpulan pengetahuan |
Bahasa tingkat tinggi membuat proses pengembangan program menjadi lebih sederhana dan mudah dipahami, serta tidak terlalu terikat pada perangkat keras yang mendasarinya. Alat pertama yang berkaitan dengan kompilator, A-0 System, dikembangkan pada tahun 1952 oleh Grace Hopper, yang juga menciptakan istilah "compiler". FORTRAN, bahasa tingkat tinggi pertama yang digunakan secara luas dan memiliki implementasi fungsional, muncul pada tahun 1957, dan banyak bahasa lain segera dikembangkan—khususnya COBOL yang ditujukan untuk pengolahan data komersial, dan Lisp untuk penelitian komputer.
Bahasa yang dikompilasi ini memungkinkan pemrogram menulis program dalam istilah yang secara sintaksis lebih kaya dan lebih mampu melakukan abstraksi kode, sehingga memudahkan penargetan berbagai set instruksi mesin melalui deklarasi kompilasi dan heuristik. Kompilator memanfaatkan kemampuan komputer untuk mempermudah pemrograman dengan memungkinkan pemrogram menentukan perhitungan dengan memasukkan rumus menggunakan notasi infiks.
Program pada awalnya terutama dimasukkan menggunakan kartu berlubang atau pita kertas. Pada akhir 1960-an, perangkat penyimpanan data dan terminal komputer menjadi cukup murah sehingga program dapat dibuat dengan mengetikkannya langsung ke komputer. Penyunting teks juga dikembangkan sehingga perubahan dan koreksi dapat dilakukan jauh lebih mudah dibandingkan dengan kartu berlubang.
Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda (disebut paradigma pemrograman). Pemilihan bahasa yang digunakan dipengaruhi oleh banyak pertimbangan, seperti kebijakan perusahaan, kesesuaian dengan tugas, ketersediaan paket pihak ketiga, atau preferensi pribadi. Idealnya, bahasa pemrograman yang paling sesuai untuk tugas yang sedang dikerjakan akan dipilih. Pertukaran dari kondisi ideal ini melibatkan pencarian jumlah pemrogram yang cukup yang menguasai bahasa tersebut untuk membangun tim, ketersediaan kompilator untuk bahasa tersebut, serta efisiensi eksekusi program yang ditulis dalam bahasa tersebut. Bahasa membentuk suatu spektrum perkiraan dari "tingkat rendah" hingga "tingkat tinggi"; bahasa "tingkat rendah" biasanya lebih berorientasi pada mesin dan lebih cepat dieksekusi, sedangkan bahasa "tingkat tinggi" lebih abstrak dan lebih mudah digunakan tetapi dieksekusi lebih lambat. Biasanya lebih mudah menulis kode dalam bahasa "tingkat tinggi" daripada dalam bahasa "tingkat rendah".
Bahasa pemrograman sangat penting bagi pengembangan perangkat lunak. Bahasa-bahasa tersebut merupakan blok pembangun bagi semua perangkat lunak, dari aplikasi paling sederhana hingga yang paling canggih.
Allen Downey, dalam bukunya How To Think Like A Computer Scientist, menulis:
Banyak bahasa komputer menyediakan mekanisme untuk memanggil fungsi yang disediakan oleh pustaka bersama. Jika fungsi dalam sebuah pustaka mengikuti konvensi waktu jalan yang sesuai (misalnya metode untuk meneruskan argumen), fungsi tersebut dapat ditulis dalam bahasa lain. Peringkat tahunan oleh IEEE Spectrum menganalisis popularitas bahasa pemrograman menggunakan metrik seperti lowongan pekerjaan, tren pencarian, dan aktivitas pengembang.
Belajar pemrograman memiliki sejarah panjang yang berkaitan dengan standar dan praktik profesional, inisiatif dan kurikulum akademik, serta buku dan materi komersial bagi pelajar, pembelajar mandiri, penghobi, dan pihak lain yang ingin membuat atau menyesuaikan perangkat lunak untuk penggunaan pribadi. Sejak 1960-an, belajar pemrograman memiliki karakteristik sebuah gerakan populer, dengan munculnya disiplin akademik, pemimpin inspiratif, identitas kolektif, dan strategi untuk mengembangkan gerakan serta mendorong perubahan kelembagaan. Melalui cita-cita sosial dan agenda pendidikan tersebut, belajar mengode menjadi penting bukan hanya bagi ilmuwan dan insinyur, tetapi juga bagi jutaan warga yang mulai percaya bahwa membuat perangkat lunak bermanfaat bagi masyarakat dan anggotanya. Partisipasi dalam pendidikan ilmu komputer telah berkembang secara signifikan dalam beberapa tahun terakhir, dengan jutaan siswa memperoleh pengalaman pemrograman dasar melalui sekolah dan platform daring.
Pada tahun 1957, terdapat sekitar 15.000 pemrogram komputer yang bekerja di AS, angka yang mencakup 80% pengembang aktif di dunia. Pada tahun 2014, terdapat sekitar 18,5 juta pemrogram di dunia, yang terdiri atas 11 juta orang yang dapat dianggap profesional dan 7,5 juta pelajar atau penghobi. Sebelum munculnya Internet komersial pada pertengahan 1990-an, sebagian besar pemrogram mempelajari pembuatan perangkat lunak melalui buku, majalah, kelompok pengguna, dan metode pengajaran informal, dengan pendidikan akademik dan pelatihan perusahaan memainkan peran penting bagi pekerja profesional.
Buku pertama yang berisi petunjuk khusus tentang cara memprogram komputer mungkin adalah Preparation of Programs for an Electronic Digital Computer (1951) karya Maurice Wilkes, David Wheeler, dan Stanley Gill. Buku tersebut menawarkan kumpulan subrutin umum untuk menangani operasi dasar pada EDSAC, salah satu komputer dengan program tersimpan pertama di dunia.
Ketika bahasa tingkat tinggi muncul, bahasa-bahasa tersebut diperkenalkan melalui banyak buku dan materi yang menjelaskan kata kunci bahasa, pengelolaan alur program, cara bekerja dengan data, dan konsep lainnya. Bahasa-bahasa tersebut mencakup FLOW-MATIC, COBOL, FORTRAN, ALGOL, Pascal, BASIC, dan C. Contoh buku pengantar pemrograman awal dari masa tersebut adalah A Primer of Programming for Digital Computers (1959) karya Marshal H. Wrubel, yang memuat petunjuk langkah demi langkah untuk mengisi lembar pengodean, membuat kartu berlubang, dan menggunakan kata kunci dalam sistem FORTRAN awal milik IBM. A Guide to FORTRAN Programming (1961) karya Daniel McCracken memperkenalkan FORTRAN kepada khalayak yang lebih luas, termasuk pelajar dan pekerja kantor.
Pada tahun 1961, Alan Perlis menyarankan agar semua mahasiswa tahun pertama di Carnegie Technical Institute mengikuti mata kuliah pemrograman komputer. Sarannya diterbitkan dalam jurnal teknis populer Computers and Automation, yang kemudian menjadi sumber informasi rutin bagi pemrogram profesional.
Pemrogram segera memiliki berbagai teks pembelajaran yang dapat digunakan. Referensi pemrogram mencantumkan kata kunci dan fungsi yang berkaitan dengan suatu bahasa, sering kali dalam urutan alfabetis, serta informasi teknis mengenai kompilator dan sistem terkait. Contoh awalnya adalah Programmers' Reference Manual: the FORTRAN Automatic Coding System for the IBM 704 EDPM (1956) dari IBM.
Seiring waktu, genre panduan pemrogram berkembang, yang menyajikan fitur suatu bahasa dalam format tutorial atau langkah demi langkah. Banyak buku pengantar awal dimulai dengan program yang dikenal sebagai "Hello, World", yang menyajikan program terpendek yang dapat dibuat pengembang dalam sistem tertentu. Panduan pemrogram kemudian membahas topik inti seperti deklarasi variabel, tipe data, rumus, pengendalian alur, fungsi yang ditentukan pengguna, manipulasi data, dan topik lainnya.
Panduan pemrogram awal yang berpengaruh mencakup BASIC Programming (1967) karya John G. Kemeny dan Thomas E. Kurtz, The Pascal User Manual and Report (1971) karya Kathleen Jensen dan Niklaus Wirth, serta The C Programming Language (1978) karya Brian W. Kernighan dan Dennis Ritchie. Buku serupa untuk khalayak populer (tetapi dengan gaya yang jauh lebih ringan) mencakup My Computer Loves Me When I Speak BASIC (1972) karya Bob Albrecht, A Book on C (1984) karya Al Kelley dan Ira Pohl, serta C for Dummies (1994) karya Dan Gookin.
Di luar buku pengantar khusus bahasa, terdapat banyak buku dan jurnal akademik yang memperkenalkan praktik pemrograman profesional. Banyak di antaranya dirancang untuk mata kuliah universitas dalam ilmu komputer, rekayasa perangkat lunak, atau disiplin terkait. The Art of Computer Programming (1968 dan edisi berikutnya) karya Donald Knuth menyajikan ratusan algoritme komputasi beserta analisisnya. The Elements of Programming Style (1974), karya Brian W. Kernighan dan P. J. Plauger, membahas gaya pemrograman, yaitu gagasan bahwa program seharusnya ditulis bukan hanya untuk memenuhi kebutuhan kompilator tetapi juga agar dapat dibaca manusia. Programming Pearls (1986) karya Jon Bentley memberikan nasihat praktis mengenai seni dan keahlian pemrograman dalam konteks profesional dan akademik. Teks yang secara khusus dirancang untuk pelajar mencakup Oh Pascal! (1982) karya Doug Cooper dan Michael Clancy, Data Structures and Algorithms (1983) karya Alfred Aho, serta Learning with Logo (1983) karya Daniel Watt.
Ketika komputer pribadi menjadi produk pasar massal, ribuan buku perdagangan dan majalah berusaha mengajarkan pengguna profesional, penghobi, dan pengguna biasa untuk menulis program komputer. Contoh sumber pembelajaran tersebut mencakup BASIC Computer Games, Microcomputer Edition (1978), karya David Ahl; Programming the Z80 (1979), karya Rodnay Zaks; Programmer's CP/M Handbook (1983), karya Andy Johnson-Laird; C Primer Plus (1984), karya Mitchell Waite dan The Waite Group; The Peter Norton Programmer's Guide to the IBM PC (1985), karya Peter Norton; Advanced MS-DOS (1986), karya Ray Duncan; Learn BASIC Now (1989), karya Michael Halvorson dan David Rygymr; Programming Windows (1992 dan edisi berikutnya), karya Charles Petzold; Code Complete: A Practical Handbook for Software Construction (1993), karya Steve McConnell; serta Tricks of the Game-Programming Gurus (1994), karya André LaMothe.
Industri perangkat lunak PC mendorong terciptanya banyak penerbit buku yang menawarkan buku pengantar dan tutorial pemrograman, serta buku bagi pengembang perangkat lunak tingkat lanjut. Penerbit tersebut mencakup Addison-Wesley, IDG, Macmillan Inc., McGraw-Hill, Microsoft Press, O'Reilly Media, Prentice Hall, Sybex, Ventana Press, Waite Group Press, Wiley, Wrox Press, dan Ziff-Davis.
Majalah komputer dan jurnal juga menyediakan materi pembelajaran bagi pemrogram profesional dan penghobi. Sebagian daftar sumber tersebut mencakup Amiga World, Byte (magazine), Communications of the ACM, Computer (magazine), Compute!, Computer Language (magazine), Computers and Electronics, Dr. Dobb's Journal, IEEE Software, Macworld, PC Magazine, PC/Computing, dan UnixWorld.
Antara tahun 2000 dan 2010, penerbit buku dan majalah komputer mengalami penurunan yang signifikan sebagai penyedia pengajaran pemrograman, karena pemrogram beralih ke sumber daya Internet untuk memperluas akses mereka terhadap informasi. Pergeseran ini mendorong munculnya produk dan mekanisme digital baru untuk mempelajari keterampilan pemrograman. Selama masa transisi, buku digital dari penerbit memindahkan informasi yang sebelumnya disampaikan dalam bentuk cetak kepada khalayak baru dan berkembang.
Sumber daya Internet penting untuk belajar mengode mencakup blog, buku, wiki, video, basis data daring, jurnal, situs berlangganan, makalah konferensi, dan situs web khusus yang berfokus pada keterampilan pengodean. Dalam beberapa tahun terakhir, platform seperti LeetCode, HackerRank, dan freeCodeCamp menjadi populer untuk mempelajari pemrograman, berlatih tantangan pengodean, dan mempersiapkan wawancara teknis. Sumber daya komersial baru mencakup video YouTube, tutorial Lynda.com (kemudian LinkedIn Learning), Khan Academy, Codecademy, GitHub, W3Schools, Codewars, dan banyak kamp pelatihan pengodean.
Sebagian besar sistem pengembangan perangkat lunak dan mesin permainan menyediakan sumber daya bantuan daring yang kaya, termasuk lingkungan pengembangan terintegrasi (IDE), bantuan peka konteks, API, dan sumber daya digital lainnya. Kit pengembangan perangkat lunak (SDK) komersial juga menyediakan kumpulan alat pengembangan perangkat lunak dan dokumentasi dalam satu paket yang dapat dipasang.
Organisasi komersial dan nirlaba menerbitkan situs web pembelajaran bagi pengembang, membuat blog, serta menyediakan umpan berita dan sumber daya media sosial mengenai pemrograman. Perusahaan seperti Apple, Microsoft, Oracle, Google, dan Amazon membangun situs web perusahaan yang menyediakan dukungan bagi pemrogram, termasuk sumber daya seperti Microsoft Developer Network (MSDN). Gerakan kontemporer seperti Hour of Code (Code.org) menunjukkan bagaimana belajar pemrograman telah dikaitkan dengan strategi pembelajaran digital, agenda pendidikan, dan filantropi perusahaan.
Bebbington, Shaun (2014). "Apa itu pemrograman". Tumblr. Diarsipkan dari versi aslinya tanggal April 29, 2020. Diakses tanggal Maret 3, 2014.{{cite web}}: Pemeliharaan CS1: Tanggal diterjemahkan otomatis (link)