Anda di halaman 1dari 25

1

PENGANTAR KONSEP
BAHASA PEMROGRAMAN
Deskripsi Matakuliah
2

 Matakuliah ini mengajarkan tentang :


• Konsep dan logika berpikir komputer,
• Cara perancangan dan analisis masalah,
• Yang kemudian dipecahkan dengan komputer
menggunakan algoritma dan pemrograman terstruktur,
• Selain itu juga diperkenalkan dan diajarkan
penggunaan bahasa pemrograman Bahasa C, LISP,
Prolog, OOP dengan C++.
Sistem Komputer
3

 Sebuah sistem komputer terdiri dari :


• Hardware (perangkat keras)
• Software (perangkat lunak) dan
• Brainware.
 Sedangkan Software dapat dikelompokan menjadi :
• Operating System Software,
• Application Program Software,
• Dan Programming Language Software.
Definisi Program
4
 Program adalah kumpulan instruksi atau perintah, yang
biasanya disebut source code yang disusun sedemikian rupa
sehingga mempunyai urutan nalar yang tepat untuk
menyelesaikan suatu persoalan.
 Instruksi (statement) yang dimaksud adalah syntax (cara
penulisan) sesuai dengan bahasa pemrograman yang
digunakan.
 Mempunyai komponen-komponen : input, output, proses,
percabangan dan perulangan.
Bahasa Pemrograman
5

 Adalah alat untuk membuat program


 Contoh : C, C++, C#, Pascal, Basic, Perl, PHP,
ASP, JHP, Java, Python, Dev C++ dll.
 Perbedaan : cara memberikan instruksi
 Persamaan : bertujuan menghasilkan output yang
sama.
Paradigma Pemrogaman
6

 Bagaimana cara pandang kita terhadap


penyelesaian masalah pemrograman
 Ada banyak cara untuk menyelesaikan suatu
masalah, sehingga ada banyak paradigma yang ada
Paradigma Pemrograman
7

 Pemrograman Prosedural
• Memandang penyelesaian masalah sebagai hasil dari
serangkaian langkah yang menyelesaikan sub masalah
• Contoh : Pascal, C, dll.
• Merupakan paradigma biasanya lebih dekat dengan
mekanisme eksekusi mesin (secara hardware, komputer
bekerja secara sekuensial/berurutan)
• Menggunakan langkah-langkah yang berurutan yang
disebut sebagai suatu Algoritma
Paradigma Pemrograman
8

 Pemrograman Fungsional
• Berdasarkan teori fungsi matematika
• Fungsi merupakan dasar utama program
• Memandang penyelesaian masalah sebagai komposisi
dan aplikasi yang memetakan masalah ke jawaban
• Contoh : LISP

 Pemrograman Terstruktur
• Secara berurutan dan terstruktur
• Program dapat dibagi-bagi menjadi prosedur dan fungsi
• Contoh : Pascal dan C
Paradigma Pemrograman
9

 Pemrogramam Modular
• Pemrograman ini membentuk banyak modul
• Modul merupakan kumpulan dari prosedur dan fungsi yang
berdiri sendiri
• Sebuah program dapat merupakan kumpulan modul-modul
• Contoh : MODULA-2 atau ADA

 Pemrograman Berorientasi Obyek


• Pemrograman berdasarkan prinsip obyek, dimana obyek
memiliki data/variabel/property dan method/event/prosedur
yang dapat dimanipulasi
• Contoh : C++, Obyek Pascal, dan Java.
Paradigma Pemrograman
10

 Pemrograman Berorientasi Fungsi


• Pemrograman ini berfokus pada suatu fungsi tertentu
saja. Sangat tergantung pada tujuan pembuatan bahasa
pemrograman ini.
• Contoh : SQL, HTML, XML, dll.
 Pemrograman Deklaratif
• Pemrograman ini mendeskripsikan suatu masalah
dengan pernyataan daripada memecahkan masalah
dengan implementasi algoritma.
• Contoh : Prolog
Mekanisme Eksekusi Program
11

 Komputer bagaikan seorang anak kecil yang “terlalu


LUGU”, sehingga semua hal harus diberitahu dari
awal
 Komputer hanya bisa menjalankan instruksi dalam
bahasa mesin  rumit
 Solusi : Assembly (Low Level Language)  masih
rumit juga (belum mendekati bahasa manusia)
 Solusi : Bahasa Tingkat Tinggi (High Level Language),
menterjemahkan sintaks penulisan program, jika sintaks
benar maka program diterjemahkan ke bahasa mesin
Mekanisme Eksekusi Program
12

 Interpreter
 Menterjemahkan program baris- per-baris
 Contoh : PHP, batch file, basica
 Kompilator
 Membaca seluruh baris program kemudian
diterjemahkan secara keseluruhan
 Contoh : pascal, C
13

 Kompilator vs Interpreter
 Kompilator + Interpreter
 Debugger
 Editor, Kompilator, dan IDE

 Contoh Kompilator Pascal : FreePascal, Delphi,


