You are on page 1of 15

Bahasa Pemrograman Genarasi ke-4 (4GL) Modul 1

PENDAHULUAN

1. Definisi Bahasa Pemrograman Berdasarkan (http://id.wikipedia.org/wiki/Bahasa_pemrograman), Bahasa pemrograman adalah bahasa yang dapat diterjemahkan menjadi kumpulan perintah-perintah dasar tersebut. Penerjemahan dilakukan oleh program komputer yang disebut dengan kompilator. Berdasarkan (http://en.wikipedia.org/wiki/Programming_language) Bahasa pemrograman adalah bahasa buatan yang dapat digunakan untuk mengontrol tingkah laku mesin, khususnya komputer. Bahasa pemrograman digunakan sebagai sarana komunikasi untuk mengatur task (tugas) dan manipulasi informasi yang nyatakan kedalam algoritma. Beberapa pengertian lainnya mengenai bahasa pemrograman adalah a) Function; Bahasa pemrograman merupakan bahasa yang digunakan untuk menulis program-program komputer, yang melibatkan komputer untuk menunjukan beberapa jenis komputasi atau algritma dan kemungkinan untuk mengontrol externel device seperti printer, robot dan lain sebagainya. b) Target; Bahasa pemrograman berbeda dari bahasa alami dimana bahasa alami ini hanya digunakan untuk interaksi antar manusia, sementara itu bahasa pemrograman mengijinkan manusia untuk dapat berkomunikasi dengan mesin. Beberapa bahasa pemrograman digunakan oleh sebuah alat untuk mengontrol alat lainnya. Sebagai contoh, Postscript program c) Constructs: Bahasa pemrograman berisi susunan definisi dan manipulasi struktur data dan pengkontrolan alir eksekusi program.

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

2. Sejarah Bahasa Pemrograman berdasarkan generasi ke generasi

1950

1960

1970

1980

1990

1 mechine code 2 Assembler code 3 High Level Language 4 Forth Gen Language 5 Knowledge Based Systems structured Techniques CAD Techniques AI.Techniques

a. Bahasa pemrograman generasi ke-1 Bahasa pemrograman generasi ke-1 (1GL) adalah bahasa mesin. Bahasa mesin merupakan representasi tertulis kode mesin, yaitu kode suatu mesin tertentu. Bahasa ini bersifat khusus untuk mesin tertentu dan dimengerti langsung oleh mesin sehingga memiliki keuntungan yakni prosesnya lebih cepat dan efesien. Bahasa mesin kelompok komputer tertentu berlainan dengan bahasa mesin kelompok komputer lainnya. Abstraksi bahasa ini adalah kumpulan kombinasi kode biner 0 dan 1yang sangat sulit untuk dipelajari sehingga yang membuat dan mengerti pembuatan bahasa mesin tersebut adalah para ahli yang membuat mesin Pusat Pengembangan Bahan Ajar - UMB ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

komputer tersebut. Karena sangat sulit dipelajari dan bahasanya tidak alamiah bagi kebanyakan orang maka bahasa mesin disebut dengan bahasa tingkat rendah. Contoh kode program dari bahasa mesin adalah : 000100110010 b. Bahasa pemrograman generasi ke-2 Bahasa pemrograman generasi ke-2 merupakan terminology yang sering digunakan untuk bahasa assembly atau bahasa rakitan. Bahasa rakitan merupakan notasi untuk menyajikan bahasa mesin yang lebih mudah dibaca dan dipahami oleh manusia. Bahasa ini sudah menggunakan simbol alphabet yang bermakna (mnemonic), contohnya adalah MOV AX 1111, yang artinya pindahkan register AX ke nilai 1111. proses data oleh komputer berdasarkan perintah sakitan sangat cepat. Meski demikian masih merepotkan-bahkan bagi kebanyakan pemrogram, karena masih harus mengingat-ingat tempat penyimpanan data. Bahasa rakitan juga bersifat khusus untuk mesin tertentu. Contoh: Assembler. c. Bahasa pemrograman generasi ke-3 Adalah bahasa pemrograman yang dekat dengan bahasa manusia, kelebihan utama dari bahasa ini adalah mudah untuk di baca, tulis, maupun diperbaharui, sebelum bisa dijalankan program harus terlebih dahulu di-compile. Contoh Ada, Algol, BASIC, COBOL, C, C++, FORTRAN, LISP, dan Pascal, dsb. Pada generasi bahasa pemrograman terakhir sekarang ini, kedua cara interpretasi dan kompilasi digabungkan dalam satu lingkungan pengembangan terpadu (IDE = integrated development environment). Cara interpretasi memudahkan dalam pembuatan program secara interaktif dan cara kompilasi menjadikan eksekusi program lebih cepat. Pertama program dikembangkan interaktif, kemudian setelah tidak ada kesalahan keseluruhan program dikompilasi. Contoh bahasa program seperti ini adalah Visual BASIC yang berbasis BASIC dan Delphi yang berbasis PASCAL. Bahasa tingkat tinggi bersifat portable. Program yang dibuat menggunakan bahasa tingkat tinggi pada suatu mesin komputer bersistem operasi tertentu, hampir 100% bisa digunakan pada berbagai mesin dengan aneka sistem operasi. Kalaupun ada perbaikan sifatnya kecil sekali.

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Compiler dan Intepreter Compiler Adalah suatu program yang menterjemahkan bahasa program (sourcecode) ke dalam bahasa objek (object code). Compiler menggabungkan keseluruhan bahasa program dikumpulkan kemudian disusun kembali.

Tahapan Kompilasi: 1. Pertama source code ( program yang ditulis) dibaca ke memory komputer. 2. Source code tersebut diubah menjadi object code (bahasa assembly) . 3. Object code dihubungkan dengan library yang dibutuhkan untuk membentuk file yang bisa di eksekusi. Compiler memerlukan waktu untuk membuat suatu program yang dapat dieksekusi oleh komputer. Tetapi, program yang diproduksi oleh Compiler bisa berjalan lebih cepat dibandingkan dengan yang diproduksi oleh Interpreter, dan bersifat independen. Interpreter Berbeda dengan compiler, Interpreter menganalisis dan mengeksekusi setiap baris dari program tanpa melihat program secara keseluruhan. Keuntungan dari Interpreter adalah dalam eksekusi yang bisa dilakukan dengan segera. Tanpa melalui tahap kompilasi, untuk alasan ini interpreter digunakan pada saat pembuatan program berskala besar. d. Bahasa pemrograman generasi ke-4 Lebih dekat ke bahasa manusia dibandingkan dengan high-level programming languages. Biasanya dipakai untuk mengakses database. Contoh perintah pada bahasa SQL: FIND ALL RECORDS WHERE NAME IS "JOHN". Bahasa generasi ke-4 ini lebih berkembang dibandingkan dengan bahasa-bahasa sebelumnya, perkembangan bahasa ini hingga penerapan pemograman client-server . e. Bahasa pemrograman generasi ke-5 Bahasa pemrograman generasi ke-5 adalah bahasa pemrograman berdasarkan pendekatan penyelesaian masalah menggunakan constraints kedalam program, Pusat Pengembangan Bahan Ajar - UMB ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

daripada

menggunakan

algoritma.

Bahasa

berdasarkan

contraints

dan

logic

programming dan beberapa bahasa yang bersifat ringkas dan jelas merupakan bahasa generasi ke-5. Sementara bahasa pemrograman generasi ke-4 dirancang untuk membangun program untuk tujuan tertenti, bahasa pemrograman generasi ke-5 di rancang agar computer dapat menyelesaikan masalah yang sedang dihadapi. Bahasa pemrograman generasi ke-5 digunakan terutama dalam penelitian artificial intelegence. Prolog, OPS5 dan mercury adalah contoh dari bahasa pemrograman generasi ke-5.

3. Bahasa Pemrograman Generasi ke-4 (4GL) Bahasa pemrograman generasi ke-4 adalah bahasa pemrograman yang dirancang untuk tujuan tertentu seperti membangun perangkat lunak untuk kebutuhan bisnis. Prinsip Pokok dalam design 4GL: Prinsip pekerjaan minimal Prinsip keterampilan minimal Prinsip pengindaran syntax dan mechanic asing Prinsip waktu kosong(delay) Prinsip usaha minimal (min error) Prinsip perawatan minimal ( costumize) Prinsip hasil maksimal Ciri Bahasa generasi keempat: Tidak perlu training lama pada DP (Develeper Program) Bahasa untu semua pemakai Bahasa query Pembuat aplikasi Mencakup bahasa procedural/ non prosedural

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Properti 4GL: Untuk semua bahasa dapat disebut generasi keempat harus mempunyai karakteristik sebagai berikut: 1. User-friendly. 2. Programmer non-profesional dapat memperoleh hasil. 3. Menggunakan system manajemen basis data secara langsung. 4. Program untuk semua aplikasidapat dibuat dengan satu perintah lebih sedikit daripada COBOL. 5. Code non-prosedural digunakan, jika mungkin. 6. Akan membuat asumsi default intelligent tentang yang diinginkan pemakai, jika mungkin. 7. Disusun unutk operasi on-line. 8. Memberi kekuatan dan semangat code terstruktur. 9. Mempermudah pemahaman dan perawatan code oranglain. 10. Pemakai non-DP dapat mempelajarinya dengan cepat. 11. Dirancang untuk debugging dengan mudah. 12. Prototype dapat dibuat dan dimodifikasi dengan cepat. 13. Hasilnya dapat diperoleh dengan perintah magnitude waktu yang lebih cepat dari COBOL/PLI. Tidak semua bahasa yang memiliki property tersebut seluruhnya dan cocok untuk semua aplikasi. Harus dipilih bahasa pemograman tertentu untuk aplikasi tertentu. Komponen 4GL 4GL dengan tujuan umum yang baik mempunyai komponen non-prosedural yang mungkin disembunyikan pada fasilitas prosedural. Seperti pada gambar berikut: Application parameter, meliputi pemberian nama parameter, catalog, versi, pembuat dsb. Data specification, penentuan spesifikasi laporan berdasarkan data yang diambil. Screen specification, penentuan bentuk tampilan. Dialog specification, menentukan interaksi manusia dengan komputer. Specification Of Rules, aturan-aturan untuk penentuan keputusan. Biasanya dipisahkan dari badan aplikasi.

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Dalam kaitan dengan data, laporan, generator layar, pembuat dialog dan penentu aturan adalah fasilitas prosedur. Hal ini memungkinkan struktur program ditentukan oleh : loops, kondisi, struktur kasus dan routime yang sarangkan.

Aplication Parameter

Data Specification Report Specification Screen Specification Dialogue Specification Specification of Rules Prosedural Fasilitas

Intepreter

Optimizing Compiler

Testing Tools

Gb. Komponen 4GL untuk membuat aplikasi rutin

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Bagaimana 4GL digunakan Problem dengan pemrosesan data Pemakai tidak dapat memperoleh aplikasi ketika memerlukannya(sering ada delay). Sukar/tidak mungkin mendapatkan perubahan manajemen dalam waktu tertentu. Terdapat kesalahan program(tidak dapat bekerja). System yang digunakan sering tidak memenuhi persyaratan pemakai. Sukar untuk memahami DP dan berkomunikasi secara tepat. Pemakai harus menandatangani spesifikasi, sulit pengendaliannya. Harga dan waktu banyak untuk pengembangan dan menjaga daripada untuk antisipasi dan implementasi. Kriteria Pemilihan 4GL Lingkungan aplikasi Kategori fungsi Default Evolusionary Level Syntax User Friendliness Stuktur Spesifikasi & Design Peralatan Perbandingan CheekList : report generator, query Language, graphics, Link, database, dll. Lingkungan Aplikasi Untuk pemakai akhir/ DP professional. Penghitungan tertentu/ ad-hoc. Batch System, On-line System, atau perhitungan ekplorasi. Kerja Komersial/ kerja rengetahuan. Pendukung Keputusan. Volume transaksi rendah. Jenis Komputer. ASEP FAJAR F

Pusat Pengembangan Bahan Ajar - UMB

BAHASA 4TH CLIENT SERVER

Ukuran basis data. Keberadaan basis data/ file on-line, sharing, dsb. Spesifikasi Kompleks. Prototype/ aplikasi akhir Access melalui aplikasi. Tersimpan pada paket aplikasi. Tersimpan pada Kantor otomatis.

Kategori Fungsi Simple query languages Complex query & update languages Report generators Graphics languages Decision support languages Application generators Specification languages Very High Level programming languages Parameterized application packages Application languages

perlu dilihat cocol untuk end user, system analyst atau prof. programmers. Default Pekerjaan membuat beberapa aplikasi terkurangi oleh penggunaan default intelligent dalam 4GL. Pemakai harus menguji kekuatan default yang ada dalam 4GL. Evolusionary Level Syntax Beberapa gelombang evolusi dalam pengembangan 4GL yang meningkatkan kekuatan dialognya : Operasi Off-line Dialog satu dimensi dengan terminal seperti mesin ketik. Dialog dua dimensi dengan terminal vdu sederhana.

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Dialog yang diorientasikan pada waktu respon desi detik dengan PC, workstation atau jaringan local. Dialog menggunakan grafik. Peralatan dengan keterkaitan expert-system.

User Friendliness Beberapa pertanyaan untuk melihat semua bahasa program user friendly atau tidak. Apakah bahasa tersebut cocok untuk end users, system analyst atau programmer. Apakah dirancang untuk dapat di install sendiri oleh users. Apakah syntax mudah dipelajari/diingat. Apakah harus diingat banyak mnemonics. Apakah bahasa prosedural, non-prosedural atau keduanya. Jika prosedural apakah codenya terstruktur. Apakah mudah dalam pembuatannya. Apakah terdokumentasi dengan baik(manual). Apalah memiliki layar terpisah untuk review data, procedures report error messages. dsb

Struktur Bahasa yang dirancang dengan pengertian dan teknis yang terstruktur sangat penting dalam pembuatan system yang kompleks. Berikut beberapa pertanyaan/feature untuk bahasa terstruktur. (Pada umumnya dihindari instruksi GO TO). Bahasa yang baik harus memiliki features berikut :

1 Avoidance of GO TO Reform (nama subroutine) Do If If-else

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Case Do while Do Until For (variable) For ( file/data )

3. MANTIS

ESCAPE (one bracket ) ESCAPE (lebih one bracket) Clear-End statement for all bracket Loop initialization & control 1. IDEAL 2.NATURAL

Spesifikasi & Design Beberapa 4GL hanya merupakan bahasa pemograman. Bahasa yang membantu dalam spesifikasi dan dwsign mempunyai efek yang besar dalam pengembangan lifecycle daripada bahasa yang hanya dapat untuk pemograman saja. Peralatan Peralatan yang diperlukan dan dapat diuji kualitasnya: Fasilitas kreasi basis data. Bahasa query. Pembuatan laporan/grafik Bahasa prosedural Pointer layar. Pembuat dialog Peralatan untuk pembuatan dokumentasi. Peralatan untuk design system & spesifikasi (secara grafis). dsb.

Penanganan pada Perbandingan Pusat Pengembangan Bahan Ajar - UMB ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Dengan

banyaknya

bahasa

pemograman

user

harus

selektif

dan

membandingkan satu dengan yang lain. Perlu pula membandingkan dengan bahasa generasi sebelumnya, seperti: Dapatkah bahasa tersebut mengganti COBOL seluruhnya baik fungsi maupun performance mesin. Jumlah line of code(bahasa procedural, untuk non-prosedural tidak berarti) Waktu pengembangan.

CheckList Untuk membantu pemilihan dibuat daftar pertanyaan/property, meliputi: Report Generator Dapatkah dicetak pada stationary khusus, preprinted media. Keamanannya. Dapat di preview sebelum dicetak. Ada subtotal, control total, dsb. Format, dsb.

Query Language Apakah intruksinya mudah. Pemakai nave dapat mempelajarinya. Pencarian data dengan criteria tertentu dan rentang tertentu. dll.

Graphics Type grafik yang didukung: karakter, alpamosaic(vidioteks), vector(susunan baris pada layar), raster/pixel(dots). Graphics berwarna. Pembuatan graphics menggunakan default intelligent. Kualitas imaginasi. Tersedianya Chart. Dapatkah user memodifikasi grafik tersebut. dll.

Link ke tools lain

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Decision Word processing Financial Otomatisasi kantor: mailbox, pengiriman elektronik, kalender management, dsb. dsb.

Beberapa definisi lain yang menjadi pertimbangan dalam mendefinisikan bahasa pemrograman generasi ke-4. Query language : Bahasa komputer tingkat tinggi yang digunakan untuk mendapatkan informasi dari databases atau file Report generator : Software yang membaut laporan yang diinginkan Graphics language: Bahasa komputer yang menampilkan data dari file atau database dalam bentuk graphic Application generator: Software yang dapat membuat aplikasi yang dibutuhkan oleh pengguna/pemakai untuk tujuan tertentu. Very high-level programming language: Bahasa pemrograman yang mengunakan instruksi yang lebih sedikit dari pada bahasa konvensional. Digunakan terutama oleh programmer profesional untuk menghasilkan tool-tool

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

Contoh Software 4GL DataBase Query Language Informix-4GL SQL

Report Generator Oracle-report RPG II Postscript

Data manipulation, Analysis and Reporting Languages SPSS PL/SQL Informix-4GL

GUI Borland Delphi ASEP FAJAR F

Pusat Pengembangan Bahan Ajar - UMB

BAHASA 4TH CLIENT SERVER

Visual Basic Matlab

Referensi :

1. Suryadi H.S, Pengantar Pemrograman Generasi ke 4, Gunadarma, Jakarta, 1995


2. http://en.wikipedia.org/wiki/1GL 3. http://en.wikipedia.org/wiki/2GL

4. http://en.wikipedia.org/wiki/3GL
5. http://en.wikipedia.org/wiki/4GL 6. http://en.wikipedia.org/wiki/5GL 7. Hartono Jogiyanto, Pengenalan Komputer, Andi Yogyakarta, Yogyakarta, 1999 8. Modul Pemograman Berorientasi Objek (OOP) 2007, Busran, MT Institut Teknologi Padang

Pusat Pengembangan Bahan Ajar - UMB

ASEP FAJAR F

BAHASA 4TH CLIENT SERVER

You might also like