KONSEP BAHASA PEMROGRAMAN
PROGRAM Adalah Merupakan himpunan atau kumpulan instruksi tertulis yang dibuat oleh
programmer atau suatu bagian 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 dikenal
dengan bahasa pemrograman.
BAHASA Adalah suatu kumpulan symbol-simbol atomic yang terbatas
ALPHABET Adalah kumpulan symbol.
Untaian symbol ditulis secara berurutan dari satu ke yang lain setelahnya.
KATA/KALIMAT : untaian yang menjadi bagian dari suatu bahasa
BAHASA PEMROGRAMAN : bahasa yang dimengerti komputer dan mempengaruhi cara dan teknik pemrograman
Secara umum terdapat 4 kelompok bahasa pemrograman, yaitu :
1. Object Oriented language (visual dBase, visual FoxPro, Delphi, visual C)
2. High Level language (Pascal, Basic)
3. Middle Level Language (Bahasa C)
4. Low level language (Assembler)
Cara dan teknik pemrograman :
1. Pemrograman Procedural
Suatu instruksi khusus yang dieksekusi secara berurutan, triknya adalah mengingat procedure mana yang sudah di panggil dan data apa yang sudah diubah.
2. Pemrograman Functional
Berdasarkan teori fungsi matematika
3. Pemrograman Terstruktur
Merupakan suatu teknik memecah masalah besar menjadi lebih kecil dan lebih mudah dipahami. Bahasa yang mendukung program ini adalah : bahasa C
4. Pemrograman Berbasis modul
Program, ini mempunyai banyak modul, masing-masing modul merupakan suatu grup dari entitas variable, procedure, atau fungsi. Pendukung program ini adalah MODULA-2 dan ADA
5. Pemrograman Berorientasi Objek
Pemrograman computer menjadi lebih interaktif. Contohnya pemakai mengklik suatu tombol menu dilayar monitor atau dengan keyboard
C/: C++, Small talks, Java
6. Pemrograman Declarative
Mendeskripsikan suatu masalah dengan pernyataan (declarative) daripada memecahkan masalah dengan implementasi algoritma.
Pemrogramanyang dibutuhkan adalah bahasa :
- pemrograman logika : PROLOG
- pemrograman berbasis aturan : OPS5 dan CLIPS
7. Pemrograman Visual
- penggunssn ekspresi visual (spt grafik, gambar, icon) dalam proses pemrograman
- mengacu pada aktivitas yang memungkinkan pengguna untuk membuat program dalam dua (atau lebih) dimensi
8. Pemrograman Even-Driven
Menggunakan konsep “jika sebuah aksi/perintah dilakukan terhadap sebuah obyek, apa yang akan terjaadi/dilakukan
oleh sebuah obyek tersebut selanjutnya”.
C/: Visual Basic, Visual C++, Delphi
Pada awalnya kebutuhan computer adalah untuk :
- perhitungan numeric : FORTRAN
- untuk bisnis : COBOL
- pengembangan kecerdasan buatan : LISP dan PROLOG
- pengembangan system, terutama system operasi computer : C
Kriteria / prinsip Desain Bahasa Pemrograman :
1. Clarity, simplicity, unity
Bahasa pemrograman harus dapat menolong programmer membuat suatu design program jauh sebelum programmer melakukan coding
2. Orthogonality
Menunjukkan kepada suatu atribut yang dapat dikombinasikan dengan beragam fitur bahasa pemrograman sehingga tiap kombinasi mempunyai arti dan dapat digunakan.
3. Kewajaran untuk aplikasi
Bahasa pemrograman membutuhkan syntax yang tepat, digunakan pada struktur program untuk merefleksikan struktur logika yang melandasi suatu algoritma.
Bahasa pemrograman harus mempunyai struktur data, operas-operasi, struktur control, syntax alami yang tepat untuk memecahkan masalah dan di design untuk kebutuhan tertentu.
C/: PROLOG → untuk keperluan deduksi
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 dapat dengan mudah diimplementasikan dengan fitur-fitur yang ada dalam bahasa pemrograman.
5. Kemudahan untuk Verifikasi Program
Verifikasi Program merupakan hal penting bagi sebuah program karena dengan verifikasi yang mudah maka suatu program akan mudah dibangun dan dikembangkan
6. Lingkungan Pemrograman
Bahasa pemrograman mempunyai lingkungan pemrograman yang baik da lengkap akan memudahkan programmer mengimplementasikan abstraksi yang sudah disusun.
7. Portabilitas Program
Criteria penting untuk proyek pemrograman adalah kemudahan program yang sudah jadi untuk dipindah-pindahkan dari computer yang digunakan untuk membuat dan mengembangkan ke computer lain yang akan menggunakannya
8. Biaya penggunaan
Biaya merupakan elemen penting dalam mengevaluasi auatu bahasa pemrograman
Tahap Pengembangan Program
DATA : bahan mentah yang akan diolah menjadi informasi sehingga dapat dipergunakan
oleh user atau pemakai
TIPE DATA : Merupakan suatu kelas dari objek data dengan kumpulan operasi untuk
membentuk dan memanipulasinya.
Bahasa pemrograman mempunyai :
- kumpulan tipe data primitive yang sudah di built in
- fasilitas supaya programmer dapat mendefinisikan tipe data baru
Perbedaan pokok bahasa pemrograman lama ( FORTRAN, COBOL ) dengan yang baru ( C, C++, ADA ) adalah pembuatan tipe data baru (Programmer-defined data types).
Objek data dasar terdiri dari nilai data tunggal.
TIPE DATA YANG BIASA DIGUNAKAN ADALAH :
1. TIPE DATA DASAR merupakan :
- tipe data primitive yg tidak terstruktur yg didefinisikan o/ bahasa pemrograman
- Kelas dari objek data, dimana banyak operasi yg terlibat didalamnya,
Tipe-tipe data dasar : numerik, character, Boolean, enumerasi, internazionalization.
Numerik
Tipe-tipe data Numerik yaitu :
a. Integer (bilangan bulat positif dan negative)
Kumpulan nilai integer dalam suatu bahasa pemrograman merupakan bilangan terbatas dan merupakan himpunan bagian dari suatu integer yang tidak terbatas dalam perhitungan matematika. Keterbatasan ini disebabkan o/ hardware computer yang melandasinya.
C/ : Bahasa C : nilai maksimum integer positif (unsigned) 65535
Integer bertanda (signed) -32768 sampai 32767
Java : integer byte bernilai -128 sampai 127
Operasi-operasi yang digunakan :
- Operasi Aritmatika
Operator
|
Maksud
|
Jenjang
|
(
)
^atau
↑
* dan /
\
MOD
+
dan -
|
Kurung
pemisah
Pangkat
Perkalian
& Pembagian
Pembagian
dg hasil bulat
Modulus/sisa
pembagian
Pertambahan
& pengurangan
|
1
2
3
4
5
6
|
- Operasi Relational
Operasi
|
Arti
|
<
>
<=
>=
<>
=
|
Lebih
kecil dari
Lebih
besar dari
Lebih
kecil sama dengan dari
Lebih
besar sama dengan dari
Tidak
sama dengan
Sama
dengan
|
- Assignment
Assignment antara objek data integer dapat berbentuk salah satu dari 2 bentuk berikut :
Assignment:integer x integer → void
Assignment:integer x integer→ integer
- Operasi Bit
Dlm bahasa pemrograman dengan tipe data primitive yang sedikit, integer mempunyai banyak peran
b. Subrange
Suatu subrange dari tipe data integer merupakan sebuah subtype dari tipe data integer dan terdiri dari urutan nilai-nilai integer dalam range 1 sampai 10 atau -10sampai 5
C/: Dalam bentuk Bahasa Pascal X:1..10
Bahasa ADA X:integer range 1..10
c. Fixed Point real :
direpresentasikan dengan urutan digit yang mempunyai panjang tetap dengan titik decimal diposisikan ditempat yang diberikan antara 2 digit
Enumerasi
Adalah suatu urutan list dari nilai-nilai yang berbeda. Programmer mendefinisikan nama literal yang akan digunakan sebagai nilai dan urutannya.
Digunakan ketika suatu variable hanya membutuhkan nilai-nilai tertentu dan terbatas.
C/: Variabel KelasMhs mempunyai 3 nilai : “Baru”, “Yunior”, “Senior”
Variabel JenisKel mempunyai 2 nilai : “Laki-laki”, “Perempuan”
Dalam bahasa C, enumerasi dideklarasikan sbb:
Enum KelasMhs {Baru, Yunior, Senior};
Enum JenisKel {Laki_laki, Perempuan};
Boolean/Logical
Sebagian besar bahasa pemrograman menyediakan tipe data untuk merepresentasikan TRUE (1) dan FALSE (0). Biasanya digunakan untuk menunjukkan hubungan logika antara 2 elemen
Operatornya :
Operator Logika NOT Operator Logika AND dan OR
A
|
NOT
A
|
A
|
B
|
A
AND B
|
A
OR B
|
|
1
0
|
0
1
|
1
1
0
0
|
1
0
1
0
|
1
0
0
0
|
1
1
1
0
|
C/: di pemrograman pascal dan ADA, Boolean dianggap sebagai enumerasi :
Type Boolean = (false, true) dimana false<true
Character
Tipe data yang di input ke computer dalam bentuk char. Bahasa pemrograman menyediakan fasilitas konversi karakter ke tipe data lain selama proses input dan output.
Internazionalization disebut I18N
2. TIPE DATA TERSTRUKTUR
Merupakan tipe data campuran dari berbagai tipe data dasar
C/: Array, record, string, list, file
3. TIPE DATA DIDEFINISIKAN OLEH PEMAKAI disebut : Enumerasi
4. TIPE DATA PENUNJUK, C/: Pointer
STANDAR PROGRAM YANG BAIK
Standar pemprograman dibutuhkan untuk :
- menciptakan suatu program yang baik dan memiliki portabilitas tinggi
- memudahkan dalam merancang dan merawat program
- meningkatkan efektifitas penggunaan peralatan computer.
Untuk menentukan standar program yang baik dibutuhkan :
a. pemecahan masalah
b. penyusunan program
c. perawatan program
d. standar prosedur
STANDAR PENYUSUNAN PROGRAM
Beberapa kriteria yang harus diperhatikan oleh seorang programmer dalam menyusun program :
kebenaran logika dan penulisan
Program yang disusun harus memiliki :
- Kebenaran logika pemecahan masalah dan penulisan
- Ketepatan, ketelitian dan kebenaran dalam perhitungan
Waktu minimum untuk penulisan program
Dalam menulis program, pemrogram harus dapat menentukan waktu minimum penulisan programnya secara wajar dari awal hingga siap di operasikan
Kecepatan maksimum eksekusi program
Beberapa factor untuk dapat menghasilkan program yang memiliki kecepatan eksekusi maksimum :
- bahasa pemrograman yang digunakan (basis interpreter atau compiler)
- algoritma yang disusun
- teknik pemrograman yang diterapkan
- perangkat keras yang digunakan untuk mengoperasikannya
- memperbaiki struktur program, missal dalam proses pengujian. Hindari pengujian yang berulang-ulang
User friendly
Program disusun harus memiliki fasilitas-fasilitas yang memberi kemudahan bagi pemakai untuk mengoperasikannya, yaitu dgn menambah fasilitas online help u/ memberi penjelasan jika terjadi kesulitan, menu pilihan, tampilan yang informative, pesan-pesan yang sederhana dan singkat sehingga mudah dipahami.
Portability
Diusahakan agar program yang disusun dapat dioperasikan dengan berbagai jenis system operasi dan hardware
yang berbeda, sehingga fleksibel u/ digunakan
MEMBANGUN PROGRAM
Bila masalah yang dihadapi oleh seorang pemrogram sangat besar dan komplek, maka dibutuhkan tahapan-tahapan dalam membangun programnya agar diperoleh program yang baik agar dapat menyelesaikan pekerjaannya secara sistematis.
Tahapan untuk membangun satu program yang besar dan kompleks adalah :
• Definisi masalah
• Analisis kebutuhan
• Teknik pemecahan masalah dan algoritma
• Pengkodean
• Testing dan debugging
• Pemeliharaan
• Dokumentasi
Tahapan untuk memecahkan masalah yang sederhana adalah :
• Identifikasi masalah
• Menentukan input
• Proses dan output yang diinginkan
• Menentukan algoritma
• Mengimplementasikannya dengan suatu bahasa pemrograman tertentu
• Melakukan testing
MODEL KOMPUTASI
Adalah : suatu kumpulan dari nilai dan operasi-operasi
3 dasar model komputasi :
1. Model Fungsional : model perhitungan yang fungsional terdiri dari satu set nilai-nilai, fungsi dan operasi
aplikasi, fungsi dan komposisi fungsi
2. Model Logika : logika model perhitungan terdiri dari suatu set nilai-nilai, definisi hubungan dan kesimpulan logis
3. Model Imperative : model perhitungan yang imperative terdiri dari satu set nilai-
nilai yang mencakup suatu status dan operasi tuga-tugas
untuk memodifikasi status tsb
DEFINISI SINTAKS, SEMANTIK DAN PRAGMATIS
SINTAKS :
Aturan gramatikal/komposisi suatu program yang mengatur tatacara penulisan huruf, angka dan karakter lain
C/: pada Pascal, 2 statement dipisahkan oleh “ ; “ (titik koma) → x:=1; x:=x+1;
Mengatur tiap kurung buka harus ada kurung tutup → PRINT (A,B);
SEMANTIK :
Mendefinisikan arti dari program yang benar secara sintaks dari bahasa pemrograman tersebut
C/: pada program C → int vector[10];
Artinya deklarasi menyebabkan ruang sebanyak 10 elemen integer diberikan kepada variable bernama vector,
Dengan elemen dari 0-9
PRAGMATIS :
Menguraikan derajat tingkat sukses dengan suatu bahasa pemrograman kepada model perhitungan dalam kegunaannya untuk para programmer
EmoticonEmoticon