Bahasa pemograman adalah teknik komando/instruksi standar untuk
memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan
dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan
program komputer. Bahasa ini memungkinkan seorang
programmer dapat menentukan secara persis data mana yang akan diolah
oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis
langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman
terdiri dari :
- Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
- Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bahasa Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
- Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
- Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Sebagian besar bahasa pemrograman
digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang
digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan
Bahasa Tingkat Rendah.
Ringkasan Sejarah Bahasa Pemrograman
- Sebelum tahun 1940
Pada jaman ini terdapat bahasa pemrograman yang pertama kali muncul
sebelum adanya komputer modern, artinya bahasa pemrograman lebih tua
dari komputer itu sendiri. Pada awal kemunculannya, bahasa pemrograman
masih dalam bentuk kode-kode bahasa mesin. Bahasa mesin merupakan bahasa yang terdiri atas kode-kode mesin dan
hanya dapat diinterpretasikan langsung oleh mesin komputer. Bahasa mesin
ini tergolong bahasa tingkat rendah, karena hanya berupa kode 0 dan 1.
- Periode 1940-an
Penggunaan bahasa mesin menemui banyak kesulitan untuk pengembangan dan
perbaikan pada program yang dibuat saat itu, Tahun 1940-an komputer
bertenaga listrik dibuat, dengan kecepatan yang sangat terbatas dan
kapasitas memori yang mencukupi untuk programmer memprogram, kemudian
terciptalah bahasa assembly (Assembly language). Bahasa assembly adalah
bahasa simbol dari bahasa mesin. Setiap kode bahasa mesin memiliki
simbol sendiri dalam bahasa assembly. Misalnya : Move untuk memindahkan
isi data, ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk
pengurangan, dan lain-lain.
Penggunaan bahasa Asembly dirasa belum sempurna karena selain sulit
untuk diimplementasikan, ternyata bahasa ini juga sulit jika sang
programer ingin mengembangkan program buatannya. Pada tahun 1948, Konrad Zuse mempublikasikan sebuah paper tentang
bahasa pemrograman miliknya yakni Plankalkül. Bagaimanapun, bahasa
tersebut tidak digunakan pada masanya dan terisolasi terhadap
perkembangan bahasa pemrograman yang lain. Beberapa bahasa pemrograman
yang berkembang pada masa itu antara lain:
- Plankalkül (Konrad Zuse) – 1943
- ENIAC coding system – 1943
- C-10 – 1949
- Periode tahun 1950-an sampai dengan tahun 1960-an
Mulai tahun 1950 dibuatlah bahasa pemrograman modern, yang turun-temurun
dan tersebar luas hingga saat ini. Bahasa ini menggunakan istilah atau
reserved word yang dekat dengan bahasa manusia seperti READ untuk
membaca, WRITE untuk menulis dsb. Dalam perkembangannya Bahasa Tingkat
Tinggi juga terdiri dari beberapa metode pemrograman, yaitu Procedural
Programing dan Object Oriented Programing. Letak perbedaannya yaitu,
jika pada procedural programing program dijalankan dengan menggabungkan
variable, procedure-procedure yang saling keterkaitan dan berjalan
berurut, sedangkan pada OOP seluruh task dijalankan berdasarkan kedalam
object. Beberapa bahasa pemrograman
yang berkembang pada masa itu, antara lain :
- FORTRAN (1955), the “FORmula TRANslator”, ditemukan oleh John W. Backus dll.
- LISP, the “LISt Processor”, ditemukan oleh John McCarthy dll.
- COBOL, the COmmon Bussines Oriented Language, dibuat oleh the Short Range Commitee, dan Grace Hopper berperan sangat besar disini.
- Regional Assembly Language – 1951
- Autocode – 1952
- FLOW-MATIC – 1955
- COMTRAN – 1957
- ALGOL – 1958
- APL – 1962
- SIMULA – 1962
- BASIC – 1964
- PL/I -1964
- Periode 1967-1978 : Menetapkan Paradigma Fundamental
Periode diantara tahun 60-an sampai dengan 70-an membawa pengaruh
yang besar dalam perkembangan bahasa pemrograman. Kebanyakan dari pola
bahasa pemrograman yang utama yang saat ini banyak digunakan. Beberapa
bahasa pemrograman yang berkembang dalam periode ini, antara lain :
- Simula, ditemukan pada akhir 60-an oleh Nygaard dan Dahl sebagai superset dari Algol 60, merupakan bahasa pemrograman pertama yang didesain untuk mendukung pemrograman berorientasi object.
- C, sebuah tahapan awal dari sistem bahsa pemrograman, yang dikembangkan oleh DennisRitchie dan Ken Thompson di Bell Labs antara tahun 1969 dan 1973.
- Smalltalk (pertengahan tahun 70-an) menyajikan desain ground-up yang lengkap dari sebuah bahasa yang berorientasi objek.
- Prolog, didesain pada tahun 1977 oleh Colmerauer, Roussel, and Kowalski, merupakan bahasa pemrograman logika yang pertama.
- ML membangun sebuah sistem polimorfis (ditemukan oleh Robin Miller pada tahun 1973) diatas sebuah Lisp, yang merintis bahasa pemrograman fungsional bertipe statis
- Pascal – 1970
- Forth – 1970
- SQL – 1978
- Periode 1980-an : Konsolidasi, Modul, Performa
Periode ini merupakan tahun dari konsolidasi relatif. C++ dikombinasikan
dengan sistem programming dan berorientasi obyek. Pemerintah Amerika
Serikat menstandardisasi Ada, sebuah sistem pemrograman yang bertujuan
untuk digunakan para kontraktor untuk bertahan. Di Jepang dan di tempat
lain, penjumlahan luas yang telah di selidiki disebut” generasi ke lima”
bahasa-bahasa yang menyatukan logika pemrograman konstruksi. Masyarakat
bahasa fungsional gerak ke standarisasi ML dan Cedal. Dibandingkan
dengan menemukan paradigma-paradigma baru, semua pergerakan ini menekuni
gagasan-gagasan yang ditemukan di dalam dekade sebelumnya.
Bagaimanapun, satu kecenderungan baru di dalam disain bahasa adalah
satu fokus yang ditingkatkan di pemrograman untuk sistem besar-besaran
melalui penggunaan dari modul, atau kesatuan organisasi besar-besaran
dari kode. Modula, Ada, dan ML semua sistem modul terkemuka yang
dikembangkan pada 1980-an. Beberapa bahasa pemrograman yang berkembang dalam periode ini, antara lain :
- Ada – 1983
- C++ – 1983
- Eiffel – 1985
- Perl – 1987
- FL (Backus) – 1989
- Periode 1990-an : Visual
Pada periode ini bahasa selain berorientasi objek juga sudah
dikembangkan berbasi Visual sehingga semakin mudah untuk membuat program
aplikasi, diawali oleh Python dan Microsoft Visual Basic 1 pada tahun
1991, Delphi yang dikembangkan dari Pascal for windows akhirnya pada
tahun 1997 Visual Basic 5 diluncurkan dengan kemudahan koneksi ke
database, OO Cobol sudah ditemukan dalam versi windows. Bagi kebanyakan
programmer database tidak dapat dipungkiri bahwa era 1990an merupakan
era yang paling produktif semenjak bahasa pemrograman diciptakan. Beberapa bahasa pemrograman yang berkembang dalam periode ini, antara lain :
- Haskel – 1990
- Python – 1991
- Java – 1991
- Ruby – 1993
- OO Cobol
- Lua – 1993
- ANSI Common Lisp – 1994
- JavaScript – 1995
- PHP – 1995
- C# – 2000
- JavaFX Scrip, Live Script,
- Visual Basic
- Periode 2000-an hingga sekarang
Pada saat ini ada kecenderungan para vendor bahasa pemrograman untuk
menggiring programmer hanya dengan mengggunakan produk mereka untuk
membuat program meski kita sadari bahwa sulit rasanya untuk membuat
program yang tangguh hanya dengan satu bahasa pemrograman, hal ini
tentunya dilakukan dengan tujuan kelangsungan usaha mereka, namun
terlepas dari semua itu terdapat dua konsepsi besar dalam periode ini
dimana kemudahan berbasis visual sudah mulai digiring ke basis internet
dan mobile, dengan bermunculan webservice dan berbasis net dan a mobile
flatform.
Konsep pertama yang dicermati adalah konsepsi Microsoft dimana dengan
Visual Net akan menyediakan berbagai bahasa pemrograman seperti VB Net ,
VC++ Net, ASP NET yang di compile dengan berbagai bahasa akan tetapi
berjalan pada satu sistem operasi yakni windows. (Compile any program
run one system)
Konsepsi Kedua, Merupakan konsep yang terbalik dari konsep pertama
yakni apa yang ditawarkan Sun Microsystem melalui produknya Java, J2ME,
JDK, yakni dicompile dengan satu bahasa pemrograman (java) dan berjalan
dibanyak sistem operasi. (Compile one program running any system).
Selain itu periode ini juga merupakan jamannya CMS (Content Manajemen
System), lompatan pengembangan PHP Script begitu cepat, dimana untuk
membuat website atau portal telah tersedia banyak template, Banyak
modul-modul yang siap pakai sehingga programmer atau webmaster tidak
perlu lagi mempelajari semua script html dan bahasanya, tinggal
merangkai modul yang tersedia sehingga dalam beberapa hari saja sebuah
web sudah dapat dibuat. Apa yang ditawarkan Mambo, PhkNuke dan Jomla
saat ini sangat memudahkan para desainer web. Beberapa bahasa pemrograman yang berkembang dalam periode ini, antara lain :
- Tcl/Tk,
- O’Caml,
- Ruby,
- Phyton 3.1,
- Java 6 JDK, JED, Java Beans, J2ME
- Microsoft Visual Net (VB Net, C++ Net, ASP NET) 2008
- Java Scrip Template oleh Mambo, PhpNuke, Jomla