Vous êtes sur la page 1sur 18

KULIAH 1 DASAR PEMROGRAMAN:

APAKAH
PEMROGRAMAN?
ADITYO PRATOMO
&
JELITA ASIAN
DEFINISI PROGRAM
Urutan instruksi-instruksi yang digunakan komputer untuk
melakukan sesuatu.
Program ditulis oleh manusia, yang selanjutnya diterjemahkan
oleh komputer ke dalam bentuk data yang ia mengerti (angka
biner/1 dan 0).
Program bisa dianalogikan dengan resep untuk memasak.
Contoh aplikasi adalah semua program yang kita gunakan, baik di
komputer, tablet, mobile phone, etc.


DEFINISI PROGRAM
Bahasa
pemrograman
digunakan untuk
memecahkan
masalah.

Instruksi dari
manusia.
Dieksekusi oleh
CPU komputer
sebagai instruksi 1
dan 0
DEFINISI PROGRAM
Dalam computer
program ada source
code dan machine
code. Source code
ditulis oleh manusia,
sementara machine
code dihasilkan dari
proses kompilasi.
Inilah yang dimengerti
dan dieksekusi oleh
komputer.
Kumpulan computer
program dan data
yang berkaitan,
disebut software.
Source Code
Machine Code
Program
Program
Program Program Program
Software
Data
PARADIGMA
PEMROGRAMAN
Source code ditulis oleh programmer dalam bahasa
pemrograman tertentu berdasarkan 4 paradigma pemrograman:
imperative, functional, logic dan object-oriented.
Jadi secara umum, paradigma adalah kerangka filsafat and teori.
Paradigma pemogramam adalah kerangka filsafat and teori yang
mendasari prinsip seorang programmer menulis programnya.
Paradigma yang digunakan, tergantung masalah yang akan
dipecahkan
Satu masalah bisa dipecahkan dengan lebih dari satu paradigma.
Satu paradigma tidak selalu cocok dengan segala permasalahan.

PARADIGMA
PEMROGRAMAN
Paradigma Imperative
Prinsip dari paradigma imperative adalah first do this and next do that.
Ciri-ciri:
-Nama lain adalah paradigma prosedur (procedural paradigm).
-Berdasarkan teknologi perangkat keras digital (digital hardware
technology) berdasarkan ide Von Neumann.
-Tahapan-tahapan pelaksanaan instruksi (commands) diatur oleh stuktur
control (control structures)
-Instruksi tadi bisa disamakan dengan instruksi-instruksi kegiatan sehari-
hari seperti instruksi memasak Indomie yang disebutkan sebelumnya
-Contoh-contoh bahasa pemrograman yang menggunakan paradigma
imperative adalah Fortran, Algol, Pascal, Basic, Cobol, dan C.
-pemrograman dalam bahasa ini kurang alamiah (natural) karena kita
memikirkan batasan komputer tapi pemrograman bisa lebih efisien.

PARADIGMA
PEMROGRAMAN
Paradigma Fungsi
Prinsip dari paradigma imperative adalah Evaluate an expression and
use the resulting value for something.
Ciri-ciri:
-Nama lain adalah paradigm aplikatif (applicative paradigm).
-Berdasarkan teori dan fungsi matematika
-Hasil-hasil yang diproduksi oleh fungsi-fungsi tidak dapat berubah (non-
mutable) tapi kita bisa membuat nilai yang bisa diubah
-Waktu relatif tidak penting dibandingkan dengan paradigma imperative
-Semua fungsi komputasi dilakukan dengan memanggil fungsi
-Paradigma berdasarkan kebutuhan pengguna
-Contoh-contoh bahasa pemrograman yang menggunakan paradigma
fungsi adalah Erlang, Haskell, Lisp, Clojure, Scala, dan F#.

PARADIGMA
PEMROGRAMAN
Paradigma Logika
Prinsip dari paradigma imperative adalah Answer a question via search
for a solution.
Ciri-ciri:
-Nama lain adalah paradigm berbasis peraturan (rule-based paradigm).
-Berdasarkan kumpulan aksioma, fakta dan aturan deduksi (inference
rules), dan pertanyaan-pertanyaan (queries).
-Eksekusi program berdasarkan pencocokan masalah dengan fakta-fakta
sesuai aturan deduksi untuk menjawab pertanyaan-pertanyaan.
- Contoh-contoh bahasa pemrograman yang menggunakan paradigm
logika adalah Prolog dan Datalog.

PARADIGMA
PEMROGRAMAN
Paradigma Berorientasi Objek
Prinsip dari paradigma imperative adalah semua konsep adalah berdasarkan objek
Setiap objek mempunyai sifat (atribut) dan kelakuan (metode) tersendiri. Objek adalah
instansi dari kelas-kelas yang merupakan definisi sebuah objek di konsep
pemrograman.
Bayangkan objek seperti manusia yang memiliki sifat dan perilaku tersendiri. Objek
manusia adalah instansi dari kelas tangan, kaki, otak, dsb.
Ciri-ciri:
-Data dan operasi (metode) dikemas dalam objek.
-Data bisa dilindungi supaya tidak bisa diakses dari luar (objek lain)
-Objek berinteraksi dengan objek lain melalui pesan dengan menjalankan operasi
tertentu
-Konsep abstraksi dari objek adalah kelas, kelas-kelas itu bisa diciptakan saat
menjalankan program (run time).
-Kelas-kelas diatur dalam hirarki warisan dan dapat digunakan untuk ekstensi,
penurunan dan spesialisasi
-Contoh-contoh bahasa pemrograman yang menggunakan paradigm berorientasi objek
adalah C++, Smalltalk, Delphi, dan Java.

