Bahasa Pemrograman
Bahasa pemrograman adalah bahasa buatan yang digunakan
untuk mengendalikan perilaku dari sebuah mesin, biasanya berupa
mesin komputer, sehingga dapat digunakan untuk memberitahu
komputer tentang apa yang harus dilakukan.
Struktur bahasa ini memiliki kemiripan dengan bahasa natural
manusia, karena juga tersusun dari elemen-elemen dasar seperti: kata
benda dan kata kerja serta mengikuti aturan untuk menyusunnya
menjadi kalimat.5
1.5.1 Klasifikasi Menurut Generasi
First Generation Language (1GL)
Bahasa pemrograman ini berupa kode-kode mesin yang hanya
bisa dipahami oleh mikroprosesor.
Second Generation Language (2GL)
Bahasa pada generasi ini adalah assembly language, dimana
bahasa ini masih menggunakan kode-kode yang disebut
dengan mnemonic. Bahasa assembly disebut sebagai generasi
kedua karena bahasa ini bukan bahasa asli mikroprosesor,
meskipun begitu programer tetap harus mengetahui keunikan
dari masing-masing mikroprosesor (register dan jenis
instruksi).
Generasi ketiga
Bahasa pemrograman generasi ketiga sengaja didesain supaya
mudah dipahami oleh manusia. Pada generasi ini mulai
dikenalkan istilah variabel, tipe data, ekspresi aljabar dan
sudah mendukung pemrograman terstruktur.
Contoh bahasa: FORTRAN, COBOL, ALGOL, BASIC, C,
C++, Pascal, Java.
Generasi keempat
Pada generasi ini, bahasa pemrograman didesain untuk
mengurangi effort dan mempercepat proses pembuatan
program. Pada 3GL, pembuatan program membutuhkan waktu
yang lama dan mudah sekali didapati error. Pada 4GL, telah
menggunakan metodologi dimana sebuah perintah dapat
menghasilkan beberapa instruksi 3GL yang kompleks dengan
sedikit error. Contoh bahasa:
Pemrograman umum : DataFlex, WinDev, PowerBuilder
Basis data : SQL, Progress 4GL
Manipulasi data, analisis dan pelaporan : ABAP, Matlab,
PL/SQL.
Generasi kelima
Bahasa pemrograman generasi kelima disebut sebagai
constraint-programming atau declarative-programming.
Program tidak dituliskan dalam bentuk algoritma melainkan
dituliskan batasan atau fakta dari sebuah lingkup masalah,
sehingga program akan menghasilkan luaran dalam bentuk 6
solusi. Bahasa pemrograman ini digunakan untuk membangun
sistem kecerdasan buatan dan belum digunakan secara meluas
di dunia industri. Contoh bahasa: Prolog, LISP, Mercury.
1.5.2 Klasifikasi Menurut Tingkatan
Low-level programming language
Tingkat bahasa pemrograman ini disebut ”rendah” (low level)
bukan karena posisinya berada di bawah, melainkan karena
kurangnya abstraksi (penggambaran kode instruksi) antara
bahasa natural dengan bahasa mesin. Oleh karena itu, bahasa
di tingkat ini sering disebut sebagai ‟bahasa mesin‟.
Bahasa pemrograman yang masuk kategori ini adalah bahasa
mesin itu sendiri (1GL) dan bahasa assembly (2GL).
High-level programming language (HLL)
Bahasa pemrograman di tingkat ini memiliki abstraksi yang
lebih banyak dan terdapat kemiripan dengan bahasa natural
(bahasa Inggris), lebih mudah untuk digunakan dan mudah
untuk dipindahkan antar platform.
Very high-level programming language (VHLL)
Bahasa ini memiliki abstraksi yang lebih tinggi dibandingkan
HLL, dan digunakan untuk menunjang produktifitas programer
profesional. Biasanya VHLL digunakan hanya untuk tujuan
yang spesifik, misalnya untuk keperluan bisnis: mengolah data,
membuat laporan, dsb.
Paradigma pemrograman merupakan sebuah cara pandang
seorang programmer dalam menyelesaikan sebuah masalah dan
memformulasikannya kedalam sebuah bahasa pemrograman. Terdapat
beberapa paradigma pemrograman, antara lain:
1.6.1 Paradigma Imperatif
Inti dari paradigma ini adalah menjalankan sebuah urutan
perintah, jalankan satu perintah kemudian jalankan perintah yang
selanjutnya. Sebuah program imperatif tersusun dari sekumpulan
urutan perintah yang akan dijalankan oleh komputer. Pemrograman
prosedural merupakan salah satu contoh dari paradigma ini, dan
seringkali dianggap sebagai sebuah sebuah paradigma yang sama.
Ide dasarnya adalah dari model komputer Von Neumann.
Eksekusi langkah-langkah komputasi diatur oleh sebuah struktur
kontrol.
Berdasarkan urutan-urutan atau sekuensial.
Program adalah suatu rangkaian prosedur untuk memanipulasi
data. Prosedur merupakan kumpulan instruksi yang dikerjakan
secara berurutan.
Contoh bahasa pemrograman: Fortran, Algol, Pascal, Basic, C
1.6.2 Paradigma Fungsional
Pemrograman Fungsional adalah sebuah paradigma yang
menjadikan fungsi matematika sebagai penentu dalam eksekusi
komputasi. Fungsi tersebut merupakan dasar utama dari program
yang akan dijalankan. Paradigma ini lebih banyak digunakan di
kalangan akademis daripada produk komersial, terutama yang murni
fungsional.
Ide dasar dari matematika dan teori fungsi.
Beberapa contoh bahasa fungsional adalah APL, Erlang,
Haskell, Lisp, ML, Oz dan Scheme.
1.6.3 Paradigma Logika
Umumnya digunakan pada domain yang berhubungan dengan
ekstraksi pengetahuan yang berbasis kepada fakta dan relasi. Dalam
paradigma ini, logika digunakan secara murni untuk representasi
bahasa deklaratif yang kebenarannya ditentukan oleh programmer,
sedangkan pembukti-teorema atau model pembangkit digunakan
sebagai pemecah masalah.
Berasal dari pembuktian otomatis didalam intelegensia buatan.
Berdasar kepada aksioma, aturan dan query.
Eksekusi program menjadi proses pencarian secara sistematik
dalam sekumpulan fakta, dengan menggunakan sekumpulan
aturan.
Beberapa contoh bahasa pemrograman: ALF, Fril, Gödel,
Mercury, Oz, Ciao, Visual Prolog, XSB, and λProlog8
1.6.4 Paradigma Berorientasi Obyek
Pemrograman berorientasi obyek muncul untuk mengatasi
masalah kompleksitas dari sebuah perangkat lunak sehingga kualitas
dari perangkat lunak tersebut dapat dikelola dengan lebih mudah.
Caranya adalah dengan memperkuat modularity dan reusability
didalam perangkat lunak tersebut. Pemrograman berorientasi obyek
menggunakan obyek dan interaksi antar obyek dalam penyusunan
sebuah perangkat lunak. Paradigma ini semakin banyak digunakan
karena lebih mudah dalam menggambarkan kondisi yang ada pada
dunia nyata.
Ide dari interaksi antar obyek yang ada pada dunia nyata.
Antar obyek saling berinteraksi dengan saling mengirimkan
pesan (message).
Terdapat beberapa karakteristik utama, yaitu: Abstraksi,
Enkapsulasi, Pewarisan dan Polimorfisme.
Dalam membuat algoritma, diperlukan suatu mekanisme atau
alat bantu untuk menuangkan hasil pemikiran mengenai langkah
langkah penyelesaian masalah yang sistematis dan terurut. Pada
dasarnya untuk bisa menyusun solusi diperlukan kemampuan problem
solving yang baik. Oleh karena itu, sebagai sarana untuk melatih
kemampuan tersebut terdapat sebuah tool (alat) yang dapat digunakan,
yakni flowchart.
Secara formal, flowchart didefinisikan sebagai skema
penggambaran dari algoritma atau proses. Tabel berikut menampilkan
simbol-simbol yang digunakan dalam menyusun flowchart
Tidak ada komentar:
Posting Komentar