Bahasa Pemrograman
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer atau bahasa pemrograman komputer, adalah instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
- Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
- Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya kode_mesin|MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
- Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
- Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb. Komputer dapat mengerti bahasa manusia itu diperlukan program compiler atau interpreter.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.
Jenis Bahasa Pemrograman Berdasarkan Sifat-Sifatnya
Seperti yang kita tahu ada banyak sekali Bahasa pemrograman, dari Bahasa Mesin hingga Bahasa Tingkat Tinggi. Adapun jenis-jenis Bahasa Pemrograman berdasarkan sifat-sifatnya adalah:
Prosedural
A. COBOL
COBOL (singkatan dari Common Business Oriented Language) adalah sebuah bahasa pemrograman generasi ketiga. Sesuai dengan namanya, maka bahasa COBOL mempunyai fungsi menyelesaikan masalah-masalah yang berhubungan dengan perdagangan, seperti sistem pengelolaan keuangan, laporan pengeluaran sebuah perusahaan dan lain-lain. karena orientasinya pada suatu masalah, bahasa ini sering disebut juga dengan istilah Problem Oriented Language. COBOL merupakan High Level Language, bahasa awam yang ditulis menggunakan instruksi dalam bahasa inggris. COBOL hampir dapat digunakan pada semua komputer yang tersedia kompiler COBOLnya. COBOL diciptakan pada tahun 1959.
Pengembangan bahasa COBOL selanjutnya dilakukan oleh suatu group yang disebut CODASYL, singkatan dari COnference on DAta SYstem Language. Bahasa COBOL pertama kali diperkenalkan secara resmi atau formal pada bulan Januari 1960. Versi dari bahasa COBOL ini disebut dengan COBOL-60. Dan diperbaharui pada tahun 1965. Bila suatu bahasa komputer tidak standar, dalam arti banyak versinya, maka menyulitkan pemakai untuk menerapkannya, pemakai harus menyesuaikan versi dari COBOL yang dipakai oleh komputer tertentu. Untuk mengatasi masalah hal ini, pada tahun 1968 dan 1974 bahasa COBOL dikembangkan dan disempurnakan lebih lanjut dan distandardisasikan dengan nama ANSI COBOL (American National Standards Institute ). ANSI COBOL ini yang sekarang banyak diterapkan oelh sejumlah pabrik-pabrik komputer. Dengan adanya standardisasi, pemakai tidak terlalu sulit menggunakan bahasa COBOL versi yang berbeda, karena inti dari bahsa ini sama. Misalnya untuk komputer mikro, yang menggunakan sistem operasi CP/M atau MS-DOS atau PC-DOS, perusahaan software Microsoft, mengembangkan bahasa COBOL yang disebut dengan COBOL-80 atau MS-COBOL. Walaupun versi dari bahasa COBOL berbeda yaitu COBOL-80 tetapi berdasarkan dari standar ANSI, yaitu yang distandardisasikan pada tahun 1974 (American National Standards Institute Nomer x3.23-1974), sehingga sifatnya standar. Dengan bahasa COBOL, tinggal menulis instruksi dengan kata bahasa inggris seperti ADD, MOVE, MULTIPLE,READ, WRITE dan sebagainya.
Kata-kata yang dipergunakan dalam bahasa COBOL disebut COBOL Reserved Words. Disamping CoBOL reserved words, yang merupakan kata-kata yang sudah ditetapkan oleh bahasa COBOL, yang mempunyai arti tertentu, pemakai bahasa ini dapat membuat sendiri kata-kata ( User Defined Words) untuk mendefinisikan suatu nama tertentu. Program bahasa COBOL merupakan program terstruktur , yaitu program yang strukturnya jelas, mudah dibaca, dan mudah dipelajari, dan baik untuk dokumentasi.
Struktur utama dari suatu program COBOL terdiri dari 4 Divisi yaitu:
- IDENTIFICATION DIVISION Informasi mengenai identitas program (nama program, si pembuat, tanggal dibuat, tanggal dikompilasi, dan lainnya.
- ENVIRONMENT DIVISION Informasi mengenai keadaan komputer dan alat-alat lain yang dipergunakan.
- DATA DIVISION Informasi mengenai bentuk, jenis dari data apa saja yang dipergunakan dalam program bersangkutan.
- PROCEDURE DIVISION Informasi yang memuat prosedur pemrosesan data yang datanya tampak pada
DATA DIVISION untuk dihasilkan outputnya.
Dari apa yang dapat dikerjakan oleh COBOL, konsep COBOL orientasinya pada permasalahan bisnis sebenarnya dapat untuk semua permasalahan yang berhubungan denagn pengolahan data. Misalnya, pengolahan data mahasiswa, yaitu memproses data input mahasiswa, sampai dihasilkan output informasi mendetail tentang mahasiswa bersangkutan, juga dapat dikerjakan oleh COBOL
COBOL mempunya kelebihan dan kekurangan.
Kelebihan :
- Program COBOL sesuai untuk pengolahan data yang banyak diterapkan pada permaslahan .
- Program COBOL sifatnya standard, sehingga dapat dipergunakan pada komputer-komputer yang berbeda, tanpa banyak perbedaan.
- Struktur program COBOL jelas, sehingga dapat dimengerti oleh orang seperti akuntan, auditor, atau manajer-manajer yang hanya mempunayai pengetahuan pengolahan data yang sedikit.
Kekurangan :
- Operasi masukan dan keluaran yang masih kaku
- Struktur penulisan program yang sangat kaku dan bertele-tele
B. ALGOL
ALGOL (Algorithmic Language) adalah satu dari beberapa bahasa tingkat tinggi/HLL yang secara spesifik didesain untuk pemrograman komputasi spesifik. Mulai diperkenalkan pada akhir tahun 1950-an, dengan debut pertama ALGOL 58, kemudian dilanjutkan dengan rilisnya ALGOL 60, dan ALGOL 68. Algol didesain oleh komite internasional sebagai bahasa pemrograman yang universal. Komite internasional ini menyelenggarakan konferensi, yang bertempat di Kota Zurich, Switzerland, sebagai upaya formal yang ditempuh untuk mengemukakan isu tentang probabilitas software. Mesin yang mengenali bahasa pemrograman ALGOL memungkinkan programmernya untuk lebih kreatif dalam mengembangkan programnya, namun dalam mengimplementasikan program ini nampaknya tidak semudah membalikkan telapak tangan.
Meskipun ALGOL tidak sepopuler FORTRAN dan COBOL, namun program ini masih dipertimbangkan sebagai bahasa yang paling penting pada era-nya dalam hal pengaruhnya terhadap perkembangan bahasa pemrograman yang menjadi penerusnya. Kita maju ke tahun 1960, sebelum dikenalnya formal syntax, arsitek ALGOL memperkenalkan konsep “block instructions”, yang saat ini kita kenal dengan sebutan prosedur. Konsep ini diperkenalkan oleh Niclaus Wirth dan kemudian konsep ini diimplementasikan ke dalam bahasa pemrograman PASCAL. Wirth juga merupakan salah satu anggota dari komite ALGOL. ALGOL (Algorithmic Language) didesain oleh komite internasional sebagai bahasa pemrograman yang universal. Komite internasional ini menyelenggarakan konferensi, yang bertempat di Kota Zurich, Switzerland, sebagai upaya formal yang ditempuh untuk mengemukakan isu tentang probabilitas software.
Bahasa pemrograman ini pertama kali dikembangan pada akhir tahun 1950-an, dengan debut pertamanya ALGOL 58. Meskipun Algol tidak sepopuler FORTRAN dan COBOL, namun program ini masih dipertimbangkan sebagai bahasa yang paling penting pada era-nya dalam hal pengaruhnya terhadap perkembangan bahasa pemrograman yang menjadi penerusnya. Pada tahun 1960 muncul ALGOL 60. Bahasa pemrogramana ini sangat populer di Eropa pada pertengahan 1960-an, dan pada tahun 1968-an muncul juga ALGOL 68. Fitur-fitur Algol Fitur di dalam Algol yang mampu mengelompokan satu himpunan statmen menjadi satu, yang disebut statmen majemuk. Statmen majemuk ini bisa diperlukan sebagai keseluruhan statmen oleh elemen program lain. Bahasa ini yang disebut sebagai salah satu bahasa yang diorientasikan kepada penggunaan prosedur, menyediakan satu alokasi tempat yang dinamis.
Dibawah ini fitur-fitur Algol. Fitur dari bahasa Algol :
- Menggunakan konsep tipe data secara formal.
- Nama variable tidak terbatas panjangnya.
- Index array tidak terbatas.
- Parameter dipisahkan oleh modenya (in dan out).
- Index ditempatkan dalam bracket (tanda [ ]).
- Mendukung compound statement (pernyataan majemuk) (begin…end).
- Tanda semicolon (titik koma, merupakan pemisah antar statement.
- Menggunakan operator assignment :=.
- Statement IF mempunyai ELSE-IF (nested-IF) Fitur baru pada ALGOL 60 adalah: 1. Block structure (local scope). 2. 2 model passing parameter (by name dan by value). 3. Rekursi subprogram. 4. Stack-dynamic array.
Kegunaan Algol Keggunaan algol sendiri untuk merancang fungsi algoritma baik menggunakan komputer maupun tanpa computer. Kemampuan Algol iyalah melaksanakan operasi proses informasi yang umum secara lebih mudah. Sedangkan kelemahannya adalah bahasa ini sudah jarang dipakai dikarenakan popularitas Algol kalah dengan keturunannya yaitu bahasa Pascal. Dikarenakan bahasa Pascal lebih luas pemakaiannya, akan tetapi prinsip bahasa Algol tetap dipegang teguh oleh bahasa Pascal. Tujuan dari bahasa Algol adalah bahasa ini mendekati notasi matematika, baik untuk mendeskripsikan algoritma,dan harus dapat ditranslasikan ke kode mesin.
C. Dan masih ada lagi seperti Pascal, Fortran, Basic, dan C.
OOP
A. JAVA
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).
Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer. Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).
Java mempunya kelebihan dan kekurangan:
Kelebihan :
- Berorientasi objek, java tidak diturunkan bahasa pemrogaman manapun. Java memiliki keseimbangan yang menyediakan mekanisme peng-class-an sederhana dengan model antarmuka dinamik yang intuitif hanya jika diperlukan.
- Interaktif, java dirancang untuk menciptakan program jaringan yang interaktif.
- Terinterpretasi dan berkinerja tinggi, java melengkapi keajaiban lintas platform yang luar biasa dengan kompilasi ke dalam representasi langsung yang disebut java code byte yang dapat diterjemahkan oleh system apapun yang memiliki java interpreter dan java virtual machine.
Kekurangan :
- Java memiliki kecepatan yang kurang dari bahasa C ++
- Implementasi J2ME tidak global. Misalnya, J2ME untuk Motorola dengan J2ME untuk Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia. Setiap produk selalu mempunyai modul tersendiri yang dinilai aneh penerapannya dan harus di-compile dengan modul yang berbeda-beda.
B. PYTHON
PHYOTON adalah bahasa pemrograman interpretatif multiguna dengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode. Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas, dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif. Python mendukung multi paradigma pemrograman, utamanya; namun tidak dibatasi; pada pemrograman berorientasi objek, pemrograman imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada python adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan manajemen memori otomatis. Seperti halnya pada bahasa pemrograman dinamis lainnya, python umumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luas mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan bahasa skrip. Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai platform sistem operasi.
Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi. Lihat sejarahnya di Python Copyright. Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara bebas, bahkan untuk kepentingan komersial. Lisensi Python tidak bertentangan baik menurut definisi Open Source maupun General Public License (GPL).
Beberapa fitur yang dimiliki Python adalah:
- Memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan modul-modul 'siap pakai' untuk berbagai keperluan.
- Memiliki tata bahasa yang jernih dan mudah dipelajari.
- Memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan kembali dan penulisan ulang kode sumber.
- Berorientasi obyek.
- Memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
- Modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-modul tersebut dapat dibangun dengan bahasa Python maupun C/C++.
- Memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa pemrograman Java, python memiliki fasilitas pengaturan penggunaan ingatan komputer sehingga para pemrogram tidak perlu melakukan pengaturan ingatan komputer secara langsung.
- Memiliki banyak faslitas pendukung sehingga mudah dalam pengoprasiannya.
PHYTON memiliki kelebihan dan kekurangan:
Kelebihan :
- Tidak ada tahapan kompilasi dan penyambungan (link) sehingga kecepatan perubahan pada masa pembuatan system aplikasi meningkat.
- Tidak ada deklarasi tipe sehingga program menjadi lebih sederhana, singkat, dan fleksible.
- Manajemen memori otomatis yaitu kumpulan sampah memori sehingga dapat menghindari pencatatan kode
- Tipe data dan operasi tingkat tinggi yaitu kecepatan pembuatan system aplikasi menggunakan tipe objek yang telah ada
- Pemrograman berorientasi objek
Kekurangan :
- Beberapa penugasan terdapat diluar dari jangkauan python, seperti bahasa pemrograman dinamis lainnya, python tidak secepat atau efisien sebagai statis, tidak seperti bahasa pemrograman kompilasi seperti bahasa C.
- Disebabkan python merupakan interpreter, python bukan merupakan perangkat bantu terbaik untuk pengantar komponen performa kritis.
C. Dan masih ada lagi seperti Smalltalk, Eifel, , Pascal, SIMULA, Smalltalk, Ruby, PHP, C#, Delphi, Eiffel dan Perl.
Parallel Processing
A. MPI (Message Passing Interface)
Message Passing Interface (MPI) adalah suatu spesifikasi library pemrograman untuk meneruskan pesan (message-passing), yang diajukan sebagai standar oleh berbagai komite dari vendor, pelaksana dan pemakai [3,5]. MPI digunakan secara luas mengingat:
- Telah memiliki standar
- Dirancang berkinerja tinggi pada mesin-mesin parallel
- Tersedia secara bebas maupun komersial
- Dikembangkan banyak pihak
- Informasi penerapan dan pengujian dalam berbagai bahasa pemrograman dan sistem telah tersedia.
Dalam pemodelan menggunakan message-passing, suatu proses (process) adalah sebuah pencacah program dan ruang alamat. Proses dapat memiliki banyak thread (pencacah program dan memory lokal) yang saling berbagi ruang alamat. MPI dalam hal ini berfungsi sebagai alat komunikasi di antara proses, yang saling memiliki ruang terpisah. Komunikasi ini terutama berupa sinkronisasi dan perpindahan data antar proses. Informasi dari domain komunikasi seluruh proses disimpan di sebuah variabel yang disebut commun-cators, misalnya MPI_COMM_WOLRD yang mencakup keseluruhan proses. Paralelisme dalam MPI bersifat Multiple Instruction Multiple Data (MIMD).
Pemrograman paralel menggunakan MPI bersifat eksplisit, yaitu ditentukan dalam program secara jelas. Dalam melakukan komunikasi data antar proses, pembuat program perlu menentukan mekanisme apa yang digunakan dari fungsi-fungsi yang tersedia. Disediakan beberapa fungsi dasar untuk keperluan ini, yaitu MPI_Send (mengirim), MPI_Recv (menerima), dan MPI_Sendrecv (mengirim dan menerima sekali-gus). Fungsi-fungsi ini masuk dalam kelompok ko-munikasi titik-ke-titik (point-to-point). Komunikasi dalam MPI bersifat kooperatif, yaitu tiap-tiap proses saling bekerjasama.
Parameter data atau message dalam fungsi-fungsi komunikasi memiliki struktur dasar, yaitu:
- Alamat buffer data untuk mengirim atau menerima.
- Ukuran dari buffer data.
- Jenis data pada buffer, berupa konstanta tertentu misalnya MPI_INTEGER, MPI_CHAR dan MPI_DOUBLE.
- Proses tujuan, berupa suatu integer rank dari proses.
- Tag dari message, dapat digunakan sebagai penanda oleh proses.
Operasi dari fungsi-fungsi komunikasi titik-ke-titik memiliki 2 mode, yaitu blocking dan non-blocking. Pada bentuk blocking maka proses akan menunggu operasi kirim dan terima data selesai, sedangkan non- blocking menggunakan event untuk memberitahu proses ketika terjadi kirim atau terima data. Dalam tiap mode adalah penting untuk menjaga agar setiap proses yang berkomunikasi tidak mengalami deadlock, yaitu saling tunggu yang tidak berkesudahan. MPI telah memiliki mekanisme agar deadlock tidak terjadi, tetapi dalam kondisi tertentu ini tidak terhindarkan, misalnya ketika buffer tujuan penuh atau tidak tersedia.
B. Dan masih ada lagi seperti PVM (Parallel Virtual Machine), CONCURRENT PASCAL, OCCAM, ADA, SEQUENT-C, LINDA dan MODULA-P.
Logic (Non-Prosedural)
A. Oracle
Selain sebagai Bahasa pemrograman berbasis data base, Oracle juga tergolong sebagai Bahasa pemrograman Non-Prosedural karena dapat mengurangi waktu pemrogram untuk membuat program sehingga pembuatan program dibuat dengan waktu lebih cepat. Pada Oracle juga terdapat fasilitas-fasilitas seperti: Program Generator, Report Generator, Bahasa Querty.
B. Microsoft Access
Microsoft Access adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna.
Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle Database, atau semua kontainer basis data yang mendukung standar ODBC. Para pengguna/programmer yang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang kompleks, sementara para programmer yang kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang sederhana. Access juga mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.
Functional
A. LISP
LISP (historis, LISP) adalah keluarga dari bahasa pemrograman komputer yang memiliki sejarah panjang dan notasi, awalan khas sepenuhnya kurung Polandia. Awalnya ditetapkan pada tahun 1958, LISP adalah tingkat tinggi tertua kedua bahasa pemrograman yang digunakan secara luas saat ini , hanya Fortran lebih tua (dengan satu tahun). Seperti Fortran, LISP telah berubah banyak sejak hari awal, dan sejumlah dialek telah ada lebih sejarahnya. Saat ini, tujuan umum yang paling banyak dikenal LISP dialek Common LISP, Scheme, dan Clojure. LISP awalnya diciptakan sebagai notasi matematika praktis untuk program komputer, dipengaruhi oleh notasi kalkulus lambda Alonzo Gereja. Dengan cepat menjadi bahasa pemrograman favorit untuk buatan (AI) penelitian intelijen. Sebagai salah satu bahasa pemrograman paling awal, LISP memelopori banyak ide dalam ilmu komputer, termasuk struktur pohon data, manajemen penyimpanan otomatis, mengetik dinamis, dan compiler diri hosting. LISP diciptakan oleh John McCarthy pada tahun 1958 ketika ia berada di Institut Teknologi Massachusetts (MIT). McCarthy diterbitkan desain dalam makalah di Komunikasi ACM pada tahun 1960, berjudul “Fungsi Rekursif dari Ekspresi simbolik dan Komputasi mereka oleh Mesin, Bagian I” (“Bagian II” tidak pernah dipublikasikan). Dia menunjukkan bahwa dengan operator sederhana dan notasi untuk fungsi, seseorang dapat membangun sebuah bahasa Turing-lengkap untuk algoritma. Informasi Pengolahan Bahasa adalah bahasa AI pertama, dari tahun 1955 atau 1956, dan sudah termasuk banyak konsep, seperti daftar-pengolahan dan rekursi, yang kemudian digunakan dalam LISP.
Notasi asli McCarthy digunakan tanda kurung “M-ekspresi” yang akan diterjemahkan ke dalam S-ekspresi. Sebagai contoh, mobil M-ekspresi [kontra [A, B]] setara dengan ekspresi S-(mobil (AB kontra)). Setelah LISP dilaksanakan, programmer cepat memilih untuk menggunakan S-ekspresi, dan M-ekspresi ditinggalkan. M-ekspresi muncul lagi dengan singkat upaya dari MLISP oleh Horace Enea dan CGOL oleh Vaughan Pratt. LISP pertama kali diimplementasikan oleh Steve Russell pada komputer IBM 704 bahwa fungsi LISP eval dapat diterapkan dalam kode mesin. Hasilnya adalah juru LISP kerja yang dapat digunakan untuk menjalankan program LISP, atau lebih baik, ‘mengevaluasi cadel ekspresi’
LISP mempunyai kelebihan dan kekurangan:
Kelemahan :
- Popularitas rendah
- Tidak banyak Tools yang mendukung
- Library pengembangan tidak banyak
Kelebihan:
- Model komputasi yang atraktif
- Alat belajar pemrograman yang baik
- Efisien
B. XSLT
XSLT adalah kependekan dari eXtensible StyleSheet Language:Transformation, adalah bagian dari XSL yang dikembangkan sebelumnya. XSL adalah Stylesheet yang khusus dikembangkan sebagai komplemen XML, untuk merubah informasi pada XML ke dalam bentuk lain agar bisa ditampilkan di layar, dicetak di kertas atau didengarkan telinga. Pada dasarnya proses ini di bagi menjadi dua bagian proses yakni pertama Transformasi Struktural yang meliputi pengumpulan, pengelompokan dan pengurutan data maupun penyusunan ulang, penambahan dan penghapusan tag dan atribut, dan yang kedua adalah proses merubah format menjadi pixel dilayar, nohtah tinta di kertas atau nada di speaker. Proses yang pertama itulah yang kemudian disebut XSLT, sedangkan yang kedua biasa disebut XSLFO (eXtensible Stylesheet Language:Formatting Object).
Hasil Keluaran XSLT bisa berupa HTML, Text file atau XML dengan format yang baru. Sebenarnya untuk menampilkan dokumen XML agar lebih menarik dilihat di browser bisa dilakukan oleh Cascade StyleSheet. CSS yang sering digunakan untuk memformat HTML bisa juga dipakai untuk XML. Akan tetapi CSS tidak mampu melakukan tugas tugas yang rumit seperti memformat angka desimal, menjumlah, menghitung rata-rata, menampilkan gambar, dan lain-lain. Dan untuk melakukan tugas- tugas itulah kita memerlukan XSLT.
XSLT dikembangkan oleh World Wide Web Consortium (W3C). Versi terbarunya adalah XSLT 2.0, yang mencapai status W3C recommendation pada 23 Januari 2007. Asalnya, XSLT adalah bagian dari W3C's Extensible Stylesheet Language (XSL), proyek yang juga menghasilkan XSL Formatting Objects dan XPath. Penyunting versi pertama adalah James Clark. Setelah usaha untuk menghasilkan versi 1.1 dibatalkan pada 2001, kelompok kerja XSL bergabung dengan kelompok kerja XQuery untuk menghasilkan XPath 2.0. XSLT 2.0, dikembangkan di bawah pimpinan Michael Kay, dikembangkan dari sini.
XSLT processing model melibatkan:
- satu atau lebih dokumen XML sumber
- satu atau lebih modul stylesheet XSLT
- XSLT template processing engine (processor)
- satu atau lebih dokumen hasil
Database
A. MySQL
MySQL pada awalnya diciptakan pada tahun 1979, oleh Michael "Monty" Widenius, seorang programmer komputer asal Swedia. Monty mengembangkan sebuah sistem database sederhana yang dinamakan UNIREG yang menggunakan koneksi low-level ISAM database engine dengan indexing. Pada saat itu Monty bekerja pada perusahaan bernama TcX di Swedia.
TcX pada tahun 1994 mulai mengembangkan aplikasi berbasis web, dan berencana menggunakan UNIREG sebagai sistem database. Namun sayangnya, UNIREG dianggagap tidak cocok untuk database yang dinamis seperti web.
TcX kemudian mencoba mencari alternatif sistem database lainnya, salah satunya adalah mSQL (miniSQL). Namun mSQL versi 1 ini juga memiliki kekurangan, yaitu tidak mendukung indexing, sehingga performanya tidak terlalu bagus.
Dengan tujuan memperbaiki performa mSQL, Monty mencoba menghubungi David Hughes (programmer yang mengembangkan mSQL) untuk menanyakan apakah ia tertarik mengembangkan sebuah konektor di mSQL yang dapat dihubungkan dengan UNIREG ISAM sehingga mendukung indexing. Namun saat itu Hughes menolak, dengan alasan sedang mengembangkan teknologi indexing yang independen untuk mSQL versi 2.
Dikarenakan penolakan tersebut, David Hughes, TcX (dan juga Monty) akhirnya memutuskan untuk merancang dan mengembangkan sendiri konsep sistem database baru. Sistem ini merupakan gabungan dari UNIREG dan mSQL (yang source codenya dapat bebas digunakan). Sehingga pada May 1995, sebuah RDBMS baru, yang dinamakan MySQL dirilis.
David Axmark dari Detron HB, rekanan TcX mengusulkan agar MySQL di ‘jual’ dengan model bisnis baru. Ia mengusulkan agar MySQL dikembangkan dan dirilis dengan gratis. Pendapatan perusahaan selanjutnya di dapat dari menjual jasa “support” untuk perusahaan yang ingin mengimplementasikan MySQL. Konsep bisnis ini sekarang dikenal dengan istilah Open Source.
Pada tahun 1995 itu juga, TcX berubah nama menjadi MySQL AB, dengan Michael Widenius, David Axmark dan Allan Larsson sebagai pendirinya. Titel “AB” dibelakang MySQL, adalah singkatan dari “Aktiebolag”, istilah PT (Perseroan Terbatas) bagi perusahaan Swedia
MySQL mempunyai kelebihan dan kekurangan:
Kelebihan :
- Mysql server bersifat open source dapat digunakan oleh perorangan atau instansi tanpa harus membelinya. Untuk versi komersial di tambah beberapa fitur dan dukungan technical support.
- Mendukung bahasa SQL (Stuctured Query Languange).
- Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
Kekurangan :
- Data yang ditangani belum besar.
- Untuk konesi ke bahasa pemrograman visual seperti VB,Delphi,dan foxpro ,MySQL kurang suport. Karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini menyebabkan MySQL jarang dipakai dalam program visual.
B. Database Oracle
Database Oracle adalah Database relasional yang terdiri dari kumpulan data dalam suatu sistem manajemen Database RDBMS. Perusahaan Software Oracle memasarkan jenis Database ini untuk bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer (platform).
Database Oracle ini pertama kali dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software Development Laboratories (SDL) pada tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation sampai sekarang. (wikipedia indonesia)
Database Oracle terdiri dari beberapa komponen berikut ini :
- Database, yang tersimpan dalam bentuk file pada satu disk atau lebih.
- Instance Oracle, terdiri dari background process dan shared memory area
- Server process, yang meng-handle user dan aplikasi yang telah terhubung dengan Database, dan juga mengatur memori dan temporary storage yang digunakan process tersebut.
- Oracle Net, yang memungkinkan komunikasi antara client application dengan Database oracle pada sebuah jaringan.
Kerjaan DBA pada umumnya sebagai berikut :
- Menginstal Software oracle
- Meng-create database oracle
- Upgrade database dan software oracle
- Menyalakan dan mematikan Database oracle
- Me-manage storage database
- Me-manage user dan security database
- Mengelola object Database seperti table, index, views, dll
- Backup dan recovery
- Monitoring dan tuning database
- Diagnosis dan reporting error-error yang kritikal
Oracle mempunya kelebihan dan kekurangan :
Kelebihan :
- Merupakan software DBMS yang handal dan memiliki kemampuan yang tinggi.
- Dapat menangani jumlah data dalam ukuran yang besar.
- Dapat mengolah data dalam ukuran besar dan mengolahnya dengan cepat sehingga didapatkan informasi yang akurat sesuai permintaan pengguna/user.
- Memiliki kemampuan akan fleksibilitas dan skalabilitas yang dapat memenuhi tuntutan akan data dan informasi yang bervolume besar dan terus-menerus bertambah besar
Kekurangan :
- Merupakan software DMBS yang paling mahal, paling rumit, dan paling sulit untuk dipelajari.
- Membutuhkan spesifikasi hardware yang tinggi untuk dapat menjalankan software DMBS Oracle supaya berjalan dengan stabil.
- Hanya diperuntukan bagi perusahaan berukuran besar, dan tidak cocok untuk perusahaan kecil maupun menengah.
DAFTAR PUSTAKA
- http://coretanmuvi.blogspot.com/2012/03/paralel-processing.html
- http://blog.rian.web.id/komputasi_dengan_parallel_processing.html
- http://id.wikipedia.org/wiki/Pemrograman_berorientasi_objek
- http://inibukan-blog.blogspot.com/2013/06/bahasa-pemrograman-processing.html
- http://oneviction.blogspot.com/2012/12/bahasa-pemrograman-basis-data.html
- http://id.wikipedia.org/wiki/Pemrograman_Fungsional
- http://id.wikipedia.org/wiki/Kategori:Bahasa_pemrograman_prosedural
- http://id.wikipedia.org/wiki/Microsoft_Access
Tidak ada komentar:
Posting Komentar