310 likes | 753 Views
PeNGERTIAN ALGORITMA DAN PARADIGMA PEMROGRAMAN. Oleh : Oktavian Lantang. ASAL USUL ALGORITMA. Algorism ( bahasa arab...menghitung) Algorist (orang yg menghitung angka arab) Al-Khuwarizmi...Algorism...Algorithm diserap dalam bahasa Indonesia sebagai algoritma. DEFINISI ALGORITMA.
E N D
PeNGERTIAN ALGORITMA DAN PARADIGMA PEMROGRAMAN Oleh : Oktavian Lantang
ASAL USUL ALGORITMA • Algorism ( bahasa arab...menghitung) • Algorist (orang yg menghitung angka arab) • Al-Khuwarizmi...Algorism...Algorithm diserap dalam bahasa Indonesia sebagai algoritma.
DEFINISI ALGORITMA • Algoritma adalah : Langkah – langkah logis untuk menyelesaikan masalah yang disusun secara sistematis dan logis
KAIDAH MEMBUAT ALGORITMA Aksi : • Kejadian yang terjadi pada selang waktu terbatas (dimulai saat T0 dan berakhir pada saat T1) • Menghasilkan efek netto yang terdefinisi dengan baik dan direncanakan Contoh mengupas kentang dapat dijelaskan : • Ambil kantong kentang dari rak • Ambil panci dari almari • Kupas kentang • Kembalikan kantong kentang ke rak
Contoh Algoritma • Ibu Tati mengupas kentang untuk mempersiapkan makan malam..(luas ruang lingkupnya) • Karena ruang lingkup luas, maka harus didefinisikan keadaan awal dan efek netto yang direncanakan ( Initial State dan Final State) • Initial State (keadaan awal) : T0 kentang sudah ada dikantong kentang, dan ditaruh di rak dapur dimana ibu Tati akan mengupasnya • Final State (keadaan akhir) : T1 kentang dalam keadaan terkupas di panci, siap untuk dimasak dan kantong kertasnya harus dikembalikan ke rak lagi.
Contoh Algoritma • Kejadian : urut-urutan dari beberapa aksi yang terjadi secara berurutan. • Efek kumulatif dari semua aksi yang terjadi menjadi efek netto dari kejadian • Penggolongan suatu kejadian menjadi aksi adalah relatif tergantung dari sudut pandang.
ParadigmaPemrogaman • Bagaimana cara pandang kita terhadap penyelesaian masalah pemrograman • Ada banyak cara untuk menyelesaikan suatu masalah, sehingga ada banyak paradigma yang ada
Paradigma Pemrograman Terdiri dari : • paradigma prosedural • paradigma fungsional • paradigma deklaratif • paradigma objek
1. Paradigma 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
2. Paradigma Fungsional • Memandang penyelesaian masalah sebagai komposisi dan aplikasi yang memetakan masalah ke jawaban • Contoh : LISP
3. Paradigma Deklaratif • Memandang penyelesaian masalah sebagai hasil inferensi terhadap fakta dan aturan yang diberikan • Contoh : prolog
4. Paradigma Objek • Memandang penyelesaian masalah sebagai hasil interaksi dari kelas yang membentuk objek
Mekanisme Eksekusi Program • 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 • Interpreter • Menterjemahkanprogram baris- per-baris • Contoh : PHP • Kompilator • Membaca seluruh baris program kemudian diterjemahkan secara keseluruhan • Contoh : Pascal, C
Mekanisme Eksekusi Mesin • Kompilator vs Interpreter • Kompilator + Interpreter • Debugger • Editor, Kompilator, dan IDE • Contoh Kompilator Pascal : FreePascal, Delphi, TPW, TP, Lazarrus
Kompilator vs Interpreter • 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 • 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 • Proses untuk menemukan kesalahan program
Editor • 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) • 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) • Gabungan editor, kompilator/interpreter, debugger visual programming • Contoh : Delphi, Visual Studio, Delphi for PHP, dll.
Code Generator • 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.