P 6 Program vs Pemrograman

Pengantar Pemrograman
Rinta Kridalukmana

Program vs Pemrograman
° Komputer  mengeksekusi program

Program
• Instruksi 1
• Instruksi 2
• Instruksi 3
• ….

Program memiliki satu atau
lebih instruksi yang akan
dikerjakan oleh komputer
dengan menggunakan
sumber daya yang
dimilikinya sesuai dengan
kebutuhan dari tiap instruksi
program


• Instruksi n
Program dapat juga
dikatakan sebagai daftar
instruksi yang harus diikuti
komputer untuk
memproses data menjadi
informasi
2

Program vs Pemrograman
° Langkah untuk menciptakan daftar instruksi yang dapat
dibaca dan dikerjakan oleh komputer
° Dimulai dari tahapan-tahapan :
• mendefinisikan masalah
• mendesain solusi
• coding
• uji program
• dokumentasi program

3


Problem Definition
° Perlu diketahui terlebih dahulu :
• apa tujuan dilakukan pemrograman
• siapa pengguna program nantinya
° Untuk :
• memastikan alur proses pada pemrograman benarbenar dapat merepresentasikan dengan tepat alur
proses pada organisasi yang sebenarnya
• mengklarifikasi output yang diingingkan dari hasil
pemrograman
Permasalahan perlu dikaji apakah program yang akan dikerjakan layak
untuk diimplementasikan dengan mempertimbangkan biaya, mutu, dan
waktu pengerjaannya
4

Mendesain Solusi
° Adalah suatu aktifitas memodelkan permasalahan yang
sebenarnya ke dalam suatu model yang dapat
diterjemahkan ke dalam bentuk pemrograman
° Bisa menggunakan top down approach

° Ketika sudah diketahui detail terendah program desain
detail dengan pseudocode atau diagram alur
• Pseudocode :
-

metode mendesain untuk suatu program dengan
menggunakan bahasa manusia untuk mendeskripsikan
logika dan aliran proses (dengan menggunakan statemen
if – then – else)

• Diagram alur :
-

adalah bagan yang secara grafis menampilkan rangkaian
langkah detail untuk memecahkan masalah
5

Mendesain Solusi
Contoh Diagram Alur


6

Mendesain Solusi
Contoh Pseudocode

7

Menulis Program
° Disebut juga dengan coding
° Yaitu menterjemahkan persyaratan logika dari
pseudocode atau diagram alur ke dalam suatu bahasa
pemrograman
• Perlu dipilih dulu bahasa pemrograman tingkat
tinggi yang ingin digunakan
• Menulis program harus sesuai dengan aturan
bahasa tingkat tinggi yang dipilih
• Aturan ini disebut dengan sintaks

8


Uji Program
° Untuk memastikan apakah program berjalan dengan
baik
° Ada beberapa aktifitas pengujian yang dapat dilakukan:
• Desk Checking
-

membaca dan memeriksa program untuk memastikan
program bebas kesalahan dan logika pemrograman
berjalan dengan baik

• Debug Program
-

mendeteksi, menempatkan dan memindahkan kesalahan
pada sebuah program komputer. Kesalahan pada debug
program ini dapat berupa sintaks yang salah atau logika
program yang salah

• Menjalankan data sebenarnya

° Desk Checking dan Debug program biasa juga disebut dengan
pengujian alpha. Sedangkan yang lain disebut dengan pengujian
beta
9

Dokumentasi Program
° Berguna baik untuk owner program atau pengguna.
° Dokumentasi ini dapat dibuat untuk :
• Pengguna
• Operator
• Programmer
• Pemeliharaan program.
° Bila program dibuat dengan dokumentasi yang jelas,
maka akan sangat efektif bila program akan
dikembangkan oleh developer program yang lain.
° Selain itu, pengguna atau operator juga memiliki
panduan yang jelas bagaimana menangani perilaku
program dalam penggunaannya dan menggunakan
program dengan baik
10


Generasi Bahasa Pemrograman

11

Bahasa Generasi Pertama
° Bahasa generasi pertama ini dikenal juga dengan
nama bahasa mesin
° Berisi kode-kode mesin yang hanya dapat
diinterpretasikan langsung oleh mesin komputer.
° Bahasa ini merupakan bahasa level terendah dan
berupa kode numerik 0 dan 1.
° Program bahasa mesin ini berbeda-beda antara satu
komputer dengan komputer yang lain, sehingga benarbenar tergantung pada mesin yang digunakan

12

Bahasa Generasi Kedua
° Merupakan bahasa simbol dari bahasa mesin.
° Setiap kode bahasa mesin memiliki simbol sendiri

dalam bahasa assembly.
° Bahasa pemrograman ini merupakan bahasa level
rendah yang dipakai oleh seorang programmer untuk
menulis program dengan menggunakan singkatan atau
kata yang lebih mudah diingat daripada angka.
• ADD untuk penjumlahan
• MUL untuk perkalian
• SUB untuk pengurangan
° Namun dalam beberapa mesin simbol ini bisa
berlainan, misalkan untuk perkalian ada mesin yang
menggunakan simbol MP

