Pages

Rabu, 19 Oktober 2011

Konsep Bahasa Pemrograman

Konsep Dasar Pemrograman
1. Program dan Pemrograman
Program adalah kumpulan instruksi yang digunakan untuk mengatur komputer agar melakukan suatu tindakan tertentu. Tanpa program, komputer tidak dapat berbuat apa-apa. Sedangkan Pemrograman adalah suatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu, dimana instruksi tersebut menggunakan bahasa pemrograman. Selain itu ada pula istilah Bahasa Pemrograman, yang merupakan prosedur atau tata cara penulisan program. Sintaks dan semantik adalah dua faktor penting yang ada pada bahasa pemrograman. Fungsi daripada bahasa pemrograman itu sendiri adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrograman dengan komputer.
Secara umum terdapat 4 kelompok Bahasa Pemrograman, yaitu :
  1. Object Oriented Language (Visual dBase, Visual FoxPro, Delphi, Visual C)
  2. High Level Language (seperti Pascal dan Basic)
  3. Middle Level Language (seperti bahasa C), dan
  4. Low Level Language (seperti bahasa Assembly)
Ada 7 macam Tipe Pemrograman, yaitu :
  1. Pemrograman Prosedural
    Algoritma berisi urutan langkah-langkah penyelesaian masalah. Ini berarti algoritma adalah proses yang prosedural.
  2. Pemrograman Terstruktur
    Pemrograman terstruktur adalah bahasa pemrograman yang mendukung pembuatan program sebagai kumpulan prosedur. Bahasa pemrograman terstruktur adalah pemrograman yang mendukung abstraksi data, pengkodean terstruktur dan kontrol program terstruktur.
  3. Pemrograman Modular
    Pemrograman modular diterapkan dengan menggunakan sub-routine, yaitu sebuah kumpulan perintah yang melakukan tugas pemrosesan yang terbatas. Pemrograman ini banyak dimanfaatkan oleh Bahsa Pemrograman Berbasis Obyek.
  4. Pemrograman Fungsional
    Disebut bahsa pemrograman fungsional karena memang pada program seluruh kodenya berupa fungsi-fungsi. Bahasa pemrograman fungsional merupakan salah satu bahasa pemrograman yang memperlakukan proses komputasi sebagai evaluasifungsi-fungsi matematika.
  5. Pemrograman Berorientasi Obyek
    Merupakan bahasa pemrograman yang mampu memanfaatkan obyek-obyek yang tersedia atau membuat suatu obyek tertentu dengan menggunakan bahasa pemrograman. Bahasa pemrograman ini mampu merefleksikan kebutuhan-kebutuhan user sebagaimana layaknya yang ada di dunia nyata.
  6. Pemrograman Visual
    Dalam proses pemrograman digunakan ekspresi-ekspresi visual seperti grafik, gambar, atau ikon. Program ini mengacu pada aktivitas yang memungkinkan pengguna untuk membuat program dalam 2 (atau lebih) dimensi.
Kriteria Bahasa Pemrograman
Ada beberapa kriteria untuk pemenilaian suatu bahasa pemrograman, yaitu :
a. Clarity, simplycity dan unity
   Bahasa pemrograman harus dapat menolong programmer untuk membuat suatu desain
   program jauh sebelum programmer melakukan coding.
b. Orthogonality
    Orthogonality menunjuk kepada suatu atribut yang dapat dikombinasikan dengan
    beragam fitur bahasa pemrograman sehingga setiap kombinasinya mempunyai arti dan
    dapat digunakan.
c. Kewajaran untuk aplikasi
   Bahasa pemrograman membutuhkan sintaks yang tepat/cocok yang digunakan pada
   struktur program untuk merefleksikan struktur logika yang melandasi suatu algoritma.
d. Mendukung abstraksi
   Abstraksi merupakan suatu hal yang substansial bagi programmer untuk membuat suatu
   solusi dari masalah yang dihadapi, sehingga abstraksi tersebut dapat dengan mudah
   diimplementasikan menggunakan fitur-fitur yang ada dalam bahasa pemrograman.
e. Kemudahan untuk verifikasi program
    Kesederhanaa struktur semantik dan sintaks merupakan aspek primer yang
    mempengaruhi kesederhanaan verifikasi program.
f. Lingkungan pemrograman
    Bahasa pemrograman yang mempunyai lingkungan pemrograman yang baik dan lengkap
    akan memudahkan programmer untuk mengimplementasikan abstraksi yang sudah
    disusunnya.
g. Portabilitas program
   Salah satu kriteria penting untuk proyek pemrograman adalah kemudahan program yang
   yang sudah jadi untuk dipindah-pindahkan dari komputer yang digunakan untuk membuat
   dan mengembangkan ke komputer lain yang akan menggunakannya.
h. Biaya penggunaan
    Biaya merupakan elemen penting dalam mengevaluasi suatu bahasa pemrograman. Ada
    beberapa biaya yang dapat diukur, yaitu :
    - Biaya Eksekusi Program
    - Biaya Translasi / Kompilasi Program
    - Biaya Penciptaan, Testing dan Penggunaan Program
    - Biaya Pemeliharaan Program

