Overview of Free Pascal and Lazarus/id

From Free Pascal wiki
Jump to: navigation, search

Deutsch (de) English (en) español (es) français (fr) magyar (hu) Bahasa Indonesia (id) italiano (it) 日本語 (ja) 한국어 (ko) polski (pl) português (pt) русский (ru) slovenčina (sk) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

Free Pascal (FPC) adalah kompilator Pascal sumber terbuka dengan dua fitur utama: kompatibilitas Delphi tingkat tinggi dan ketersediaan berbagai platform, termasuk Windows, Mac OS X, dan Linux. Kompatibilitas Free Pascal dengan Delphi termasuk tidak hanya dukungan yang sama untuk bahasa pemrograman Object Pascal yang digunakan Delphi, tapi juga untuk banyak librari atas rutin bertenaga dan kelas yang baru dikenal Delphi. Ini termasuk unit familier seperti System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles dan Registry, yang disertakan dengan Free Pascal pada semua platform yang didukung. Free Pascal juga menyertakan unit seperti Windows, ShellAPI, BaseUnix, Unix dan DynLibs untuk mengakses spesifik fitur ke sistem operasi. Ada lusinan unit yang menjadi inti dari apa yang biasanya dirujuk sebagai Free Pascal run-time library (RTL).

Lazarus adalah sistem pengembangan sumber terbuka yang dibangun berdasarkan pada kompilator Free Pascal dengan menambahkan lingkungan pengembangan terintegrasi (IDE) yang menyertakan editor penerangan-sintaks kode dan desainer formulir visual, juga librari komponen yang sangat kompatibel dengan Visual Component Library (VCL) pada Delphi. Lazarus Component Library (LCL) menyertakan persamaan untuk banyak kontrol VCL familier seperti form, tombol, kotak teks dan seterusnya yang dipakai untuk membuat aplikasi yang memiliki antarmuka pengguna grafis (GUI).

Free Pascal dan Lazarus keduanya ditulis dalam Pascal. Kode sumber lengkap tersedia tidak hanya untuk kompilator Free Pascal dan Lazarus IDE, tapi juga untuk semua unit yang membuat Free Pascal RTL dan Lazarus LCL.

Seperti Delphi, Free Pascal dan Lazarus keduanya adalah piranti pemrograman keperluan-umum, berarti anda dapat mengembangkan berbagai program dengannya, termasuk yang berikut:

Aplikasi konsol

Aplikasi konsol tidak memiliki sebuah GUI. Sebaliknya biasanya dipakai untuk dijalankan dari konsol, membaca inputnya dari konsol, dan menulis outputnya ke konsol. Dalam Windows konsol biasanya dirujuk sebagai jendela command prompt. Dalam OS X dan Linux konsol dirujuk sebagai jendela terminal. Aplikasi konsol menyertakan hal seperti utilitas kecil seperti program Windows FC (file compare) atau perintah Unix cd dan cp. Aplikasi konsol juga bisa berupa program pembelah nomor bertenaga, membuat model, atau pemrosesan data yang tidak memerlukan GUI karena dimulai oleh program lain atau dari file batch (atau naskah shell pada unix/linux). Kompilator Free Pascal dan program utilitas yang disertakan dengannya semua aplikasi konsol, berarti ia dapat dijalankan dari konsol, file batch, atau dari Lazarus IDE.

Anda dapat membuat aplikasi konsol dengan tidak lebih dari sebuah editor teks dan kompilator Free Pascal. Anda tidak harus mempunyai Lazarus untuk mengembangkan aplikasi konsol. Akan tetapi, jika anda lebih menyukai lingkungan terintegrasi, anda dapat menggunakan Lazarus untuk membuat aplikasi konsol dan kemudian mengedit dan mengompilasi kode dalam Lazarus IDE.

Dynamically loadable libraries

Sebuah dynamically loadable library biasanya merupakan koleksi dari fungsi terkompilasi yang bisa dipanggil oleh program lain. Seperti disarankan namanya, librari tidak di-link ke dalam eksekutabel saat waktu-kompilasi, tetapi sebaliknya dipanggil saat-dijalankan. Dalam Windows, sebuah file librari memiliki ekstensi .dll (dynamic-link library, atau DLL). Dalam OS X, sebuah file librari memiliki ekstensi .dylib (dynamic shared library). Dalam Linux, sebuah file librari memiliki ekstensi .so (shared object library). Librari dipanggil secara dinamis umumnya dipakai untuk mengembangkan add-ons untuk program lain, untuk mengembangkan librari yang dapat dipanggil oleh program yang ditulis dalam bahasa lain seperti misalnya C dan C++, atau untuk partisi proyek besar ke dalam potongan yang tidak dilangkahi satu sama lain oleh para pengembang proyek. Windows sendiri dibuat dari ratusan DLL, seperti banyak aplikasi besar lainnya seperti OpenOffice.org.

Seperti aplikasi konsol, anda hanya memerlukan editor teks dan kompilator Free Pascal untuk mengembangkan librari, meskipun anda juga bisa membuat proyek Lazarus untuk librari dan mengembangkan librari dalam Lazarus IDE.

Pada Windows, DLL mempunyai reputasi kurang memuaskan karena lapisan kompleks dan tidak stabil. Ini banyak yang harus dilakukan dengan cara mereka yang kadang-kadang sudah terinstalasi daripada yang dilakukannya dengan DLL sendiri. Sebenarnya, karena mengirimkan informasi ke dan dari DLL biasanya dikerjakan dengan tipe standar, dan data sederhana (daripada dengan obyek spesifik-bahasa atau struktur), persyaratan ini memaksa pemrogram untuk lebih memperhatikan atas apa yang mereka lakukan. Jika dikerjakan dengan benar, ini bisa berhasil program lebih baik, lebih stabil.

Aplikasi GUI

Kebanyakan program yang kami pakai setiap hari adalah aplikasi GUI, termasuk pengolah kata, Web browsers, program spreadsheet, bahkan banyak piranti pengembangan. Lazarus dan Delphi keduanya adalah contoh bagus dari aplikasi GUI dengan fitur lengkap. Ketika mengembangkan aplikasi GUI dengan Lazarus, anda tidak hanya mengembangkan units dari kode Pascal, anda juga mendesain formulir yang berisi kontrol visual seperti tombol dan kotak daftar. Seperti Delphi, desain form dalam Lazarus dikerjakan secara visual. Properti kontrol dapat disetel dalam IDE atau dalam kode.

Karena kontrol LCL tersedia pada semua platform yang didukung, aplikasi GUI yang dikembangkan pada satu platfor (sebagai contoh, Windows) dapat dikompilasi pada platform lain (misalnya, OS X atau Linux) tanpa perubahan apapun pada desain form atau file kode form.