Pengertian
Memdiberikan arahan kepada komputer supaya sanggup bekerja menyerupai yang kita kehendaki.
- Yang ‘dipahami’ atau dijalankan oleh komputer : data dan arahan dalam bentuk biner (rangkaian bit-bit berskor ‘0’ atau ‘1’).
- Yang dipahami insan : logika, aritmadab, algoritma, konsep, model, dan sebagainya.
Untuk menjembatani, dibuatlah bahasa pemprograman, yang menerjemahkan dari apa yang dikehendaki / dimengerti insan menjadi arahan mesin komputer.
Klasifikasi Pemprograman
Berdasarkan tingkat
Berdasarkan tingkat kedekatannya dengan bahasa mesin dan bahasa manusia, diklasifikasinya menjadi
1. Bahasa tingkat rendah, memetakan setiap arahan dari kode sumber kedalam satu arahan bahasa mesin. Biasa disebut juga dengan bahasa assembly. Untuk sanggup memprogram dalam bahasa assembly, diharapkan pengetahuan yang benar wacana perangkat keras, representasi data, cara kerja pemprosesan, dan instruksi-instruksi mesin komputer
2. Bahasa tingkat tinggi, mempunyai kedekatan dengan bahasa dan cara berpikir manusia. Contoh : bahasa Pascal
3. Bahasa tingkat menengah, antara kedua tingkat di atas. Contoh : bahasa C
Berdasarkan kerangka pikir
Pemprograman komputer sanggup diklasifikasikan sebagai diberikut
PEMPROGRAMAN PROSEDURAL
Program tersusun atas prosedur-prosedur algoritma. Pemprograman prosedural dicirikan dengan adanya sequence (urutan), branch (pencabangan), dan loop (pengulangan).
- Urutan, berarti bahasa tersebut mempunyai urutan pemprosesan tertentu, biasanya dari atas ke bawah dan dari kiri ke kanan.
- Pencabangan, merupakan alternatif alur kegiatan menurut evaluasi terhadap kondisi tertentu. Contoh pencabangan ialah beberapa statement diberikut
o IF THEN
o IF THEN ELSE
o CASE
- Pengulangan terhadap alur kegiatan menurut evaluasi terhadap kondisi tertentu. Contoh pengulangan ialah beberapa statement diberikut
o REPEAT UNTIL
o WHILE DO
o FOR DO
Contoh bahasa Pemprograman Prosedural : Pascal, C, Basic,
PEMPROGRAMAN FUNGSIONAL,
tersusun atas fungsi-fungsi, baik yang sudah terdefinisi maupun yang dibentuk sendiri oleh pengguna. Contoh : LISP
PEMPROGRAMAN DEKLARATIF
Tersusun atas deklarasi-deklarasi logika, berupa fakta, aturan, dan sasaran. Bahasa pemprograman prosedural mempunyai mekanisme inferensi, yang memungkinkan komputer ‘menalar’ atau menelusuri banyak sekali fakta dan aturan yang didiberikan untuk mendapat hasil / jawabanan dari pertanyaan tertentu.
Contoh : Prolog (programming in logic)
PEMPROGRAMAN BERORIENTASI OBJEK
Dalam pemprograman berorientasi objek, dilema dan solusinya dimodelkan sebagai objek. Objek ialah segala sesuatu di alam semesta (lahiriah) yang sanggup diamati. Setiap objek merupakan anggota, atau merupakan instance dari kelas objek tertentu. Setiap kelas objek minimal mempunyai :
1. nama kelas objek yang unik, membedakannya dengan kelas objek yang lain
2. atribut-atribut, atau data, atau properti-properti, atau sifat-sifat yang menempel pada kelas objek tersebut
3. perilaku, atau kemampuan, atau operasi, atau method, atau tanggung balasan yang menempel pada kelas objek tersebut
Ciri utama dari pemprograman berorientasi objek ialah adanya encapsulation (pembungkusan), inheritance (penurunan sifat), dan polymorphism (perubahan bentuk).
- Encapsulation, merupakan pembungkusan suatu kelas objek dengan atribut-atribut dan perilaku-perilaku yang dimilikinya. Contoh kelas objek sederhana
- Inheritance, merupakan penurunan sifat dari kelas objek induk kepada kelas objek anaknya, dari suatu kelas objek yang ludang keringh general / umum kepada kelas objek yang ludang keringh spesifik / khusus.
- Polymorphism, berarti objek yang berbeda-beda yang diturunkan dari induk yang sama mendukung antarmuka properti dan method yang sama. (dapat dipahami kalau telah terlibat ludang keringh lanjut dengan pemprograman berorientasi objek)
Contoh : Object Pascal, C++, Eiffel, SmallTalk, Java, C#
Cara Kerja
Penerjemahan dari kode sumber dalam bahasa tingkat tinggi kedalam arahan mesin dilakukan dengan dua macam cara, yaitu kompilasi dan interpretasi
1. kompilasi, merupakan penerjemahan keseluruhan kode sumber menjadi kode biner, yang selanjutnya dihukum oleh mesin / komputer
2. interpretasi, merupakan penerjemahan baris per baris kode sumber kedalam arahan komputer yang bersesuaian
Pengantar Teori Bahasa
Bahasa pemprograman modern dikembangkan dengan memakai teori bahasa, sehingga mempunyai sifat-sifat yang analogis dengan bahasa manusia. Bahasa mempunyai grammar (tata bahasa), yang tersusun atas banyak sekali aturan produksi.
Sebagai contoh, dalam tata bahasa Bahasa Indonesia, terdapat aturan sebagai diberikut
- setiap naskah terdiri atas satu atau beberapa paragraf
- setiap paragraf terdiri atas satu atau beberapa kalimat
- setiap kalimat tersusun atas subjek, predikat, objek, dan keterangan
- subjek dan objek dalam kalimat merupakan frase benda
- frase benda sanggup tersusun atas satu kata benda atau kombinasi kata benda dan kata sifat, dengan susunan M-D
- predikat merupakan frase kerja atau sifat
- dan seterusnya
Dalam bahasa pemprograman, aturan produksi biasa dinyatakan dalam bentuk regular expression.
Tahap-tahap analisis
1. Analisis Leksikal, merupakan analisis terhadap satuan-satuan leksikal (token, atau simbol) dari kode sumber. Dari analisis ini akan diketahui jenis-jenis token yang dibaca. Dapat diketahui juga kalau terdapat token / simbol yang tidak dikenal atau salah. Proses ini biasa juga disebut sebagai scanning.
2. Analisis Sintaktik, dilakukan sesudah analisis leksikal dilalui dengan benar (tidak ada token salah atau token tak dikenal). Dalam analisis sintaktik, dilakukan investigasi kesesuaian kode sumber dengan aturan produksi dari grammar bahasa tersebut. Proses ini biasa juga disebut sebagai parsing.
3. Analisis Semantik, biasa dilakukan bersamaan dengan analisis sintaktik. Analisis semantik sanggup dianggap sebagai analisis terhadap kebenaran ‘arti’ dari suatu ekspresi. Contoh analogis : kalimat ‘Kucing makan mobil’ ialah benar secara tata bahasa, tetapi tidak benar artinya.
Advertisement