Bahasa Pemrograman Tingkat Tinggi
A.
Pengertian Bahasa Pemrograman Bahasa Pemrograman (programming language)
adalah sebuah instruksi standar untuk memerintah komputer agar menjalankan
fungsi tertentu. 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. Bahasa pemrograman, atau sering diistilahkan
juga dengan bahasa komputer atau bahasa pemrograman komputer, adalah 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 yang akan diambil dalam berbagai
situasi secara persis. Bahasa pemrograman tingkat tinggi adalah
sebuah bahasa pemrograman yang jika dibandingkan dengan bahasa pemrograman
tingkat rendah memiliki sifat lebih mudah digunakan, lebih portabel (mudah
diadaptasikan) antar-platform, dan lebih abstrak. Bahasa-bahasa semacam ini
sering melakukan abstraksi terhadap beberapa operasi CPU, seperti halnya
pengaksesan memori. B.
Fitur-fitur Bahasa pemrograman tingkat tinggi Istilah "bahasa pemrograman tingkat
tinggi" tidak serta merta menjadikan bahasa tersebut lebih baik
dibandingkan dengan bahasa pemrograman tingkat rendah. Akan tetapi, maksud dari
"tingkat tinggi" di sini merujuk kepada abstraksi yang lebih tinggi
dibandingkan dengan bahasa tingkat rendah terhadap bahasa mesin. Dibandingkan
dengan harus berurusan dengan register, alamat memori dan stack-stack
panggilan, bahasa pemrograman tingkat tinggi akan berurusan dengan variabel,
larik, dan ekspresi aritmetika atau aljabar Boolean. Selain itu, tidak seperti
bahasa rakitan, bahasa tingkat tinggi tidak memiliki opcode atau kode operasi
yang dapat secara langsung menjadikan bahasa tersebut menjadi kode mesin. Fitur
lainnya seperti rutin-rutin penanganan string, fitur pemrograman berorientasi
objek, input/output terhadap berkas juga terdapat di dalam jenis bahasa ini. Secara umum, bahasa tingkat tinggi akan
membuat pemrograman komputer yang kompleks menjadi lebih sederhana, sementara
bahasa tingkat rendah cenderung untuk membuat kode yang lebih efisien. Dalam
sebuah bahasa tingkat tinggi, elemen-elemen kompleks dapat dipecah ke dalam
beberapa elemen yang lebih sederhana, meski masih dapat dianggap kompleks, di
mana bahasa tersebut menyediakan abstraksi. Karena alasan ini, kode-kode yang
harus berjalan dengan efisien dapat ditulis dalam bahasa pemrograman tingkat
rendah, sementara bahasa tingkat tinggi digunakan untuk mempermudah
pemrograman. Akan tetapi, dengan bertambah rumitnya
arsitektur mikroprosesor modern, kompilator-kompilator bahasa pemrograman
tingkat tinggi dapat membuat kode yang lebih efisien dibandingkan dengan para
programmer bahasa pemrograman tingkat rendah yang melakukannya secara manual. Perlu dicatat bahwa istilah "tingkat
tinggi" dan "tingkat rendah" adalah relatif. Pada awalnya, bahasa
rakitan dianggap sebagai bahasa tingkat rendah, sementara COBOL, C, dan
lain-lainnya dianggap sebagai bahasa tingkat tinggi, mengingat mereka
mengizinkan abstraksi terhadap fungsi, variabel, dan evaluasi ekspresi. Akan
tetapi, banyak programmer saat ini mungkin menganggap bahasa C sebagai bahasa
pemrograman tingkat rendah, mengingat bahasa pemrograman tersebut mengizinkan
akses memori secara langsung dengan menggunakan alamatnya, dan juga dapat
menggunakan beberapa direktif bahasa rakitan. C.Model eksekusi Ada tiga buah model eksekusi untuk bahasa
tingkat tinggi, yakni:
1.
Diinterpretasikan Bahasa jenis ini akan
dibaca dan dieksekusi secara langsung tanpa adanya proses atau tahap kompilasi
oleh kompilator. Alat bantu yang mampu melakukannya disebut sebagai penerjemah
(interpreter). 2.
Dikompilasi Bahasa jenis ini akan
ditransformasikan ke dalam bentuk yang dapat dieksekusi sebelum dijalankan. Ada
dua jenis kompilasi yang sering digunakan, yakni: a.
Intermediate representation Ketika sebuah bahasa
dikompilasi ke dalam intermediate representation, representasi tersebut
dapat dioptimalkan atau disimpan untuk eksekusi pada lain waktu tanpa adanya
kebutuhan untuk membaca lagi kode sumber program. Ketika representasi
intermediate disimpan, umumnya, hal tersebut dinamakan dengan bytecode. b.
Machine code generation Beberapa bahasa dapat
melakukan kompilasi secara langsung ke dalam bahasa mesin.
3.
Ditranslasikan Sebuah bahasa juga dapat
ditranslasikan ke dalam bahasa pemrograman tingkat rendah di mana kompilator
kode bahasa asli telah beredar luas. Bahasa pemrograman C merupakan salah satu
target yang umum untuk translator seperti ini. Dalam dunia programming,
Anda akan mengenal beberapa tingkatan bahasa pemrograman. Salah satu tingkatan
yang ada di dalam programming adalah bahasa pemrograman tingkat tinggi. Kok
bisa dinamakan demikian? Memang, bedanya apa dengan bahasa pemrgoraman tingkat
lainnya? Bahasa pemrograman tingkat
tinggi (high level programming language) mulai hadir pada generasi ke-3 bahasa
pemrograman. Sampai saat ini, bahasa pemrograman sudah mencapai generasi kelima
dan sudah berkembang lebih jauh. Meskipun begitu, bahasa pemrograman yang
termasuk ke dalam tingkat ini masih tetap dikategorikan sebagai macam-macam
bahasa pemrograman tingkat tinggi. Perkembangan yang dimaksud
meliputi pemrograman yang berorientasi obyek (object oriented), pemrograman
berbasis web (yang dikembangkan melalui cloud computing), pemrograman basis
data (database), dan termasuk juga pemrograman perangkat mobile. D.
Macam-macam bahasa pemrograman tingkat tinggi 1. C++ (Turbo C++) C++ adalah bahasa
pemrograman yang dibuat oleh Bjarne Stroustrup dan merupakan pengembangan dari
bahasa C yang dikembangkan terlebih dahulu pada awal tahun 1970. Salah satu
perbedaan yang paling jelas antara bahasa C++ dengan bahasa C adalah adanya
dukungan terhadap konsep pemrograman berorientasi obyek (Object Oriented
Programming) pada bahasa C++, sedangkan bahasa C lebih cenderung ke bahasa
prosedural.
2. Visual Basic (non – .NET) Visual Basic adalah sebuah
bahasa pemrograman yang menawarkan Integrated Development Environment (IDE)
visual untuk membuat program software yang bisa dijalankan di dalam sistem
operasi Microsoft Windows dengan menggunakan model pemrograman (COM). Visual Basic sendiri
merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan
perangkat lunak komputer berbasis grafik dengan cepat.
3. PHP (prosedural) PHP adalah bahasa
pemrograman yang dapat disisipkan ke dalam file HTML. PHP banyak dipakai untuk
membuat situs web dinamis. Selain itu, PHP dapat digunakan untuk membangun
sebuah CMS.
4. Delphi (Borland) Delphi adalah bahasa
pemrograman yang digunakan untuk pengembangan aplikasi konsol, desktop, web,
maupun perangkat mobile. Pada mulanya, Delphi ditujukan hanya untuk OS
Microsoft Windows saja, namun sekarang ini Delphi bisa digunakan untuk
mengembangkan aplikasi di jenis sistem operasi komputer lainnya, seperti Mac OS
X, iOS, dan Android.
5. BASIC (Beginners All-purposes Symbolic Instruction Code) BASIC dikembangkan pada
tahun 1965 di Darmouth College oleh John Kemeny dan Thomas Kurtz. Bahasa BASIC
pada awalnya dipergunakan dalam aplikasi matematika. Selain itu, BASIC juga
digunakan dalam beberapa aplikasi lainnya seperti akuntasi, permainan, file
simulasi, dan lain-lain.
Keunggulan BASIC terletak
pada kemudahan dalam pemakaiannya, sedangkan kelemahannya adalah tidak bisa
mendukung operasi bilangan kompleks dan penanganan terhadap berkas sangat
terbatas.
6. LOGO Bahasa pemrograman LOGO
dikembangkan untuk pendidikan dan simulasi pengajaran pada anak-anak dalam
menyelesaikan masalah dan melakukan pemrograman. Bahasa ini ditemukan pada
tahun 1967 oleh Seymour Papert dengan menggunakan LISP, yaitu salah satu jenis
bahasa pemrograman untuk kecerdasan buatan. LOGO sangat mudah digunakan untuk
membuat gambar, sehingga sering digunakan untuk membuat laporan-laporan bisnis
dalam bentuk grafik.
7. COBOL (Common Business Oriented Language) Bahasa pemrograman satu ini
sering digunakan dalam dunia bisnis dan komersial. COBOL mulai dikembangkan
pada tahun 1959. Namun sampai saat ini, masih banyak pengguna yang menggunakan
COBOL ini untuk mini computer dan mainframe. COBOL memiliki kelebihan seperti
berikut:
a. Kode yang digunakan untuk semua platform sama, sehingga
progrma ini tidak tergantung pada komputer yang digunakan. b. Menggunakan kata-kata dalam bahasa Inggris, sehingga
sangat mudah dipahami. c. Penanganan input dan output mudah dilakukan. d. Adanya dukungan penanganan terhadap berkas, bahkan
mendukung berbagai macam tipe-tipe berkas seperti sekuensial dan indeks. Sedangkan kelemahan dari
bahasa ini adalah struktur penulisan program yang sangat banyak dan juga sangat
kaku.
8. Pascal Pascal ditemukan oleh
Nicklaus Wirth tahun 1971. Bahasa ini awalnya dibuat untuk pengajaran
pemrograman. Bahasa ini sangat populer di kalangan mahasiswa ilmu komputer dan
teknik. Pascal memiliki keunggulan dibandingkan Fortran maupun Basic,
diantaranya sangat mudah dipelajari serta memiliki dukungan fungsi-fungsi
matematika yang sangat lengkap.
Sedangkan kelemahan Pascal
yaitu tidak dapat mendukung operasi bilangan kompleks dan tidak mendukung
sarana aplikasi bisnis. Pascal juga digunakan sebagai landasan pembuatan kode
pada Kylix, yaitu software pengembang program di lingkungan Linux.
9. Fortran (Formula Translator) Fortran merupakan salah
satu macam bahasa pemrograman tingkat tinggi yang pertama kali diciptakan.
Bahasa ini mulai dikembangkan pada tahun 1956 oleh John Backus di IBM. Fortran
digunakan dalam bidang aplikasi matematika, yaitu dalam hal perumusan dan
perhitungan sehingga menjadi andalan keunggulan dari bahasa ini. Kelemahan
Fortran yaitu operasi masukan dan keluarannya sangat kaku dan sulit untuk
dipahami. Untuk membuat bahasa Fortran, selain harus mengetahui bahasa mesin,
seorang programmer juga harus memahami tata bahasa dan peraturan bahasa
Fortran.
10.
Algol (Algoritma
Language) Algol merupakan bahasa
pemrograman yang cocok untuk memecahkan permasalahan yang membutuhkan
perhitungan numerik untuk beberapa pengolahan logic.
11.
PL/1 (Programming
Language) PL/1 adalah bahasa
pemrograman yang dapat digunakan dalam segala bahasa. Pada kenyataannya bahasa
ini sulit dipelajari dan hanya dapat digunakan pada mesin IBM.
12.
RPG (Report Program
Generation) RPG adalah program untuk
pengolahan laporan. RPG diluncurkan pertama kali pada tahun 1964 dan sangat
populer di lingkungan mini computer dan mainframe IBM.
13.
APL (Aritmathic
Programming Language) APL adalah bahasa
pemrograman untuk memecahkan soal-soal matematika. Bahasa pemrograman satu ini
diperkenalkan dan diciptakan oleh Kenneth Iverson pada tahun 1962. Untuk bisa
membuat programa menggunakan bahasa ini, programmer harus menggunakan keyboard
khusus yang berisikan simbol-simbol yang kompleks yang memungkinkan untuk
melakukan penyelesaian matematika yang kompleks. Sekian artikel kami kali
ini seputar macam macam bahasa pemrograman tingkat tinggi. Semoga informasi
yang kami berikan dapat bermanfaat bagi Anda yang sedang mempelajari pemrograman E.
Kekurangan Bahasa Pemrograman Tingkat Tinggi Dalam terminologi pemrograman komputer,
bahasa pemrograman sering dipisahkan menjadi bahasa "tingkat tinggi"
dan "tingkat rendah". Perbedaan antara keduanya adalah masalah
interaksi perangkat keras. Sederhananya, bahasa tingkat rendah berada
"lebih rendah" pada sistem komputer, lebih dekat dengan interaksi
perangkat keras yang sebenarnya. Bahasa tingkat tinggi dipisahkan dari
perangkat keras. Hasil abstraksi ini dapat menghasilkan kode yang lebih cepat
dan lebih mudah dibaca, tetapi manfaat kecepatan yang lebih rendah dan akses
yang lebih sedikit ke sumber daya sistem.
1. ABSTRAKSI Apa yang membuat bahasa
tingkat tinggi berbeda dari bahasa tingkat rendah adalah tingkat abstraksi yang
dimiliki bahasa dari sumber daya sistem. Berurusan dengan sumber daya sistem setiap
hari bisa menjadi lambat dan menyakitkan. Bahasa tingkat tinggi dibuat untuk
mengatasi masalah ini dengan menangani sistem untuk pemrogram, membebaskannya
untuk menyelesaikan tugas tingkat lanjut sambil mengabaikan detail menit dari
sistem, seperti manajemen memori. Namun, ini memiliki kelemahan yaitu
programmer mungkin menemukan dirinya dalam situasi di mana akses sistem
diperlukan, dan bahasa tingkat tinggi tidak dapat memberikan akses tersebut.
Bahasa tingkat tinggi biasanya tidak cocok untuk pemrograman sistem.
2. KECEPATAN Bahasa tingkat tinggi
biasanya merupakan bahasa "ditafsirkan" daripada bahasa tingkat
rendah yang "dikompilasi". "Diinterpretasikan" berarti
bahwa suatu bahasa menggunakan penerjemah yang mengeksekusi kode sumber satu
baris pada satu waktu, daripada mengompilasi file biner. Namun, interpreter
seringkali merupakan program yang ditulis dalam bahasa yang dikompilasi. Karena
itu, bahasa yang diinterpretasikan - Python, sebagai contoh - hanya berjalan di
atas interpreter Python, yang ditulis dalam C. Hal ini meningkatkan overhead
memori dan waktu untuk program yang diinterpretasikan, dan seringkali
dijalankan lebih lambat.
3. KEANEHAN SISTEM Kekuatan yang tampak dari
kode tingkat tinggi adalah portabilitasnya. Kode tingkat tinggi dapat berjalan
di sistem apa pun yang telah menginstal interpreter yang sesuai. Namun, ketika
sebuah program dikompilasi untuk sebuah komputer, itu memperhitungkan seluruh
lingkungan dari sistem itu dalam kompilasinya. Bahasa yang diinterpretasikan
sudah diabstraksi dari sistem ke suatu titik sehingga program yang
diinterpretasikan tidak tahu apa-apa tentang sistem kecuali untuk apa yang
dapat disediakan oleh interpreter.
4. BATASAN PEMROGRAMAN
Karena sifat dari bahasa
tingkat tinggi, ada tugas-tugas tertentu yang tidak cocok untuknya, atau
setidaknya belum cocok untuknya. Tanpa akses ke sumber daya sistem,
mengembangkan aplikasi OS asli yang cepat menjadi sulit. Lebih jauh lagi,
bahkan mengembangkan sistem operasi pun menjadi masalah. Karena semakin banyak
perangkat lunak yang bergerak online, fakta ini menjadi kurang menjadi
perhatian, tetapi untuk penggunaan komersial dan industri, bahasa yang
ditafsirkan mungkin bekerja terlalu lambat, atau terlalu jauh dari interaksi
perangkat keras. |