I.
Konsep Dasar Pemrograman
Program dan
pemrogram
Apakah yang disebut program? program
adalah suatu kumpulan perintah yang disusun sedemikian rupa agar mempunyai
urutan nalar yang tepat untuk dapat menyelesaikan suatu masalah.
Pemrograman adalah suatu perintah
kekomputer untuk mengerjakan sesuatu dalam bentuk urutan dimana perintah itu
menggunakan bahasa pemrograman agar bisa dimengerti oleh komputer.
Bahasa
pemrograman adalah bahasa yang digunakan untuk memprogram komputer kesatuan
aturan sintaksis dan semantik yang di gunakan untuk mendefinisikan program.
Fungsi bahasa pemrograman adalah media untuk menyusun serta
alat komunikasi antara pemrogram dan komputer agar komputer dapat mengolah data
sesuai dengan alur berpikir yang kita inginkan.
Bahasa pemrograman dapat dikelompokan menjadi :
·
bahasa tingkat rendah (low level language) , contoh :
bahasa assembly (bahasa mesin)
·
bahasa tingkat menengah (Middle level language) ,
contoh : bahasa C
·
bahasa tingkat tinggi (high level language) , contoh :
pascal dan basic
·
Object Oriented Language , contoh : Virtual dBase,
Virtual FoxPro, Delphi, Visual C
Tipe pemrograman ada 7, yaitu :
1)
Pemrograman Prosedural
pemrograman prosedural adalah pemrograman
yang mendukung pembuatan program sebagai kumpulan prosedur, tahap-tahap, atau
metode langkah demi langkah secara eksak untuk menyelesaikan suatu masalah.
biasanya pemrograman prosedural menggunakan cobol, basic, pascal, fortran dan C
yang termasuk bahasa pemrograman tingkat tinggi.
2)
Pemrograman
Terstruktur
Bahasa pemrograman terstruktur adalah
pemrograman yang mendukung abstraksi data, pengkodean terstruktur dan kontrol
program terstruktur yang mendukung pembuatan program sebagai kumpulan prosedur.
Jadi pemrograman terstruktur adalah cara pemrosesan data yang
terstuktur. Terstruktur dalam: analisa, cara dan penulisan program. Biasanya
pemrograman terstruktur menggunakan bahasa pascal, cobol, RPG, ADA, C.
3)
Pemrograman Modular
Pemrograman modular adalah penyelesaian masalah yang dipecah
dahulu kedalam beberapa modul atau dalam kata lain persoalan yang kompleks dipecah dahulu menjadi
beberapa bagian agar lebih mudah diselesaikan. Intinya pemrograman modular yaitu memecah persoalan menjadi sub-sub persoalan yang biasa disebut subprogram.
4)
Pemrograman Fungsional
Pemrograman fungsional
adalah pemrograman yang semua kodenya menggunakan atau berupa fungsi-fungsi.
Atau dalam kata lain adalah bahasa pemrograman yang memperlakukan proses komputasi
sebagai evaluasi fungsi-fungsi matematika.
Contohnya adalah Lisp, Scheme, ML, Haskell.
5) Pemrograman
Berorientasi Obyek
Model data
berorientasi objek dapat memberi kemudahan mengubah program, dan digunakan luas
dalam teknik piranti lunak skala besar.
Konsep dasar dari Pemrograman Berorientasi Objek Pemrograman
orientasi-objek menekankan konsep berikut:
·
Kelas
kumpulan atas definisi data dan fungsi-fungsi
dalam suatu unit untuk suatu tujuan tertentu. Sebuah kelas adalah dasar dari
modularitas dan struktur dalam pemrograman berorientasi object. Kode yang
terdapat dalam sebuah kelas sebaiknya (relatif) bersifat mandiri dan
independen. Dengan modularitas, struktur dari sebuah program akan terkait
dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program
tersebut. Sehingga akan menyederhanakan pemetaan dari masalah ke sebuah program
ataupun sebaliknya.
·
Objek
Objek merupakan dasar dari modularitas
dan struktur dalam sebuah program komputer berorientasi objek yang membungkus
data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer.
·
Abstraksi
Abstraksi yaitu kemampuan untuk
memfokus pada inti. Proses, fungsi atau metode dapat juga dibuat abstrak, dan
beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan Setiap objek
abstrak dapat melakukan kerja, laporan dan perubahan keadaannya, dan
berkomunikasi dengan objek lain tanpa mengungkapkan bagaimana kelebihan ini
diterapkan.
·
Enkapsulasi
Memastikan pengguna sebuah objek
tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak
layak karena hanya metode dalam objek tersebut yang diberi izin untuk mengakses
keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek
lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan
tergantung kepada representasi dalam objek tersebut
6) Pemrograman
Visual
Visual
programming atau pemrograman visual adalah pembuatan program tanpa mengetik
segalanya dalam bentuk 'code'. Pemrograman secara visual dapat menghemat waktu
dan tenaga karena mudah dan 'code' yang dihasilkan dari design secara visual
sehingga mengurangi kemungkinan terjadinya kesalahan. Pemrograman visual dapat
mengacu aktivitas pengguna untuk membuat program dalam dua dimensi atau lebih.
7) Pemrograman
Even-Dreven
Pemrograman
Even-Dreven adalah pemrograman komputer yang berbasis paradigma pemrograman
di mana aliran program ditentukan oleh peristiwa. Yaitu output sensor
atau tindakan. Pemrograman event
driven jenis tertentu dari paradigma yang berfungsi sebagai hasil dari beberapa bentuk masukan. Masukan ini
dapat dari seseorang mengoperasikan
antarmuka komputer manusia atau juga dapat dipengaruhi oleh pesan dan perintah yang
diterima dari program lain komputer.
Kriteria Bahasa Pemrograman
Berikut
ini adalah kriteria untuk penilaian suatu bahasa pemrograman:
a) Clarity,
simplicity, dan unity
Kemudahan
dan kesederhanaan dalam bahasa pemrograman adalah kombinasi yang membantu
programmer untuk menjadikan algoritma yang dihasilkan kompleksitas yang rendah.
b) Orthogonality
Kriteria
ini adalah bahasa pemrograman yang mudah dipelajari sehingga program akan mudah
ditulis karena hanya ada sedikit expection dan case yang harus diingat.
Orthogonality dapat dikombinasikan dengan beragam fitur bahasa pemrograman
sehingga setiap kombinasinya akan mempunyai arti dan dapat digunakan. Dengan
demikian akan mendukung statmen kondisi untuk mendapatkan nilai true atau
false.
c) Kewajaran
untuk aplikasi
Setiap
bahasa pemrograman harus mempunyai operasi-operasi, struktur data, struktur
kontrol dan sintaks alami yang tepat untuk memecahkan suatu masalah guna
merefleksikan struktur logika yang melandasi suatu algoritma.
d) Mendukung
abstraksi
Abstraksi
dapat dengan mudah diimplementasikan menggunakan fitur-fitur yang ada dalam
bahasa pemrograman sehingga menjadi hal yang nyata bagi programmer untuk
membuat suatu solusi dari sebuah masalah.
e) Kemudahan
untuk verifikasi program
Verifikasi
program adalah hal yang penting bagi sebuah program agar dapat dengan mudah
dibangun dan dikembangkan. Kesederhanaan struktur semantik dan sintaks dapat
mempengaruhi kesederhanaan verifikasi program.
f) Lingkungan
pemrograman
Maksudnya
adalah bahasa program yang baik akan memudahkan programmer untuk menyelesaikan
suatu masalah atau abstraksi yang sudah disusun. Lingkungan pemrogram disini
maksudnya editor yang digunakan dokumentasi yang baik dari bahasa pemrograman,
user interface yang baik ataupun toolnya dapat memudahkan cara kerja
programmer.
g) Portabilitas
program
Maksudnya
adalah kemudahan untuk programmer agar bisa berpindah-pindah komputer agar bisa
lebih mengembangkan lagi cara kerjanya.
h) Biaya
penggunaan
Dalam
mengevaluasi suatu bahasa pemrograman dibutuhkan juga sebuah biaya, berikut ini
adalah biaya yang dapat diukur :
·
Biaya eksekusi program
·
Biaya translasi atau kompilasi program
·
Biaya penciptaan, testing dan penggunaan
program
·
Biaya pemeliharaan program
II.
DATA
Data
merupakan bahan mentah yang akan digunakan untuk diolah lagi menjadi sebuah
informasi sehingga user atau pemakai dapan menggunakannya.
Tipe data
merupakan bagian program yang paling penting karena tipe data mempengaruhi
setiap instruksi yang akan dilaksanakan oleh komputer. Dalam pembahasan ini tipe data dibagi menjadi 4, yaitu :
setiap instruksi yang akan dilaksanakan oleh komputer. Dalam pembahasan ini tipe data dibagi menjadi 4, yaitu :
a. Tipe data
dasar
Tipe data
dasar merupakan tipe data yang didefinisikan oleh bahasa pemrograman, tetapi
sifatnya tidak terstruktur.
Tipe data
dasar dibagi menjadi 5, yaitu :
A. Tipe data
numerik : menyimpan data berupa angka
·
Integer : type data angka-angka single
tanpa koma. biasanya integer di gunakan ketika kita mendefinisikan nilai
seperti waktu. Integer juga merupakan bilangan bulat positif dan negatif
·
Real : bilangan yang menggunakan nilai
pecahan
·
Subrange : berupa range dari suatu kumpulan data yang mempunyai
urutan
·
Fixed-point
real : nomor representasi tipe data nyata untuk angka
yang telah tetap dan jumlah digit
diletakan setelah (dan kadang-kadang
juga sebelumnya)
B. Enumerasi
: urutan list dari nilai yang berbeda
C. Boolean : dipakai
untuk menyatakan data logika, yaitu True (benar) dan False (salah)
D. Character
: digunakan untuk menyatakan karakter satu huruf
E. String
: dipakai untuk menyatakan sederetan karakter yang membentuk satu kesatuan atau
kalimat. Tipe data string bisa juga diisi karakter kosong atau satu karakter
b. Tipe data
terstruktur
Tipe data
terstruktur merupakan tipe campuran dari semua tipe data dasar
c. Tipe data
didefinisikan oleh pemakai
Maksudnya
adalah tipe data
subjangkauan (subrange) dan tipe data terenumerasi (enumerated)
d. Tipe data
penunjuk
Adalah
pointer. Tipe ini merupakan tipe data untuk suatu variabel, dimana isi
variabel ini berupa alamat variabel lain, dalam artian variabel pointer adalah
variabel yang menunjuk nilai atau alamat variabel lainnya .
III.
MODEL
KOMPUTASI
Ada tiga
model dasar komputasional , yaitu fungsional, logika dan imperatif.
a.
Model Fungsional : nilai-nilai, fungsi-fungsi dan
operasi aplikasi fungsi dan komposisi fungsi terdiri dari satu set. Fungsi dapat mengambil fungsi lain
sebagai argumentasi dan mengembalikan fungsi sebagai hasil (higher-order
function).
b.
Model logika : terdiri dari satu set nilai-nilai, arti dari hubungan dan kesimpulan yang logis. Program terdiri dari hubungan dan suatu
komputasi yang merupakan urutan dari kesimpulan.
c.
Model imperatif : terdiri dari satu set nilai-nilai. Semua sudah
termasuk dari keadaan dan operasi
tugas. Pernyataan adalah set pasangan nilai-nama dari konstanta dan variabel.
Program terdiri dari urutan tugas dan komputasi yang terdiri dari urutan pernyataan.
IV.
Definisi
Sintaks, Semantik dan Pragmatis
Sintaks : Sintaks
sebuah bahasa berhubungan dengan struktur bahasa. Sintaks sering disebut juga
komposisi untuk mengatur tata cara penulisan huruf, angka, dan karakter
lainnya.
Sebagai contoh, untuk membentuk sebuah kalimat
yang valid dalam bahasa kita memakai struktur: [subyek] + [kata kerja] + [kata
benda]. Dengan memakai struktur ini, kita bisa membentuk kalimat. Dalam
hubungannya dengan bahasa pemrograman, kita musti memenuhi sintaks (baca:
aturan struktur bahasa) agar program dapat berjalan. Sebagai contoh, dalam
bahasa BASIC, untuk mengassign sebuah variabel dengan sebuah nilai, kita
memakai operand ‘=’.
Semantik
: Semantik sebuah bahasa menggambarkan hubungan antara sintaks dan
model komputasi yang menjelaskan arti dari program.
Sebagai
contoh, Apabila kita memakai sintaks [subyek] + [kata kerja] + [kata benda],
kita bisa menghasilkan kalimat-kalimat.
Apabila kita mengasilkan kalimat Saya makan roti, maka kalimat ini memenuhi aturan sintaks. Tapi, apabila saya membuat kalimat Saya makan batu, secara sintaks kalimat ini sudah benar. Namun, secara semantik, kalimat ini tidak mengandung makna yang berarti.
Apabila kita mengasilkan kalimat Saya makan roti, maka kalimat ini memenuhi aturan sintaks. Tapi, apabila saya membuat kalimat Saya makan batu, secara sintaks kalimat ini sudah benar. Namun, secara semantik, kalimat ini tidak mengandung makna yang berarti.
Pragmatis
: untuk memudahkan dan memastikan
efisiensi dalam melakukan peng-coding-an.
V.
PRINSIP-PRINSIP Desain BAHASA PEMROGRAMAN
Prinsip
Kelengkapan Komputasional
Suatu bahasa
pemrograman harus bersifat universal.
Prinsip Implementasi
harus bisa menghemat waktu dan ruangnya. program harus ditulis dalam bahasa yang mencerminkan daerah suatu masalahnya.
Tidak ada komentar:
Posting Komentar