LAPORAN DASAR – DASAR PEMROGRAMAN ( Dasar Pemrograman, Sintaks Penulisan dan Contoh )

LAPORAN
DASAR – DASAR PEMROGRAMAN
( Dasar Pemrograman, Sintaks Penulisan dan Contoh )

A.   Pengertian
Pengertian Pemrograman
Ø Dasar Program adalah rangkaian instruksi-instruksi dalam bahasa komputer yang disusun secara logika dan sistematis.
Ø 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. 

B.  Konsep
Sebelum kita membuat suatu bahasa pemrograman, maka kita perlu mengetahui: 
1.    Pemahaman masalah
2.    Solusi masalah
3.    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.
Ø  Delphi, dll. 

Dalam pemrograman terdapat beberapa konsep pemrograman IPO yang dikembangkan diantaranya yaitu:
1.    Originating
Berhubungan dengan pengumpulan data yang biasanya merupakan pencatatan data kedokumen dasar. Setelah dikumpulkan dilakukan proses input.
2.    Input
Tahapan ini merupakan proses pemasukan data kedalam proses komputer melalui peralatan input.
3.    Proses
Tahap ini merupakan proses pengolahan data dari data yang sudah diinput berupa proses menghitung membandingkan, mengurutkan, mengklasifikasikan, mengendalikan dan mencari di storage.
4.    Output
Tahap ini merupakan proses untuk menghasilkan keluaran dari proses pengolahan data ke peralatan output berupa informasi (monitor, speaker, dsb)
5.    Distribution
Tahap ini merupakan proses penyebaran informasi kepada pihak-pihak yang berhak dan membutuhkan informasi.
6.    Storage
Tahap ini merupakan perekaman hasil pengolahan data storage yang nantinya dapat dipergunakan untuk input proses selanjutnya.
C.Tujuan
Di dalam pemrogram diperlukan suatu tujuan untuk pembuatan suatu program Tujuan tersebut diantaranya yaitu:
1.    Membuat solusi dari pemecahan kasus yang timbul.s
2.    Meningkatkan kualitas dan performance dari kinerja kerja.
3.    Membantu proses pengambilan keputusan.

D.Struktur Dasar Pemrograman Salah satu tahapan dari pengembangan suatu program adalah menterjemahkan atau mengkodekan rancangan terinci yang telah dibuat menjadi suatu program komputer yang siap pakai.


Ø  Beberapa karakteristik seorang pemrogram yang mempengaruhi suatu program yang dibuat adalah sbb:
1. Memiliki pol pikir yang logis.
2. Memiliki ketekunan dan ketelitian yang tinggi.
3. Memiliki penguasaan bahasa pemrograman yang baik.
4. Memiliki pengetahuan tentang teknik pemrograman yang baik.

Ø  Langkah-langkah pokok secara umum didalam membuat program komputer
1. Mendefinisikan masalah.
2. Membuat flowchart.
3. Membuat program.
4. Melakukan tes program.
5. Membuat dokumentasi program.

E.Tipe Pemrograman 
Tipe pemrograman ada 7 macam, yaitu : 
1.    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.

2.    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 :
a.  Pascal.
b.  Cobol.
c.  RPG.
d.  ADA.
e.  C. 

3.    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. 

4.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 :
a.    Lisp.
b.    Scheme.
c.    ML.
d.    Haskell. 
  
5.Pemrograman Berorientasi Obyek
Obyek yaitu elemen yang memiliki fungsi, metode, karakteristik tertentu yang dapat dibedakan dalam dunia nyata. Sedangkan Class yaitu 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. 

6.Pemrograman Visual
a.    Penggunaan ekspresi visual (seperti grafik, gambar, atau ikon) dalam proses pemrograman.
b.    Mengacu pada aktivitas yang memungkinkan pengguna untuk membuat program dalam dua (atau lebih) dimensi

  1. 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 :
a.    Visual Basic.
b.    Visual C++.
c.    Delphi.

