Minggu, 23 Desember 2018

KONSEP BAHASA PEMROGRAMAN

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

Mahasiswa Yang Terlahir Ganteng Dan Menarik.


EmoticonEmoticon