Overview of Free Pascal and Lazarus/it

From Free Pascal wiki
Jump to: navigation, 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) è un compilatore Pascal con due notevoli caratteristiche: un alto grado di compatibilità con Delphi e la disponibilità per una varietà di piattaforme, incluso Windows, Mac OS X e Linux. La compatibilità di Free Pascal con Delphi include non solo il supporto per lo stesso linguaggio di programmazione orientato agli oggetti che utilizza Delphi, ma anche per molte delle stesse librerie di potenti ruotines e classi per le quali Delphi è conosciuto. Ciò include units familiari quali System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles e Registry, che sono incluse in Free Pascal in tutte le piattaforme supportate. Free Pascal include anche units come Windows, ShellAPI, BaseUnix, Unix e DynLibs per l'accesso a caratteristiche specifiche di ogni sistema operativo supportato. Questa dozzina di units costituiscono il core di quella che solitamente viene chiamata libreria di run-time di Free Pascal (RTL).

Lazarus è una sistema di sviluppo open source costruito sul compilatore Free Pascal con l'aggiunta di un sistema di sviluppo integrato (IDE) che include un editor di codice con evidenziatore di sintassi e un editor visuale di form, così come un libreria di componenti altamente compatibile con la Libreria di Componenti Visuali di Delphi (VCL). La Lazarus Component Library (LCL) include gli equivalenti per molti dei familiari controlli VCL quali form, tasti, caselle di testo e così via, che sono usati per creare applicazioni dotate di interfaccia grafica (GUI).

Sia Free Pascal che Lazarus sono scritti in Pascal. Il codice sorgente completo è disponibile non solo per il compilatore Free Pascal e l'IDE di Lazarus, ma anche per tutte le unità che costituiscono la RTL di Free Pascal e la LCL di Lazarus.

Come Delphi anche Free Pascal e Lazarus sono entrambi strumenti di programmazione ad orientamento generico, ciò significa che con essi si possono sviluppare un'ampia varietà di programmi incluso i seguenti:

Applicazioni per Terminale (Console)

Le applicazioni per terminale non hanno una GUI. Esse sono normalmente lanciate dalla console, leggono i loro input alla console, scrivono i loro output nella console. In windows la console è il prompt dei comandi ( finestra dos). In OS X e Linux la console è la finestra Terminale. Le applicazioni per console comprendono cose tipo piccole utilità quali in Windows FC ( comparazione di files) oppure i comandi cp e cd in unix/linux. Le applicazioni da terminale possono inoltre essere potenti applicazioni numeriche, modelli,o gestioni di dati che non necessitano ingombranti GUI in quanto esse sono lanciate da altri programmi o mediante batch o script o dalla IDE Lazarus. Si possono creare Applicazioni per Terminale mediante nient'altro che un semplice editor di testo e il compilatore Free Pascal. Non è necessario usare Lazarus per svilupparle. Tuttavia se preferite lavorare in un sistema integrato, potete usare Lazarus per creare progetti per Applicazioni Console quindi compilarne il codice in Lazarus IDE.

DLL Dynamically loadable libraries

Una DLL o libreria caricabile dinamicamente è normalmente una collezione di funzioni compilate che possono essere richiamate da altri programmi. Come il nome suggerisce , la libreria non è collegata all'interno dell'eseguibile al momento della compilazione, ma è invece caricata al momento dell'esecuzione del programma. In windows una file libreria ha una estensione .dll. In OS X, un file libreria ha un'estensione .dylib (dynamic shared library). In Linux un file libreria ha un'estensione .so ( shared object library). Le Librerie caricabili dinamicamente sono tipicamente usate per sviluppare add-ons per altri programmi, per sviluppare librerie che possono essere richiamate da programmi scritti in altri linguaggi quali C e C++, o per suddividere grossi progetti in parti in modo da non dover ricompilare ciascuna altra parte ( programmazione ad oggetti). Windows stesso è composto da migliaia di dll cosi come altre grosse applicazioni quali OpenOffice.org.

Come per le applicazioni per Console è necessario solo un editor di testo a il compilatore Free Pascal per sviluppare una libreria, tuttavia si possono creare progetti di librerie mediante Lazarus.

In windows le dll hanno la reputazione di essere complesse e di instabili.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.


Applicazioni con interfaccia grafica utente GUI

La maggior parte dei programmi che usiamo quotidianamente sono applicazioni GUI, inclusi i word processor, i WEB browser, i fogli elettronici, e molti strumenti di sviluppo. Lazarus e Delphi sono ottimi esempi di complete applicazioni GUI. Quando sviluppiamo una applicazione GUI con Lazarus non solo sviluppiamo units di codice PASCAL , ma disegniamo anche moduli contenenti controlli visivi quali tasti e caselle di scelta. Come con Delphi i moduli creati con Lazarus sono creati in modo visivo. Le proprietà dei controlli possono essere settate mediante IDE o mediante scrittura di codice.

Dal momento in cui i controlli LCL sono disponibili in tutte le piattaforme supportate, una applicazione GUI sviluppata in una piattaforma ( per esempio Windows) può essere ricompilata in un'altra piattaforma ( per esempio LINUX o OS X ) senza dover fare cambiamenti al disegno dei moduli o dei files di codice.


Lazarus Tutorial