F.Sintaks, Sematik, dan Pragmatis 
Pengertian:
1.    Sintaks yaitu Suatu bahasa dilakukan dengan menggunakan suatu notasi tata bahasa bebas konteks (context-free grammar) atau untuk memudahkan disebut tata bahasa saja.
2.    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; 
3.    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) 
4.    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. 

Suatu tata bahasa secara alamiah menerangkan struktur hirarki dari banyak bentuk bahasa pemrograman. Misalkan perintah if-else dari bahasa C mempunyai bentuk:
Ø  if (ekspresi) perintah else perintah
Ket :
Dalam hal ini suatu perintah adalah gabungan dari :
1.  kata kunci if
2.  kurung buka
3.  ekspresi
4.  kurung tutup
5.  perintah
6.  kata kunci else
7.  perintah lainnya
(Dalam bahasa C tidak ada kata kunci then).
Bila digunakan nama variabel expr untuk menyatakan suatu ekspresi dan variabel stmt untuk menyatakan suatu perintah, maka struktur aturan ini dapat dinyatakan sebagai berikut :
Ø  stmt ? if (expr) stmt else stmt
Ket:
? (tanda panah dibaca sebagai) “Dapat berbentuk suatu”.
Aturan diatas disebut juga suatu produksi (production). Dalam suatu produksi seperti ini unsur leksikal seperti kata kunci if dan tanda kurung “(“,”)” disebut suatu token. Variabel seperti expr dan stmt disebut dengan non-terminal.
Secara lengkap suatu tata bahasa bebas konteks dapat mempunyai 4 komponen berikut:
0>     Himpunan dari token yang dikenal dengan simbol token.
0>     Himpunan dari unsur non-terminal
0>     Himpunan dari produksi, di mana masing-masing produksi terdiri dari   unsur non-terminal (bagian kiri tanda panah dari suatu produksi). Bagian kanan produksi berupa ? (tanda panah) dan barisan dari token dan/atau non-terminal (sebelah kanan tanda panah).
0>     Salah satu unsur non-terminal yang telah ditentukan sebagai awal tata bahasa disebut sebagai simbol awal.
Aturan umum yang digunakan dalam menentukan suatu tata bahasa adalah dengan menuliskan produksi yang ada dengan dimulai dari produksi yang mengandung simbol awal. Terminal dapat berupa angka-angka, tanda-tanda seperti <=, dan rangkaian karakter yang ditulis huruf tebal seperti while dan lain-lainnya juga nama lain yang tidak dicetak miring. Non-teminal dapat berupa nama yang dicetak miring.
Untuk memudahkan penulisan, maka produksi yang mempunyai simbol non-teminal disebelah kiri yang sama bagian kanannya dapat dikelompokkan dengan menggunakan tanda “|” yang memisahkan pilihan bagian kanan yang ada. pengelompokkan seperti ini dapat dibaca sebagai “atau”
Ø  Contoh 1:
9-5+2, 3-1, 7 merupakan barisan dari angka-angka yang dipisahkan oleh
tanda ‘+’ atau ‘-’.
Tata bahasa berikut memberkan sintaks dari ekspresi-ekspresi di atas. Produksi yang ada adalah:
list ? list + digiT
list ? list – digit
list ? digit
digit ? 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Bagian kanan dari produksi untuk unsur non-terminal list
list ? list + digit
list ? list – digit
list ? digit
di bagian kiri dapat dikelompokkan menjadi 1 produksi yang setara, yaitu:
list ? list + digit | list – digit | digit
ü      Penulisan Produksi menjadi:
list ? list + digit | list – digit | digit
digit ? 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
ü      Token yang menjadi terminal digunakan adalah simbol +,-,0,1,2,3,4,5,6,7,8,9
0>     Sedangkan unsur non-terminal adalah nama-nama yang digaris miring seperti list dan digit
0>     Simbol Awal adalah produksi non-terminal list
Suatu unsur non-terminal dapat merupakan suatu produksi bila unsur non-terminal tersebut timbul dibagian kiri dari produksi. Barisan token adalah barisan dari nol atau lebih token. Unsur yang mengandung nol token ditulis sebagai ?, dan disebut dengan nama barisan kosong. Suatu bahasa diperoleh dari :
a.   Barisan-barisan yang dimulai dari simbol awal.
b.  Bagian kanan yang masih berupa non-terminal (bukan token/terminal) dari produksi dapat diganti dengan mencari acuan pada bagian kiri dari produksi yang ada dengan non-terminal yang sama.
c.   Mengganti unsur non-terminal pada bagian kiri produksi dengan bagian kanan dari produksi non-terminal tersebut.
d.  Barisan token pada bagian kanan produksi yang menjadi pengganti unsur non terminal acuan pada bagian kiri produksi merupakan akhir dalam pembentukan bahasa.