13

Bahasa Generasi Kedua
° Mulai diperkenalkan penerjemah bahasa :
• Assembler
-

yaitu program yang menerjemahkan program bahasa

asembly menjadi bahasa mesin

• Kompiler
• Interpreter

14

Bahasa Generasi Ketiga
° Bahasa tingkat tinggi adalah bahasa pemrograman
yang lebih tinggi daripada bahasa assembly.
° Bahasa ini lebih dekat dengan bahasa manusia.
° Bahasa ini juga memberikan banyak sekali fasilitas
kemudahan pembuatan program, misalnya: variabel,
tipe data, konstanta, struktur kontrol, loop, fungsi,
prosedur dan lain-lain.
° Contoh: Pascal, Basic, C++, dan Java

15

Bahasa Generasi Ketiga

° Mulai diperkenalkan penerjemah bahasa :
• Assembler
yaitu program yang menerjemahkan program bahasa asembly menjadi bahasa
mesin

• Kompiler
-

-

program penerjemah bahasa yang mengonversi
keseluruhan program dari suatu bahasa level tinggi
menjadi bahasa mesin sebelum komputer mengeksekusi
program.
Instruksi program dari bahasa prosedural disebut source
code. Source code diterjemahkan menjadi object code
yang merupakan file executable

• Interpreter
-


program penerjemah bahasa yang mengkonversi setiap
pernyataan bahasa prosedural menjadi bahasa mesin
dan mengeksekusinya secara langsung
16

17

18

Bahasa Generasi Keempat
° Disebut juga very high level language.
° Sering juga disebut sebagai spesific problem oriented
language
• karena bahasa ini digunakan langsung untuk
memecahkan suatu masalah tertentu seperti :
-

report generator
query language
application generator.

19

Tabel dosen_wali

Maka contoh statemen SQL untuk menampilkan seluruh
data yang ada pada tabel tersebut adalah SELECT *
FROM dosen_wali

20

Bahasa Generasi Kelima
° Biasa disebut dengan bahasa alami (natural language).
° Ada 2 jenis bahasa alami, yaitu :
• Bahasa manusia yang umum (Inggris, Spanyol,
dsb)
• Bahasa pemrograman yang menggunakan bahasa
manusia untuk memberikan koneksi lebih alami
antara orang dengan komputer
° Contoh, jika ingin mengetahui data pengiriman barang :
• “SAYA INGIN PENGIRIMAN PDA UNTUK
ALABAMA DAN MISISIPI BULAN JANUARI DAN
FEBRUARI DIBAGI MENURUT KOTA”
21

Bahasa Pemrograman Visual
° Dengan kemajuan yang telah dicapai saat ini, terdapat
suatu metode pembuatan program di mana
programmer membuat koneksi antara objek-objek
dengan cara :
• Menggambar
• Menunjuk
• Mengklik pada diagram dan ikon
• Berinteraksi dengan diagram alur.
° Metode ini disebut dengan pemrograman visual.
° Contoh tools :
• visual basic

22

Bahasa Markup
° Bahasa Markup adalah jenis coding atau tag yang
disisipkan ke dalam teks yang memuat detail tentang
struktur dan tampilan teks.
° HTML adalah contoh bahasa markup
• dapat digunakan untuk membuat dokumen onscreen untuk internet yang bisa di-link dengan
mudah dengan kata dan gambar ke dokumendokumen lain

23

Bahasa Markup

24

Bahasa Markup
° Contoh lain :
• Virtual Reality Modelling/ Markup Language
-

yaitu Jenis bahasa pemrograman yang digunakan untuk
membuat halaman web tiga dimensi, termasuk animasi
interaktif.

• Extensible Markup Language atau disingkat XML.
-

Tujuan diciptakannya XML ini adalah untuk membuat
sistem menjadi lebih sederhana dengan cara fokus pada
satu masalah khusus dokumen pada internet sehingga
seseorang dapat mendukung kemudahan pertukaran
dokumen di internet.

° Karena banyaknya bahasa markup mendorong adanya
suatu standarisasi yang disebut dengan SGML
(standard generilzed markup language)

25

Bahasa Scripting – JavaScript
° Script adalah daftar singkat dari perintah yang bisa
mengeksekusi sendiri yang ditambahkan pada halaman
web yang melakukan fungsi atau rutin khusus.
• Misal untuk menghitung counter trafik pengunjung
pada suatu situs.
• Contoh JavaScript
-

yaitu bahasa scripting berorientasi objek yang populer
yang banyak didukung dalam web browser untuk
menciptakan aplikasi web dinamis.

26

ActiveX
° Merupakan satu set kontrol atau komponen yang dapat
digunakan kembali
° Memungkinkan program atau isi dari hampir semua
tipe dapat ditambahkan pada hal dapat ditambahkan
pada suatu halaman web.
° Tujuannya untuk membuat halaman web yang interaktif

27