BAHASA
PEMROGRAMAN
Bahasa yang digunakan untuk mengkomunikasikan instruksi-
instruksi ke mesin, termasuk komputer. Komputer hanya mengerti
machine code, sementara manusia menggunakan source code
dalam membuat program.
Komputer akan menginterpretasi atau mengkompilasi source
code menjadi machine code agar perintah bisa dimengerti dan
dijalankan.
BAHASA
PEMROGRAMAN
Kompilasi
Sebelum dijalankan, source code dikompilasi menjadi machine
code atau object code.
Bisa dianggap ini adalah proses penerjemahan dari bahasa
manusia ke bahasa mesin
Beberapa bahasa kadang source code dikompilasi menjadi object
code terlebih dahulu lalu diproses lagi menjadi machine code
Program yang sudah dikompilasi biasanya disebut executable
(*.exe) atau binary karena bentuk format file dalam biner (0 dan 1)
Bahasa yang dikompilasi membutuhkan compiler untuk mesin
yang berbeda. Contoh GCC untuk C dan C++, fpc untuk Pascal,
dsb.
BAHASA
PEMROGRAMAN
Kompilasi
Keuntungan program yang dikompilasi:
-Biasanya jalannya lebih cepat karena komputer hanya
mengeksekusi program yang sudah dikompilasi sebelumnya.
-Tidak membutuhkan adanya compiler untuk menjalankan
program karena yang dijalankan adalah bahasa mesin.
Kekurangan program yang dikompilasi:
-Proses pengembangan program biasanya lebih lama daripada
program yang dinterpretasi
-Program yang dikompilasi untuk satu komputer khusus tidak bisa
digunakan untuk komputer jenis lain.
BAHASA
PEMROGRAMAN
Interpretasi
Program disimpan dalam bahasa yang dimengerti manusia.
Source code tidak dikompilasi terlebih dahulu, melainkan
langsung diterjemahkan on-the-fly (sambil jalan) ketika
dieksekusi.
Kondisi program yang diproduksi oleh interpreter tidak sekomplit
atau sediskrit program yang diproduksi oleh compiler, hanya
sebagian kecil bahasa mesin ada di memori computer dan begitu
dieksekusi bagian itu langsung dihapus dari memori.
BAHASA
PEMROGRAMAN
Interpretasi
Program yang diinterpretasi dapat dijalankan secara berbarengan
atau interaktif satu-per-satu.
Dapat diinterpretasi dan dijalankan langsung seperti (ex: BASIC,
Perl, Python)
Dapat juga diinpterpretasi dan disimpan dalam bentuk yang tidak
tergantung pada mesin, Contoh bytecode yang diinterpreatsi
Java. Saat akan dijalankan, interpreter Java bernama Java Virtual
Machine akan mengeksekusi bytecode tersebut.
BAHASA
PEMROGRAMAN
Interpretasi
Keuntungan program yang diinterpretasi:
-Proses pengembangan program biasanya lebih cepat kerena
bahasanya lebih sederhana dan kita tidak perlu mengkompilasi
seluruh program untuk mengetes bug di salah satu fitur.
-Program tidak perlu dirubah-rubah untuk disesuaikan dengan
computer yang akan digunakan.
Kekurangan program yang diinterpretasi:
-Eksekusi program lebih lambat karena setiap baris dari program
perlu diinterpretasi dari awal setiap dijalankan.
-Program hanya dapat dijalankan di komputer yang mempunyai
interpreter.

BELAJAR PEMROGRAMAN VS
BELAJAR BAHASA
PEMROGRAMAN
Belajar pemrograman
Memahami, menganalisa dan mensintesa permasalahan
Pemahaman duduk permasalahan dan paradigma yang cocok
untuk memecahkannya
Metode apa yang sudah digunakan orang lain untuk solusinya
Tidak perlu menciptakan metode baru jika masalah tersebut
sudah dipecahkan dan orang lain sudah mendokumentasikan
masalah tsb dalam algoritma
Penekanan pada analisa dan sintesa masalah
BELAJAR PEMROGRAMAN VS
BELAJAR BAHASA
PEMROGRAMAN
Belajar Bahasa pemrograman
Dapat disamakan dengan belajar bahasa asing
Perlu mengerti sintaks (tata bahasa) dan pertaruannya
Perlu pemahaman cara kompilasi yang spesifik untuk bahasa
tersebut
Penekanan pada keterampilan
BELAJAR PEMROGRAMAN VS
BELAJAR BAHASA
PEMROGRAMAN
Kedua disiplin ini saling melengkapi
Kita akan fokus pada belajar pemrograman dengan contohnya
menggunakan bahasa pemrograman

Vous aimerez peut-être aussi