Anda di halaman 1dari 27

Pendahuluan

Konsep Bahasa Pemrograman Materi 1 Yudianto Sujana, M.Kom

Thursday, May 14, 2009

Bahasa Pemrograman?
Komputer, alat yang digunakan untuk melakukan komputasi (perhitungan) secara cepat, komputer juga dapat menyimpan data, dan data tersebut dibaca kembali. Algoritma merupakan urutan operasi yang akan dikerjakan secara berurutan hingga menghasilkan suatu keluaran (output) yang diinginkan. Program merupakan algoritma yang diekspresikan pada notasi atau bahasa tertentu.
Thursday, May 14, 2009

Bahasa Pemrograman?

Bahasa Pemrograman, merupakan himpunan aturan-aturan (konvensi) untuk menyatukan (menghubungkan) algoritma-algoritma

Thursday, May 14, 2009

How to learn?

Horizontal, Bahasa-bahasa pemrograman dipilih dan dipelajari secara berurutan. Vertical, Membandingkan konsep dan konstruksi dari bahasa-bahasa pemrograman.

Thursday, May 14, 2009

Jenis Bahasa
Bahasa Mesin (Machine) Bahasa Rakitan (Assembly) Bahasa Tingkat Tinggi (High-Level Language).

Thursday, May 14, 2009

Bahasa Mesin
Merupakan bahasa yang paling rendah levelnya
(very low-level).

Dieksekusi secara langsung oleh komputer. Proses eksekusi sangat cepat. Realisasi (bahasa) membutuhkan biaya rendah
(low cost of realization). baru.

Fleksible untuk membuat layer software yang Tergantung pada mesin (Machine dependent).
Thursday, May 14, 2009

MOV AX,1234h Bahasa Assembly ADD AX, 01h LEA AX, WORD PTR Number PUSH AX CALL baca_input MOV AX,1234h ADD AX, 01h LEA AX, WORD PTR Number
Menggunakan Mnemonic, misalnya ADD, ADC (Add with Carry). Menggunakan nama simbolik. Tergantung pada mesin (Machine dependent). Contoh : MOV AX,1234h ADD AX, 01h LEA AX, WORD PTR Number PUSH AX CALL baca_input
Thursday, May 14, 2009

/** Creates a new instance of JadwalManager */ public JadwalManager() { }

Bahasa Tingkat Tinggi

public void insertJadwal(Jadwal jadwal) throws Exception{ Session session = HibernateUtil.getSessionFactory().getCurrentSession(); Mendenisikan sebuah mesin abstrak session.beginTransaction(); try{ (Abstract machine). session.save(jadwal); Membutuhkan proses translasi oleh session.getTransaction().commit(); }catch(Exception ex){ (compiler atau interpreter). translator session.getTransaction().rollback(); throw ex; Lebih mudah untuk dipelajari karena lebih } sederhana. } public List throws Exception{ listAllJadwal() Lebih lambat dibandingkan bahasa mesin Session session = HibernateUtil.getSessionFactory().getCurrentSession(); dan bahasa assembly. session.beginTransaction(); List list = new ArrayList(); try{
Thursday, May 14, 2009

Why we learn?
Meningkatkan kapasitas untuk mengekspresikan ide pemrograman. Dapat memilih bahasa pemrograman tertentu yang tepat untuk menyelesaikan suatu masalah. Meningkatkan kemampuan untuk belajar bahasa pemrograman yang baru. Memahami implementasi dari bahasa pemrograman. Meningkatkan kemampuan untuk membuat bahasa pemrograman yang baru.

Thursday, May 14, 2009

Programming Domains

Sistem Operasi Aplikasi Web Basis Data etc


Thursday, May 14, 2009

Any Question?
Berapa pendekatan yang bisa dilakukan dalam
mempelajari bahasa pemrograman?

Sebutkan jenis bahasa pemrograman

Thursday, May 14, 2009

Kriteria bahasa pemrograman


Readability Writability Reliability Cost

Thursday, May 14, 2009

Readability
Merupakan kriteria yang terpenting Faktor-faktor : Simplicity Orthogonality Statement Kontrol Tipe data dan Struktur data Syntax dan Lexical convention
Thursday, May 14, 2009

Writability
Faktor-faktor : Simplicity. Orthogonality. Mendukung abstraksi. Abstraksi adalah kemampuan untuk mendenisikan dan kemudian menggunakan struktur yang kompleks atau operasi yang mengijinkan detail dari operasi diabaikan.
Thursday, May 14, 2009

Reliability
Faktor-faktor : Type checking. Exception handling. Readability dan writability

Thursday, May 14, 2009

Cost
Training programmer. Penulisan program / Pembuatan software. Kompilasi dan eksekusi Maintenance

Thursday, May 14, 2009

Faktor yang mempengaruhi desain suatu bahasa


!

Arsitektur Komputer (Computer Architecture). Metodologi Pemrograman (Programming Methodology)

Thursday, May 14, 2009

Arsitektur Komputer
Arsitektur von Neumann Data dan program diletakkan pada memory yang sama. Memory terpisah dari CPU. Instruksi dan data difetch dari memori ke CPU.

Thursday, May 14, 2009

Thursday, May 14, 2009

Programming Methodologies
1950-an dan awal 1960-an : Aplikasi-aplikasi sederhana, masih menitikberatkan pada efisiensi mesin. Akhir 1960-an : Efisiensi dari sisi manusia lebih diutamakan (readibility), struktur kontrol yang lebih baik. Pemrograman terstruktur. Top-down design. Akhir 1970-an : Process-oriented ke Data-oriented. Abstraksi data. Pertengahan 1980-an : Object-oriented programming
Thursday, May 14, 2009

Kategori Bahasa Pemrograman


Imperative (Prosedural). Fitur utamanya adalah variable, assignment, statement, dan iterasi. Contoh : C, Pascal. Functional. Menggunakan fungsi-fungsi untuk melakukan komputasi. Contoh : LISP, Scheme.
Thursday, May 14, 2009

Kategori Bahasa Pemrograman


Logic. Berdasaarkan aturan (rule-based). Aturan tidak memiliki urutan khusus. Contoh : Prolog. Object-oriented. Pengkapsulan data dengan proses. Pewarisan (inheritance) dan dynamic type binding. Perkembangannya cepat. Contoh : C++, Java
Thursday, May 14, 2009

Metode Implementasi
Kompilasi (Compilation), dilakukan oleh compiler. Menerjemahkan high-level program ke kode mesin. Translasi membutuhkan waktu tertentu (compiletime) Eksekusi cepat Contoh bahasa yang menggunakan compiler : Pascal, C/C++
Thursday, May 14, 2009

Metode Implementasi
Interpretasi (Interpretation), dilakukan oleh interpreter. Tanpa proses translasi. Eksekusi lambat. Saat ini jarang digunakan. Contoh bahasa yang menggunakan interpreter : BASIC

Thursday, May 14, 2009

Metode Implementasi
Hybrid Gabungan antara kompilasi dan interpretasi Translation cost kecil. Kecepatan eksekusi tidak terlalu lambat

Thursday, May 14, 2009

Programming Environments
Merupakan kumpulan tool yang digunakan dalam pengembangan software UNIX. Borland C++. Smalltalk. Microsoft Visual C++. Lainnya : Borland Delphi, JBuilder, dll.

Thursday, May 14, 2009

Any Questions?
Faktor apa yang mempengaruhi desain suatu bahasa? Ada berapa kategori bahasa pemrograman? Ada berapa metode implementasi bahasa pemrograman?

Thursday, May 14, 2009

Anda mungkin juga menyukai