PERL
° Singkatan dari Practical Extraction and Report
Language.
° Merupakan bahasa pemrograman untuk tujuan umum
yang dikembangkan untuk
• memanipulasi teks
• pengembangan web
• pemrograman jaringan
• administrasi sistem
• pengembangan GUI
• dll

28

Perbandingan Beberapa HLL
° Beberapa HLL yang akan diperbandingkan :
• FORTRAN
• Basic
• Pascal
• Cobol
• Bahasa C
• LISP

29

FORTRAN
° Bahasa ini biasa digunakan untuk aplikasi bisnis yang
kompleks, seperti :
• Forecasting
• Pemodelan
• Mengekspresikan rumus matematika.
° Kelebihan dari Fortran adalah :
• bisa menangani ekspresi matematika dan logika
yang kompleks
• Pernyataannya cukup pendek dan sederhana
• Program pada satu komputer dapat dikembangkan
pada satu tipe komputer yang lain

30

FORTRAN
° Kekurangan :
• Tidak menangani operasi input dan output pada
peralatan penyimpanan seefisien bahasa lain yang
levelnya lebih tinggi
• Memiliki keterbatasan untuk mengekspresikan dan
memproses data non-numerik
• Tidak bisa dibaca atau dipahami semudah bahasa
level tinggi lainnya

31

COBOL
° Sering digunakan pada kalangan perbankan di era
1980-an.
° Keuntungannya :
• Tidak tergantung pada mesin
• Pernyataannya yang menyerupai bahasa inggris
mudah dipahami
• Mampu menangani banyak file, record, dan field
• Mudah menangani operasi input-output
° Sedangkan kelemahannya adalah :
• Karena begitu mudah dibaca, maka terkesan
bertele-tele
• Tidak bisa menangani pemrosesan matematika
sebagus FORTRAN
32

COBOL

33

BASIC
° Merupakan singkatan dari Beginner’s All-Purpose
Instruction Code. Bahasa pemrograman ini mudah
digunakan.
° Kekurangan pada bahasa pemrograman ini adalah :
• Kecepatan pemrosesannya relatif lambat, meskipun
versi kompiler lebih cepat dibandingkan versi
interpreter
• Tidak ada versi BASIC yang baru, meskipun ANSI
mengadopsi standar baru yang bisa mengurangi
masalah portabilitas, yaitu jika dijalankan pada
komputer yang berbeda

34

35

PASCAL
° Keuntungan :
• Mudah dipelajari
• Memiliki kapabilitas yang besar untuk pemrograman
grafis
• Sangat bagus untuk keperluan ilmiah
° Kerugian
• Pascal membatasi input output kapabilitas
pemrograman, yang membatasi aplikasi bisnisnya

36

37

Bahasa C
° Keuntungan :
• Bisa bekerja dengan baik pada mikrokomputer
• Memiliki portabilitas tinggi
• Cepat dan efisien
• Membuat programmer lebih bisa memanipulasi bits
individu dalam memori utama
• Memerlukan memori lebih sedikit dibandingkan
bahasa pemrograman lain
° Kerugian :
• C dianggap sukar dipelajari
• Karena konsistensinya, kodenya sulit diikuti
• Tidak cocok untuk aplikasi yang memerlukan
pemformatan laporan dan manipulasi file data
38

39

LISP
° Merupakan bahasa generasi ketiga yang secara
khusus digunakan untuk menyusun kecerdasan tiruan.
° Digunakan juga untuk menulis sistem pakar dan
program bahasa alami

40

Belajar Pemrograman vs Bahasa Pemrograman
° Belajar pemrograman tidak sama dengan belajar
bahasa pemrograman.
° Belajar pemrograman adalah belajar tentang :
• strategi pemecahan masalah
• metodologi
• sistematika pemecahan masalah
• menuliskannya dalam notasi yang disepakati
bersama.
° Belajar pemrograman bersifat pemahaman persoalan,
analisis dan sintesis serta menitikberatkan pada
designer program.

41

Belajar Pemrograman vs Bahasa Pemrograman
° Belajar bahasa pemrograman : belajar memakai suatu
bahasa pemrograman terkait :
• aturan sintaks,
• tatacara untuk memanfaatkan instruksi yang
spesifik untuk setiap bahasa.
° Belajar bahasa pemrograman titik beratnya adalah
sebagai coder

42

Produk vs Proses
° Produk akhir yang diharapkan dari seorang
programmer adalah program dengan :
• rancangan yang baik (metodologis, sistematis),
• dapat dieksekusi oleh mesin,
• berfungsi dengan benar,
• sanggup melayani segala kemungkinan masukan
data dalam domain permasalahannya,
• disertai dokumentasi.

43

Produk vs Proses
° Beberapa kalangan berpendapat bahwa yang penting
dalam sebuh pengembangan program adalah produk.
° Produk yang baik, mungkin dihasilkan oleh suatu
proses yang ‘kurang baik’.
° Karena hasil akhir yang dipoles sana sini secara tambal
sulam.
° Dengan adanya proses yang baik, akan semakin
meningkatkan jaminan kehadiran suatu produk yang
baik

44