Ø  Contoh 2:
Bahasa yang didefinisikan oleh tata bahasa pada contoh 1 terdiri dari barisan angkaangka yang dipisahkan oleh tanda ‘-’ atau ‘+’.
Kesepuluh produksi dari unsur nonterminal digit (digit ? 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9) dapat digunakan sebagai penganti token-token yang berhubungan dengan angka yaitu 0,1,2,3,4,5,6,7,8,9 dari produksi list ? digit, maka dapat dikatakan bahwa 1 angka yang berdiri sendiri adalah suatu list juga, yaitu :
Pada produksi list ? digit
0 merupakan bahasa yang dibentuk list
1 merupakan bahasa yang dibentuk list
2 merupakan bahasa yang dibentuk list
3 merupakan bahasa yang dibentuk list
4 merupakan bahasa yang dibentuk list
5 merupakan bahasa yang dibentuk list
6 merupakan bahasa yang dibentuk list
7 merupakan bahasa yang dibentuk list
8 merupakan bahasa yang dibentuk list
9 merupakan bahasa yang dibentuk list
Pada produksi lainnya
list ? list + digit
list ? list – digit
Menyatakan bahwa list yang diikuti oleh tanda ‘+’ atau ‘-’ dan diikuti oleh list akan membentuk suatu list baru.
Ternyata semua produksi yang digunakan pada contoh 1 adalah produksi-produksi yang diperlukan untuk dapat mendefinisikan bahasa yang diinginkan untuk ekspresi 9-5+2, 31, 7
9-5+2 merupakan salah satu anggota dari bahasa yang dibentuk list, dimana list adalah simbol awal. Hal ini dapat ditunjukkan sebagai berikut:
ü      9 merupakan list dari produksi “list ? digit” dimana digit membentuk 9 pada
“digit ? 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9″ atau secara terpisah menjadi
digit ? 0
digit ? 1
digit ? 2
digit ? 3
digit ? 4
digit ? 5
digit ? 6
digit ? 7
digit ? 8
digit ? 9.
0>      9-5 merupakan list dari produksi “list ? list – digit” dimana 9 sudah berupa list dan digit membentuk 5 pada “digit ? 5″.
0>    9-5+2 merupakan list dari produksi “list ? list + digit” = (9-5) + 2. Dimana 9-5 sudah berupa list dan digit membentuk 2 pada “digit ? 2″.
Hal ini dapat dilihat pada gambar 1 berikut ini
Gambar 1 Pohon urai dari ekspresi 9-5+2 menurut tata bahasa contoh 1
Pada gambar ini setiap nodal (titik pertemuan antar garis) pada pohon urai diberi label salah satu simbol tata bahasa.
Nodal dalam (internal node / nodal di atas nodal yang lain) dan anak-anaknya (nodal yang terletak di bawah nodal dalam) berhubungan dengan suatu produksi.
Nodal dalam berhubungan dengan bagian kiri dari produksi, sedangkan anak-anaknya berhubungan dengan bagian kanan dari produksi yang sama.
Pohon demikian disebut pohon urai dari ekspresi yang diberikan.

Komentar