Seorang Programmer yang akan memilih
bahasa pemrogramannya jika merasa
bahwa bahasa pemrograman tersebut bagus dan mudah digunakan. Ada beberapa
kriteria untuk penilaian suatu bahasa pemrograman, yaitu :
bahwa bahasa pemrograman tersebut bagus dan mudah digunakan. Ada beberapa
kriteria untuk penilaian suatu bahasa pemrograman, yaitu :
1. Clarity, simplicity, dan unity
Bahasa pemrograman harus dapat
menolong programmer untuk membuat
suatu desain program jauh sebelum programmer melakukan coding.
Kemudahan, kesederhanaan, dan kesatuan merupakan suatu kombinasi yang
membantu programmer mengembangkan algoritma sehingga algoritma yang
dihasilkan mempunyai kompleksitas yang rendah.
suatu desain program jauh sebelum programmer melakukan coding.
Kemudahan, kesederhanaan, dan kesatuan merupakan suatu kombinasi yang
membantu programmer mengembangkan algoritma sehingga algoritma yang
dihasilkan mempunyai kompleksitas yang rendah.
Syntax bahasa pemrograman
mempengaruhi kemudahan ketika program mulai
ditulis, dites, dan dimodifikasi. Program yang mudah dibaca adalah kinci dari
hal tersebut.
ditulis, dites, dan dimodifikasi. Program yang mudah dibaca adalah kinci dari
hal tersebut.
2. Orthogonality
Orthogonality menunjuk kepada sautu
atribut yang dapat dikombinasikan dengan beragam
fitur bahasa pemrograman sehingga setiap kombinasinya mempunyai arti dan
dapat digunakan. Contohnya, suatu bahasa pemrograman mendukung suatu
ekspresi yang dapat menghasilkan suatu nilai, dan bahasa pemrograman
tersebut juga mendukung statemen kondisi yang mengevaluasi suatu
ekspresi untuk mendapatkan nilai true atau false. Dua fitur dari bahasa
pemrograman tersebut, yaitu ekpresi dan statemen kondisi, adalah orthogonal jika
sembarang ekspresi dapat digunakan dan dievaluasi di dalam statemen kondisi.
fitur bahasa pemrograman sehingga setiap kombinasinya mempunyai arti dan
dapat digunakan. Contohnya, suatu bahasa pemrograman mendukung suatu
ekspresi yang dapat menghasilkan suatu nilai, dan bahasa pemrograman
tersebut juga mendukung statemen kondisi yang mengevaluasi suatu
ekspresi untuk mendapatkan nilai true atau false. Dua fitur dari bahasa
pemrograman tersebut, yaitu ekpresi dan statemen kondisi, adalah orthogonal jika
sembarang ekspresi dapat digunakan dan dievaluasi di dalam statemen kondisi.
Ketika fitur bahasa pemrograman
adalah orthogonal, maka bahasa pemrograman
tersebut akan mudah dipahami dan dipelajari dan program akan mudah
ditulis karena hanya ada sedikit exception dan case yang harus diingat.
tersebut akan mudah dipahami dan dipelajari dan program akan mudah
ditulis karena hanya ada sedikit exception dan case yang harus diingat.
3. Kewajaran untuk Apikasi
Bahasa pemrograman membutuhkan
syntax yang tepat dan cocok yang digunakan pada
struktur program untuk merefleksikan struktur logika yang melandasi suatu algoritma.
struktur program untuk merefleksikan struktur logika yang melandasi suatu algoritma.
Bahasa pemrograman harus mempunyai
struktur data, operasi-operasi, struktur kontrol,
dan syntax alami yang tepat/cocok untuk memcahkan suatu masalah. Suatu bahasa pemrograman
didesain secara khusus untuk kebutuhan tertentu, misalnya PROLOG digunakan untuk keperluan
deduksi atau C++ untuk pemrograman berorientasi objek.
dan syntax alami yang tepat/cocok untuk memcahkan suatu masalah. Suatu bahasa pemrograman
didesain secara khusus untuk kebutuhan tertentu, misalnya PROLOG digunakan untuk keperluan
deduksi atau C++ untuk pemrograman berorientasi objek.
4. Mendukung Abstraksi
Abstraksi merupakan suatu hal yang
substansial bagi programmer untuk membuat
suatu solusi dari masalah yang dihadapi. Kemudian abstraksi tersebut dapat dengan mudah
diimplementasikan menggunakan fitur-fitur yang ada dalam bahasa pemrograman.
suatu solusi dari masalah yang dihadapi. Kemudian abstraksi tersebut dapat dengan mudah
diimplementasikan menggunakan fitur-fitur yang ada dalam bahasa pemrograman.
5. Kemudahan untuk Verifikasi
Program
Verifikasi program merupakan hal
penting bagi subuah program karena denga verifikasi yang mudah
maka suatu program akan dengan mudah dibangun dan dikembangkan. Kesederhanaan struktur semantic dan
syntax merupakan aspek utama yang mempengaruhi kesederhanaan verifikasi program.
maka suatu program akan dengan mudah dibangun dan dikembangkan. Kesederhanaan struktur semantic dan
syntax merupakan aspek utama yang mempengaruhi kesederhanaan verifikasi program.
6. Lingkungan Pemrograman
Bahasa pemrograman yang mempunyai
lingkungan pemrograman yang baik dan
lengkap akan memudahkan programmer untuk mengimplementasikan abstraksi yang sudah disusunnya.
Lingkungan pemrograman disini dapat berarti editor yang digunakan, documentasi yang
baik dari bahasa pemrograman, fasilitas debugging, user interface yang baik, ataupun tool lain
yang dapat digunakan untuk memudahkan pekerjaan programmer.
lengkap akan memudahkan programmer untuk mengimplementasikan abstraksi yang sudah disusunnya.
Lingkungan pemrograman disini dapat berarti editor yang digunakan, documentasi yang
baik dari bahasa pemrograman, fasilitas debugging, user interface yang baik, ataupun tool lain
yang dapat digunakan untuk memudahkan pekerjaan programmer.
SamllTalk merupakan salah satu
bahasa pemrograman yang didesain secara
khusus untuk lingkungan pemrogramannya, terdiri dari Windws, menu, input mouse, dan sekumpulan
tool yang digunakan dalam program.
khusus untuk lingkungan pemrogramannya, terdiri dari Windws, menu, input mouse, dan sekumpulan
tool yang digunakan dalam program.
7. Portabilitas Program
Salah satu kriteria penting untuk
proyek pemrograman adalah kemudahan program yang sudah jadi
untuk dipindahkan dari komputer yang digunakan untuk membuat dan mengembangkan ke komputer
lain yang akan menggunakannya.
untuk dipindahkan dari komputer yang digunakan untuk membuat dan mengembangkan ke komputer
lain yang akan menggunakannya.
8. Biaya Penggunaan
Biaya merupakan elemen penting dalam
mengevaluasi suatu bahasa pemrograman. Ada beberapa biaya yang dapat
di ukur, yaitu :
di ukur, yaitu :
1) Biaya Eksekusi program
Program yang sering dieksekusi akan
membutuhkan suatu kode executable yang efisien sehingga
cepat untuk dieksekusi. Sewmakin cepat suatu program dieksekusi maka akan semakin murah biaya
eksekusi program.
cepat untuk dieksekusi. Sewmakin cepat suatu program dieksekusi maka akan semakin murah biaya
eksekusi program.
2) Biaya Translasi/Kompilasi program
Untuk pemlajaran, kecapatan
translasi lebih diutamakan daripada kecepatan eksekusi karena
pada pemlajaran lebih sering dilakukan translasi/kompilasi daripada eksekusi program yang dihasilkan.
Oleh karena itu, lebih dibutuhkan compiler yang efisien dibanding kod executable yang efesien.
pada pemlajaran lebih sering dilakukan translasi/kompilasi daripada eksekusi program yang dihasilkan.
Oleh karena itu, lebih dibutuhkan compiler yang efisien dibanding kod executable yang efesien.
3) Biaya penciptaan. testing, dan
penggunaan program
Semakin baik dan lengkap lingkungan
pemrgraman pada bahasa pemrograman maka ketiga biaya ini akan menjadi rendah.
hal ini disebabkan tidak banyaknya waktu dan tenaga serta pikiran yang dicurahkan ke pembuatan program.
4) Biaya pemeliharaan program
hal ini disebabkan tidak banyaknya waktu dan tenaga serta pikiran yang dicurahkan ke pembuatan program.
4) Biaya pemeliharaan program
Pemeliharaan program termsuk
perbaikan error yang muncul ketika program sudah digunakan, perubahan yang
dibutuhkan pada
program ketika hardware atau sistem operasi berubah, dan penyesuaian kebutuhan dengan kebutuhan yang baru.
program ketika hardware atau sistem operasi berubah, dan penyesuaian kebutuhan dengan kebutuhan yang baru.
Pemeliharaan merupakan salah satu
biaya tebesar dari life cycle cost dan merupakan suatu hal yang membosankan
bagi programmer