Overview of Free Pascal and Lazarus/id

From Free Pascal wiki
Revision as of 20:07, 29 September 2007 by Adezm (talk | contribs) (New page: {{Overview of Free Pascal and Lazarus}} Free Pascal (FPC) adalah kompilator Pascal sumber terbuka dengan dua fitur utama: kompatibilitas Delphi tingkat tinggi dan ketersediaan berbagai pl...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Deutsch (de) English (en) español (es) suomi (fi) 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

Console apps don't have a GUI. Instead they are usually launched from the console, read their input from the console, and write their output to the console. In Windows the console is usually referred to as a command prompt window. In OS X and Linux the console is referred to as a terminal window. Console apps include things like small utilities such as the Windows FC (file compare) program or the Unix cd and cp commands. Console apps can also be powerful number crunching, modeling, or data processing programs that don't need a fancy GUI because they're started by other programs or from batch files (or shell scripts on unix/linux). The Free Pascal compiler and the utility programs included with it are all console apps, meaning they can be run from the console, a batch file, or from the Lazarus IDE.

You can create a console app with no more than a text editor and the Free Pascal compiler. You don't have to use Lazarus to develop console apps. However, if you prefer to work in an integrated environment, you can use Lazarus to create a project for the console app and then edit and compile the code in the Lazarus IDE.

Dynamically loadable libraries

A dynamically loadable library is usually a collection of compiled functions that can be called by other programs. As the name suggests, the library is not linked into your executable at compile-time, but instead is loaded at run-time. In Windows, a library file has a .dll extension (dynamic-link library, or DLL). In OS X, a library file has a .dylib extension (dynamic shared library). In Linux, a library file has an .so extension (shared object library). Dynamically loadable libraries are typically used to develop add-ons for other programs, to develop libraries that can be called by programs written in other languages such as C and C++, or to partition large projects into chunks so that the project's developers don't step on each other's toes. Windows itself is made up of hundreds of DLLs, as are many other large applications such as OpenOffice.org.

Like console apps, you only need a text editor and the Free Pascal compiler to develop a library, although you can also create a Lazarus project for the library and develop the library in the Lazarus IDE.

On Windows, DLLs have an undeserved reputation for being overly complex and unstable. This has more to do with the way they've sometimes been installed than it does with DLLs themselves. Actually, since passing information to and from DLLs is normally done with standard, simple data types (rather than with language-specific objects or structures), this requirement forces programmers to pay more attention to what they're doing. If done right, this can result in better, more stable programs.

Aplikasi GUI

Most of the programs we use daily are GUI apps, including word processors, Web browsers, spreadsheet programs, even many development tools. Lazarus and Delphi are both good examples of full-featured GUI apps. When developing a GUI app with Lazarus, not only do you develop units of Pascal code, you also design forms containing visual controls such as buttons and list boxes. Like Delphi, form design in Lazarus is done visually. Control properties can be set in the IDE or in code.

Since the LCL controls are available on all supported platforms, a GUI app developed on one platform (for example, Windows) can be compiled on another platform (for example, OS X or Linux) without any changes to the form design or the form code files.