Bahasa pemrograman: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
Image suggestions feature: 1 image added. |
|||
(430 revisi antara oleh lebih dari 100 100 pengguna tak ditampilkan) | |||
Baris 1:
'''Bahasa pemrograman''' atau '''bahasa penataolahan''' ({{lang-en|programming language}}) adalah sistem notasi untuk menulis program komputer. Sebagian besar bahasa pemrograman adalah bahasa formal berdasarkan teks, tetapi juga dapat berupa grafis.<ref>{{Cite book|last=Simarmata|first=Janner|url=https://books.google.co.id/books?id=QP1BjG_VIsoC&pg=PA403&dq=Program+komputer&hl=id&newbks=1&newbks_redir=0&source=gb_mobile_search&sa=X&ved=2ahUKEwiFwZDxtfX-AhUC-jgGHVqkAhQQ6AF6BAgNEAM|title=Rekayasa Perangkat Lunak|publisher=Penerbit Andi|isbn=978-979-29-1347-7|language=id}}</ref>[[Berkas:C Hello World Program.png|jmpl|Kode sumber untuk tata olah sederhana yang ditulis menggunakan bahasa pemrograman C. Saat [[program komputer|tata olah]] dikompilasi dan dijalankan, maka layar akan menampilkan "Hello, world!"]]
Deskripsi bahasa pemrograman dibagi menjadi dua komponen; yaitu [[sintaksis]] (bentuk) dan [[semantik]] (makna), yang biasanya didefinisikan oleh bahasa formal. Beberapa bahasa ditentukan oleh dokumen spesifikasi (misalnya, bahasa pemrograman C ditentukan oleh Standar [[ISO]]) sementara bahasa lain (seperti [[Perl]]) memiliki implementasi dominan yang diperlakukan sebagai rujukan. Beberapa bahasa memiliki keduanya, dengan bahasa dasar yang ditentukan oleh standar dan ekstensi diambil dari implementasi dominan yang umum.
==
Bahasa pemrograman adalah sebuah instruksi standar untuk memerintah komputer agar menjalankan fungsi tertentu. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaksis dan semantik yang dipakai untuk mendefinisikan tata olah (''program''). Bahasa ini memungkinkan seorang [[programmer|penata olah]] (''programmer'') dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa yang secara persis akan diambil dalam berbagai situasi.
== Fungsi ==
Fungsi bahasa pemrograman itu sendiri yaitu memerintah komputer untuk mengolah data sesuai dengan alur berpikir yang ''programmer'' inginkan. Keluaran (''output'') dari bahasa pemrograman tersebut dapat berupa tata olah, konsol atau aplikasi. Contohnya adalah tata olah yang digunakan oleh kasir di [[mal|mal-mal]] atau [[pasar swalayan|pasar raya]], penggunaan lampu lalu lintas di jalan raya, dan lain-lain.
Perkembangannya mengikuti tingginya [[inovasi]] yang dilakukan dalam dunia teknologi. Contoh aplikasi yang dapat ditulis dengan bahasa pemrograman antara lain [[game|aplikasi permainan]], [[antivirus]], web, penyunting, dan teknologi lainnya.
Bahasa pemrograman yang populer antara lain seperti [[Java]], [[Visual Basic]], [[C++]], [[C (bahasa pemrograman)|C]], [[COBOL|Cobol]], [[PHP]], .NET dan ratusan bahasa lainnya. Namun tentu saja kebutuhan bahasa ini harus disesuaikan dengan fungsi dan perangkat yang menggunakannya.
== Tingkatan ==
=== Bahasa tingkat tinggi (''high-level programming language'') ===
Bahasa pemrograman tingkat tinggi adalah bahasa pemrograman yang mendekati bahasa manusia<ref>{{Cite book|title=Pengantar Teknologi Informasi - Konsep dan Teori|last=Sobri|first=Muhammad|publisher=|year=|isbn=9789792963120|location=|pages=}}</ref>.
<!-- Ubah daftar ini jika ada kesalahan letak tingkatan, atau penambahan bahasa pemrograman -->
* [[Pascal (bahasa pemrograman)|Pascal]]
* [[JavaScript]]
* [[C Sharp (bahasa pemrograman)|C#]]
* [[Ruby (bahasa pemrograman)|Ruby]]
* [[Visual Basic]]
* [[Perl]]
* [[PHP]]
* [[Swift (bahasa pemrograman)|Swift]]
=== Bahasa tingkat menengah (''intermediate-level programming language'') ===
Bahasa pemrograman tingkat menengah adalah bahasa pemrograman yang dapat berperan sebagai tingkat tinggi maupun rendah.
Contoh bahasa pemrograman tingkat menengah:
* [[Rust]]
* [[Golang|Go]]
* [[C (bahasa pemrograman)|C]]
* [[C++]]
=== Bahasa tingkat rendah (''low-level programming language'') ===
Bahasa pemrograman tingkat rendah adalah bahasa pemrograman yang sepenuhnya berorientasi pada bahasa mesin sehingga sangat sulit untuk dipelajari manusia.
Contoh bahasa pemrograman tingkat menengah:
* [[Assembly]]
== Generasi ==
Sedangkan menurut generasinya, bahasa pemrograman digolongkan menjadi 5 generasi:
* Generasi ke-1: ''machine language''
* Generasi ke-2: ''assembly language'': ''Assembler''
* Generasi ke-3: ''high level programming language'', contoh: C dan Pascal
* Generasi ke-4: 4 GL (''fourth-generation language''), contoh: SQL
* Generasi ke-5: ''Programming Language Based Object Oriented & Web Development''
== Proses pembuatan program ==
Proses pembuatan program yaitu kita menulis kode sumber pada teks editor kemudian mengubahnya menjadi bahasa mesin yang bisa dieksekusi oleh [[CPU]]. Proses pengubahan kode sumber (''source code'') menjadi bahasa mesin (''machine language'') ini terdiri dari dua macam yaitu kompilasi dan interpretasi.
=== Kompilasi ===
Dalam proses kompilasi semua kode sumber dibaca terlebih dahulu dan jika tidak ada kesalahan dalam menulis program maka akan dibentuk kode mesinnya sehingga program bisa dijalankan. Program yang melakukan tugas ini disebut ''compiler''. Program hasil kompilasi akan berbentuk ''executable''. Program bisa langsung dijalankan tanpa harus memiliki compiler di komputer yang menjalankan program tersebut
=== Interpretasi ===
Bahasa yang menggunakan teknik interpretasi akan membaca kode sumber per baris dan dieksekusi per baris. Jika ditemukan kesalahan dalam penulisan program maka program akan dihentikan. Program yang melakukan tugas ini disebut ''interpreter''. Pada teknik interpretasi tidak ada akan dihasilkan program ''standalone'' (berdiri sendiri), artinya untuk menjalankan program penata olah harus mempunyai kode sumbernya sekaligus interpreter program tersebut.
=== Kompilasi sekaligus interpretasi ===
Ada juga bahasa pemrograman yang menghasilkan programnya dengan teknik kompilasi sekaligus interpretasi, contohnya Java. Dalam pembuatan program Java, kode sumber diubah menjadi ''bytecode''. Meskipun tampak seperti bahasa mesin namun ini bukanlah bahasa mesin dan tidak secara ''executable''. Untuk menjalankan ''bytecode'' tersebut penata olah membutuhkan Java Runtime Environment (JRE) yang bertugas sebagai ''interpreter'' sehingga menghasilkan program dari ''bytecode'' tersebut.
Meskipun setiap bahasa pemrograman dibuat untuk membuat program namun setiap bahasa dibuat dengan tujuan dan fungsi yang berbeda-beda, contohnya untuk membuat ''driver hardware'', penata olah tidak bisa menggunakan bahasa Visual Basic.
== Bahasa pemrograman yang umum digunakan ==
[[Berkas:Python example.jpg|jmpl|Kode program menggunakan bahasa pemrograman Python]]
;[[JavaScript]]: bahasa yang sangat populer untuk menambahkan fitur interaktif untuk halaman web dan aplikasi, memvalidasi data formulir, memanggil API (''Application Programming Interface''), pengembangan game web, dan lain-lain. Ini adalah salah satu bahasa yang paling mudah untuk dipelajari,menjadikan bahasa pemrograman pilihan yang sangat populer untuk pemula.
;[[PHP]]:bahasa program yang digunakan terutama untuk mengembangkan halaman web dinamis. PHP dapat menulis seperangkat aturan untuk mengakses dan menampilkan informasi dari database yang kemudian dapat membuat halaman dan memanggil mereka ketika dibutuhkan, dibandingkan menciptakan sebuah file terpisah penuh kode untuk setiap halaman situs.
;[[C++]]: Bahasa berorientasi objek yang turunan dari bahasa C, dengan penambahan kelas dan fitur lainnya. C++ sering digunakan oleh pengembang untuk melakukan ''maintenance'' performa, AI, dan sebagian besar aplikasi. C++ juga memiliki keuntungan yaitu lebih mudah untuk mempelajari bahasa C lainnya yaitu C# dan C. Semua bahasa C umumnya dipandang sebagai bahasa pemrograman tingkat menengah.
;[[C Sharp (bahasa pemrograman)|C#]]: Diucapkan C Sharp, bahasa ini diciptakan oleh [[Microsoft]] dalam kerangka NET. C# banyak digunakan untuk menulis aplikasi Windows (dalam bentuk Windows Forms atau WinForms, WPF atau Windows Presentation Foundation, UWP atau Universal Windows Platform di Windows 10, dan WinUI), pengembangan game, dan [AI]]. Ini adalah tujuan OOP umum yang berbagi banyak kesamaan dengan bahasa C tua.
;[[Bahasa pemrograman C|C]]: Akar dari bahasa C adalah dari bahasa '''BCPL''' yang dikembangkan oleh Martin Richards pada tahun 1967. Bahasa ini memberikan ide kepada Ken Thompson yang kemudian mengembangkan bahasa yang disebut dengan '''B''' pada tahun 1970. Perkembangan selanjutnya dari bahasa '''B''' adalah bahasa '''C''' oleh Dennis Ritchie sekitar tahun 1970-an di Bell Telephone Laboratories Inc (''sekarang'': AT&T Bell Laboratories). Bahasa C pertama kali digunakan di komputer Digital Equipment Corporation PDP-11 yang menggunakan sistem operasi UNIX.<ref>{{Cite book|title=Konsep Dasar Pemrograman Bahasa C|last=Hartono|first=Jogiyanto|publisher=Penerbit Andi Yogyakarta|year=2000|isbn=9795333429|location=Yogyakarta|pages=1}}</ref>
:Ini adalah versi C yang digunakan oleh sistem operasi Apple serta sejumlah kecil aplikasi lain.
;[[Python (bahasa pemrograman)|Python]]: Python sangat populer dalam komunitas ilmiah dan akademik. Bahasa ini telah digunakan untuk membuat situs web populer seperti Pinterest dan Instagram. Python adalah bahasa pemrograman yang paling mudah untuk dipelajari dibandingkan dengan bahasa pemrograman C atau turunannya, karena Python memiliki [[sintaksis]] yang tidak terlalu kompleks.
;[[Java (bahasa pemrograman)|Java]]: Digunakan oleh [[Google]] sebagai bagian integral dari sistem operasi Android, dan oleh pengembang independen untuk membuat aplikasi Android (serta kegunaan lain). Java diciptakan dengan "tulis sekali, jalankan di mana saja" (WORA atau ''Write Once, Run Anywhere'') pendekatan untuk memudahkan kode yang ditulis pada satu mesin untuk berjalan di mesin lain.
;[[Ruby (bahasa pemrograman)|Ruby]]: Bahasa OOP dan ''open source'' murni yang populer dari Jepang. Sintaks Ruby elegan, natural, mudah dibaca dan ditulis.
;[[Visual Basic]]: Berasal dari bahasa pemrograman '[[BASIC]]', yang sangat populer pada hari-hari awal komputasi pribadi. Bahasa ini dapat membuat program sederhana yang akan dibuat dengan cepat dan mudah, serta memungkinkan untuk ''coding'' yang lebih kompleks.
== Daftar ==
{{main|Daftar bahasa pemrograman}}
== Lihat pula ==
* [[Daftar bahasa pemrograman]]
* [[Bahasa pemrograman pendidikan]]
* [[Bahasa pemrograman tujuan umum|Bahasa pemrograman tujuan umum (GPL)]]
* [[Bahasa pemrograman tujuan khusus|Bahasa pemrograman tujuan khusus (DSL)]]
== Referensi ==
<references />
== Pranala luar ==
* {{Wikiversity-inline}}
* {{commonscat-inline|Programming languages|Bahasa pemrograman}}
{{Bahasa pemrograman}}
{{Authority control}}
[[Kategori:Bahasa pemrograman| ]]
|