TPW, TP, Lazarrus
Kompilator vs Interpreter
14

 Interpreter
 Pengembangan program lebih cepat (tidak perlu
kompilasi)
 Kecepatan eksekusi program lebih lambat (setiap kali
program perlu dijalankan, interpreter harus bekerja
lagi)
 Kompilator
 Waktu pengembangan relatir lama (perlu kompilasi)
 Progam dapat langsung dieksekusi dengan cepat
(karena sudah dalam bahasa mesin)
Kompilator + Interpreter
15

 Ada bahasa yang dikompilasi, namun tidak dalam


bahasa mesin (bahasa perantara)
 Lalu diinterpretasi oleh suatu interpreter untuk
menjalankanya
 Sebagian pekerjaan interpreter (validasi program
sudah dilakukan oleh Kompilator, sehingga
interpreter hanya perlu mengeksekusi program saja
 Contoh : Java, C#, VB.Net
Debugger
16

 Proses untuk menemukan kesalahan program


Editor
17

 Editor : program yang mampu menerima teks dari


manusia, dan menyimpannya ke dalam bentuk
digital yang dimengerti oleh komputer
 Editor saat ini memungkinkan adanya proses
koreksi terhadap sintaks program
 Bentuk kode program yang kita masukkan ini
disebut : source code
 Editor dan kompilator merupakan dua program
yang terpisah dan berbeda
IDE
(Integrated Development Environment)
18

 Adalah program yang menggabungkan fungsi


editor dan kompilator (atau ada juga +Debugger)
dalam satu paket
 Contoh : Turbo Pascal, Turbo C, PHP Editor,
Eclipse, Netbeans, Java Studio
RAD Tools
(Rapid Application Development)
19

 Gabungan editor, kompilator/interpreter, debugger


visual programming
 Contoh : Delphi, Visual Studio, Delphi for PHP,
dll.
Code Generator
20

 Melakukan generate source program dari suatu DESAIN


 Desain bisa berupa :
 ERD
 UML
 Reverse Engineering secara langsung dari Database
 Contoh :
 ERD & DB PHP Maker, PHP Code Generator, ASP
Maker, JSP Maker, MS Access, dll.
 UML  Jbuilder, NetBeans, Rational Rose, Model
Maker, Java Studio, dll.
Algoritma
21

 Asal kata algoritma berasal dari nama Abu Ja’far


Mohammed Ibn Musa al-Khowarizmi
 Ilmuan Persia yang menulis kitab al jabr w’al-
muqabala (rules of restoration and reduction)
 Tahun 825 m
 Berasal dari Iran
Definisi Algoritma
22

 Algoritma adalah urutan langkah logis tertentu untuk


memecahkan suatu masalah.
 Urutan langkah logis, yang berarti algoritma harus
mengikuti suatu urutan tertentu, tidak boleh melompat-
lompat.
 Alur pemikiran dalam menyelesaikan suatu pekerjaan
yang dituangkan secara tertulis.
 Alur pikiran, sehingga algoritma seseorang dapat juga
berbeda dari algoritma orang lain.
 Tertulis, yang artinya dapat berupa kalimat, gambar,
atau tabel tertentu.
Contoh Algoritma
23
 Jika seseorang ingin mengirim surat kepada kenalannya di
tempat lain, langkah yang harus dilakukan adalah :
 Menulis surat
 Surat dimasukkan kedalam amplop tertutup
 Amplop ditempeli perangko secukupnya
 Pergi ke kantor pos terdekat untuk mengirimkannya
 Dalam bidang komputer, algoritma sangat diperlukan dalam
menyelesaikan berbagai masalah pemrograman, terutama
dalam komputasi numeris
 Tanpa algoritma yang dirancang baik maka proses
pemrograman akan menjadi salah, rusak, atau lambat dan
tidak efisien.
Manusia - Komputer
24

 Pelaksana algoritma adalah komputer


 Manusia dan komputer berkomunikasi dengan cara :
Manusia memberikan perintah-perintah pada komputer berupa
instruksi-instruksi yang disebut program.
 Alat yang digunakan untuk membuat program tersebut adalah
bahasa pemrograman.
 Bahasa pemrograman sangat bermacam-macam : C, C++,
Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++, dan
masih banyak bahasa lainnya. Dari berbagai bahasa
pemrograman cara memberikan instruksinya berbeda-beda
namun bertujuan menghasilkan output yang sama.
Kriteria Algoritma
(Donald E. Knuth)
25

 Input : algoritma dapat memiliki nol atau lebih masukan dari


luar.
 Output : algoritma harus memiliki minimal satu buah output.
 Definiteness(pasti): algoritma memiliki instruksi-instruksi
yang jelas dan tidak ambigu.
 Finiteness(ada batas): algoritma harus memiliki titik berhenti
(stopping role).
 Effectiveness(tepat dan efisien): algoritma sebisa mungkin
harus dapat dilaksanakan dan efektif. Contoh instruksi yang
tidak efektif adalah: A=A+0 atau A=A*1

Anda mungkin juga menyukai