Konsep
Dasar Pemrograman
Sebelum kita membuat suatu
bahasa pemrograman, maka kita perlu mengetahui:
- Pemahaman masalah
- Solusi masalah
- Pemahaman tata bahasa (sintaks) bahasa
pemrograman
Baru setelah itu dapat kita
buat pemrograman, memakai bahasa pemrograman yang menurut kita paling sesuai
menurut kebutuhan.
Contoh : Pascal, Cobol, untuk
bisnis, Delphi , dll.
Program merupakan himpunan atau
kumpulan instruksi yang dibuat oleh programmer atau suatu executable dari suatu software.
Pemrograman adalah suatu kumpulan urutan
perintah ke komputer untuk mengerjakan sesuatu, dimana instruksi tersebut
menggunakan bahasa yang dimengerti oleh komputer atau yang dikenal dengan
bahasa pemrograman.
Bahasa Pemrograman merupakan prosedur atau tata cara
penulisan program. Pada bahasa pemrograman terdapat dua factor penting, yaitu
sintaks dan semantik.
Fungsi Bahasa Pemrograman adalah sebagai media untuk
menyusun dan memahami serta sebagai alat komunikasi antara pemrogram 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)
Tipe Pemrograman ada 7 macam, yaitu :
- Pemrograman
Prosedural
Algoritma
berisi urutan langkah-langkah penyelesaian masalah. Ini berarti algoritma
adalah proses yang prosedural.
Definisi
prosedural adalah :
a.
Tahap-tahap kegiatan untuk menyelesaikan suatu aktivitas
b.
Metode langkah demi langkah secara eksak dalam memecahkan suatu
masalah.
Bahasa
tingkat tinggi seperti Cobol, Basic, Pascal, Fortran dan C mendukung kegiatan
pemrograman prosedural, karena itu mereka dinamakan juga bahasa prosedural.
- Pemrograman
Terstruktur
Pemrograman
terstruktur adalah bahasa pemrograman yang mendukung pembuatan program sebagai
kumpulan prosedur. Prosedur-prosedur ini dapat saling memanggil dan dipanggil
dari manapun dalam program dan dapat mengunakan parameter yang berbeda-beda
untuk setiap pemanggilan. Bahasa pemrograman terstruktur adalah pemrograman
yang mendukung abstraksi data, pengkodean terstruktur dan kontrol program
terstruktur.
Contoh
bahasa pemrograman terstruktur : Pascal, Cobol, RPG, ADA , C.
- Pemrograman
Modular
Dalam
pemrograman modular, program dipecah-pecah ke dalam modul-modul, dimana setiap
modul menunjukkan fungsi dan tugas tunggal. Dengan membagi masalah ke dalam modul-modul,
maka masalah akan menjadi sederhana sehingga program dapat lebih mudah disusun dan
dipahami.
Pemrograman
modular diterapkan dengan menggunakan sub-routine, yaitu sebuah kumpulan
perintah yang melakukan tugas pemrosesan yang terbatas. Pemrograman ini banyak
dimanfaatkan oleh Bahasa Pemrograman Berbasis Obyek.
- Pemrograman
Fungsional
Disebut
bahasa pemrograman fungsional karena memang pada program seluruh kodenya berupa
fungsi-fungsi. Bahasa pemrograman fungsional merupakan salah satu bahasa
pemrograman yang memperlakukan proses komputasi sebagai evaluasi fungsi-fungsi
matematika.
Contoh
: Lisp, Scheme, ML, Haskell.
- Pemrograman
Berorientasi Obyek
Obyek
: elemen yang memiliki fungsi, metode, karakteristik tertentu yang dapat dibedakan
dalam dunia nyata.
Class
: kumpulan obyek-obyek yang memiliki kesamaan karakteristik.
- Merupakan bahasa pemrograman yang
mampu memanfaatkan obyek-obyek yang tersedia atau membuat suatu obyek
tertentu dengan menggunakan bahasa pemrograman.
- Mampu merefleksikan
kebutuhan-kebutuhan user sebagaimana layaknya yang ada di dunia nyata
- Relatif lebih fleksibel dan mudah
diadaptasikan terhadap perubahan suatu program
- Memiliki feature yang memperkuat dan
meningkatkan fleksibilitas suatu obyek dengan adanya class, instance,
encapsulation, inheritance, reusability, dan polymorphism.
Contoh
: C++, SmallTalks, Java.
- Pemrograman
Visual
- Penggunaan ekspresi visual (seperti
grafik, gambar, atau ikon) dalam proses pemrograman
- Mengacu pada aktivitas yang
memungkinkan pengguna untuk membuat program dalam dua (atau lebih)
dimensi
- Pemrograman
Even-Driven
Menggunakan
konsep “jika sebuah aksi/perintah dilakukan terhadap sebuah obyek, apa yang
akan terjadi/dilakukan oleh obyek tersebut selanjutnya”.
Sangat
fleksibel dalam pembuatan koding program, karena sudah mengunakan konsep OOP
dimana pemrograman dapat dimulai dari obyek yang diinginkan tanpa harus
terurut. Biasanya meruapakan jenis bahasa pemrograman visual.
Contoh : Visual Basic, Visual C++, Delphi .
Tahap Pengembangan Program
Data
Data : bahan mentah yang akan diolah menjadi informasi sehingga
dapat digunakan oleh user atau pemakai.
Tipe data yang biasa digunakan
adalah :
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 negatif
·
Real
: merupakan bilangan desimal atau mantissa
·
Subrange
: merupakan sebuah subtype dari tipe data integer dan terdiri
dari urutan nilai-nilai integer dalam range yang terbatas
·
Fixed-point
real : bilangan ini direpresentasikan 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 merepresentasikan True atau 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 I 18N
2. Tipe Data Terstruktur : merupakan tipe data campuran dari
berbagai tipe data dasar, contohnya : array, record, string, list dan file.
3. Tipe data didefinisikan oleh pemakai : tipe data ini biasa
disebut Enumerasi
4. Tipe Data Penunjuk : contoh tipe data penunjuk adalah pointer
Model
Komputasi
a. Model Fungsional : 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 : 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 keadaan dan 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.
Definisi
Sintaks, Sematik, dan Pragmatis
Sintaks
: aturan gramatikal atau komposisi suatu program yang 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 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)
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 pemprograman, dan
sistem ahli).
Tujuan umum
bahasa pemrograman berpegang pada prinsip desain bahasa pemrograman yang
berikut.
Prinsip Kelengkapan Komputasional
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.
Prinsip
Desain Bahasa pemrograman
Suatu bahasa
program harus dirancang untuk memudahkan agar dapat dibaca dan ditulis untuk
para pemakai manusianya dan pelaksanaan efisien pada perangkat keras yang
tersedia.
Keadaan
dapat dibaca dan ditulis dimudahkan oleh prinsip yang berikut.
Prinsip Kesederhanaan
Bahasa harus
didasarkan atas yang paling sedikit
Prinsip Orthogonal
Fungsi
mandiri harus dikendalikan oleh mekanisme mandiri.
Prinsip Keteraturan
Satu set
object disebut reguler berkenaan dengan kondisi beberapa jika, dan hanya jika,
kondisi dapat digunakan untuk masing-masing unsur set.
Prinsip Sifat Ekstensibilitas(dapat diperpanjang)
Object baru
dari tiap kelas sintaktis mungkin dibangun (digambarkan) dari dasar dan
digambarkan membangun dengan suatu cara sistematis.
Prinsip
keteraturan dan ekstensibilitas memerlukan konsep dasar bahasa harus diterapkan
secara konsisten dan yang bersifat universal.
Pada halaman
berikut kita akan belajar bahasa pemrograman sebagai perwujudan model komputasional,
ilmu semantik sebagai hubungan antara model komputasional dan sintaksis, dan
berhubungan pragmatis.
Prinsip 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 suatu
algoritma sehingga algoritma yang dihasilkan mempunyai kompleksitas yang
rendah.
Orthogonality
Orthogonality menunjuk kepada
suatu atribut yang dapat dikombinasikan dengan beragam fitur bahasa pemrograman
sehingga setiap kombinasinya mempunyai arti dan dapat digunakan.
Kewajaran untuk Aplikasi
Bahasa pemrograman membutuhkan
sintaks yang cocok/tepat yang digunakan pada struktur program untuk
merefleksikan struktur logika yang melandasi suatu algoritma.
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.
Kemudahan untuk Verifikasi Program
Verifikasi program merupakan
hal penting bagi sebuah program karena dengan verifikasi yang mudah maka satu
program akan dengan mudah dibangun dan dikembangkan.
Lingkungan Pemrograman
Bahasa pemrograman yang
mempunyai lingkungan pemrograman yang baik dan lengkap akan memudahkan
programmer untuk mengimplementasikan abstraksi yang sudah disusunnya.
Portabilitas Program
Salah satu kriteria penting
untuk proyek pemrograman adalah kemudahan program yang sudah jadi untuk
dipindah-pindahkan dari komputer yang digunakan untuk membuat dan mengembangkan
ke komputer lain yang akan menggunakannya.
Biaya Penggunaan
Biaya merupakan elemen penting
dalam mengevaluasi suatu bahasa pemrograman.
- Biaya Eksekusi Program
- Biaya Translasi/kompilasi Program
- Biaya Penciptaan, Testing dan
Penggunaan Program
- Biaya Pemeliharaan Program
sumber : ebook
No comments :
Post a Comment
Tinggalkan komentar tentang blog ini dan artikel artikelnya, semoga blog ini bisa bermanfaat bagi kita semua, amin :D