2. Data
Data adalah bahan mentah yang akan diolah menjadi informasi sehingga dapat digunakan oleh user atau pemakai.
Ada beberapa tipe data, yaitu
1. Tipe Data Dasar, merupakan tipe data primitif yang tidak terstruktur yang didefinisikan oleh bahasa pemrograman.
Tipe data dasar dibagi menjadi lima bagian, yaitu :
   a. Tipe Data Numerik : Setiap bahasa pemrograman dapat dipastikan ada tipe data
       numerik yaitu untuk menyimpan data berupa angka.
       · Integer : merupakan bilangan bulat positif dan negative.
       · Real : merupakan bilangan decimal atau mantissa.
       · Subrange : merupakan sebuah subtype dari tipe integer dan terdiri dari urutan
         nilai-nilai integer dalam range yang terbatas.
       · Fixed-point real : bilangan ini dipresentasikan dengan urutan digit yang mempunyai
         panjang tetap dengan titik desimal diposisikan di tempat yang diberikan antara dua
         digit.
   b. Enumerasi : adalah suatu urutan list dari nilai-nilai yang berbeda.
   c. Boolean : tipe data untuk mempresentasikan True or False (biasa digunakan dalam
      penyeleksian kondisi)
   d. Character : berupa sebuah karakter yang ditulis diantara tanda petik tunggal atau
       ganda (‘ atau “) tergantung dari bahasa pemrograman yang digunakan.
   e. String : urutan-urutan dari karakter yang terletak diantara tanda petik tunggal atau
      ganda (‘ atau “)tergantung dari bahasa pemrograman yang digunakan.
   f. Internationalization : disebut l18N
2. Tipe Data Terstruktur, merupakan tipe data campuran dari berbagai tipe dasar.
    Contohnya : Array, record, string, list, dan file.
3. Tipe Data Didefinisikan Oleh Pemakai, tipe data ini disebut Enumerasi.
4. Tipe Data Petunjuk, contoh tipe data petunjuk adalah pointer.

3. Model Komputasi
Ada tiga model dasar komputasional, yaitu :
a. Model Fungsional, yaitu terdiri dari satu set nilai-nilai, fungsi-fungsi,dan operasi aplikasi fungsi dan komposisi fungsi. Fungsi dapat mengambil fungsi lain sebagai argumentasi dan mengembalikan fungsi sebagai hasil (higher-order function). Suatu program adalah koleksi definisi fungsi-fungsi dan suatu komputasi adalah aplikasi fungsi.
b. Model Logika, yaitu terdiri dari satu set nilai-nilai, definisi hubungan dan kesimpulan logis. Program terdiri dari definisi hubungan dan suatu komputasi adalah suatu bukti (suatu urutan kesimpulan).
c. Model Imperatif, terdiri dari satu set nilai-nilai yang mencakup suatu keadaandan operasi tugas untuk memodifikasi pernyataan. Pernyataan adalah set pasangan nilai-nama dari konstanta dan variabel. Program terdiri dari urutan tugas dan suatu komputasi terdiri dari urutan pernyataan.

4. Definisi Sintaks, Semantik, dan Pragmatis
Sintaks adalah aturan gramatikal atau komposisi suatu programyang mengatur tata cara penulisan huruf, angka dan karakter lain. Contoh : pada pembuatan program pascal antara dua statement dipisahkan oleh titik koma (;).
X:=1;X:=X+1;
 Semantik mendefinisikan arti dari program yang benar secara sintaks dari bahasa pemrograman tersebut. Contoh : pada pembuatan program C
Int Vector [10]
Arti semantiknya : akan menyebabkan ruang sebanyak 10 elemen integer diberikan kepada variabel bernama vector (0-9 untuk array dalam C).
sedangkan Pragmatis memperhatikan tentang pemakaian bahasa, area aplikasi, kemudahan implementasi dan penggunaan, dan sukses bahasa didalam desain pelaksanaan tujuannya. Kekuatan yang membentuk suatu bahasa pemrograman meliputi arsitektur komputer, praktek  rancang-bangun perangkat lunak (terutama daur hidup perangkat lunak), model komputasional, dan daerah aplikasi (contoh : alat penghubung pemakai, sistem pemrograman, dan sistem ahli).

5. Prinsip-prinsip Desain Bahasa Pemrograman
Prinsip Kelengkapan Komputasional, yaitu model komputasional untuk tujuan umum suatu bahasa pemrograman harus universal.
Prinsip Implementasi, implementasi harus efisien dalam penggunaan waktu dan ruangnya. Prinsip memprogram harus ditulis dalam suatu bahasa yang mencerminkan daerah masalah.

Referensi :
1. Modul Algoritma dan Pemrograman 1C
2. R. Sadgewick, Algorithms, Addison-Wsley, 2002.
3. Yay Singlemann, Bussines Programming Logic 2/e, Prentice Hall Engelwood Cliffs, New Jersey, 1982.
4. Clark, R, Comparative Programming Languages 3/e, Addison Wesley, 2001.
5. Bel, H. dan Grune, D., Programming Languages Essentials, Addison Wesley, 1994.
6. Sebest, R.W., Conceptss of Programming Languages 5/e, Addison Wesley, 2002.
7. Binanto, Iwan, Konsep Bahasa Pemrograman, Andi, Yogyakarta, 2005.

Tidak ada komentar:

Posting Komentar