Dezvoltat de | Embarcadero Technologies ( în ) |
---|---|
Prima versiune | 1995 |
Ultima versiune | 10.4.2 Sydney (24 februarie 2021) |
Starea proiectului | Activ |
Scris in | obiect pascal - delphi |
Sistem de operare | Microsoft Windows |
Citiți formatele | Borland Developer Studio Project ( d ) , Delphi Project ( d ) , Delphi Project source ( d ) , Delphi Project source (with rem) ( d ) , Deployment Manager configuration ( d ) , Delphi Package (with rem) ( d ) , Delphi Pachet ( d ) , Borland Delphi - C ++ Builder Form (var.1) ( d ) , Borland Delphi - C ++ Builder Form (var.2) ( d ) , Borland Delphi - C ++ Builder Form (var. 3) ( d ) și Borland Delphi - C ++ Builder Form (var.4) ( d ) |
Formate scrise | Borland Developer Studio Project ( d ) , Delphi Project ( d ) , Delphi Project source ( d ) , Delphi Project source (with rem) ( d ) , Deployment Manager configuration ( d ) , Delphi Package (with rem) ( d ) , Delphi Pachet ( d ) , Borland Delphi - C ++ Builder Form (var.1) ( d ) , Borland Delphi - C ++ Builder Form (var.2) ( d ) , Borland Delphi - C ++ Builder Form (var. 3) ( d ) și Borland Delphi - C ++ Builder Form (var.4) ( d ) |
Limbi | Engleză , franceză , germană și japoneză |
Tip | Mediu de dezvoltare integrat |
Licență | Proprietar |
Site-ul web | www.embarcadero.com/products/delphi |
Cronologia versiunilor
Delphi este atât un limbaj de programare orientat pe obiecte , cât și un mediu de dezvoltare integrat (IDE) pentru acel limbaj.
Delphi IDE este un IDE proprietar bazat pe Windows creat în 1995 de Borland . În acel moment, crearea de programe grafice în Windows se făcea în cea mai mare parte folosind fie lanțul de compilare Visual C ++ , fie Visual Basic RAD . Primul instrument fiind excesiv de complex și al doilea destul de nestructurat, Delphi a apărut apoi ca o alternativă viabilă pentru mulți dezvoltatori care doreau să creeze programe pentru Windows.
În 2001 , Borland a lansat o versiune Linux a Delphi numită Kylix , care nu a îndeplinit succesul așteptat de editor.
Din 2011, Embarcadero a introdus cadrul Firemonkey în plus față de Biblioteca de componente vizuale (VCL) (încă orientată spre Windows), care a făcut treptat posibilă compilarea acelorași programe pe alte platforme.
În prezent, Delphi vă permite să generați executabile Windows, macOS, iOS, Android și Linux din programe scrise în Object Pascal sub Windows.
Delphi încorporează o versiune orientată obiect a limbajului Pascal : Object Pascal , redenumită limbajul de programare Delphi cu modificările făcute de Borland. Object Pascal al lui Delphi are mai multe avantaje: tastarea puternică , controlul strict al compilatorului pentru a evita erorile de memorie, depășirea, gestionarea integrată a șirurilor și matricelor dinamice etc. Compilarea se face doar într-o singură trecere și nu există nicio separare între implementare și interfață ca în C sau C ++: generarea unui proiect Delphi este, prin urmare, foarte rapidă, care are Când a fost lansat, instrumentul a devenit rapid faimos pentru timpurile sale de compilare record.
Deși Object Pascal introduce o multitudine de concepte interesante și inovatoare (multe au fost preluate cu C # ), acesta suferă de slăbiciuni cunoscute. De exemplu, nu permite unele caracteristici ale POO, cum ar fi moștenirea multiplă a claselor . Unele caracteristici precum supraîncărcarea operatorului și genericitatea nu au fost introduse până târziu (respectiv cu Delphi 2005 și Delphi 2009). În plus, rudenia sa cu Pascal respinge mulți programatori mai obișnuiți cu stiluri de programare apropiate de Java sau C. În cele din urmă, nu este nici standardizat, nici administrat de un comitet independent: proprietatea Embarcadero, editorul este singurul care poate decide viitorul și adăugarea de noi funcționalități la limbă.
Mediul de dezvoltare se bazează pe un editor de interfață grafică asociat cu un editor de cod sursă. Își datorează succesul ușurinței sale de utilizare pentru dezvoltarea de aplicații grafice și / sau baze de date. A fost adesea comparat cu Visual Basic de la Microsoft pentru această ușurință de dezvoltare. Se poate spune chiar că printr-o mișcare amuzantă de echilibru și persoană, VB a influențat Delphi, care la rândul său a influențat VB ( Anders Hejlsberg în timpul său la Microsoft).
Mediul de dezvoltare auto-generează cod pentru a facilita munca programatorului. Păstrează o corespondență automată între vizualizarea de proiectare (fereastra pe care programatorul o construiește prin renunțarea la componente grafice) și editorul de cod (vizualizarea care afișează codul sursă care va crea aceste componente în timpul rulării). Datele specifice componentelor sunt stocate în fișiere de extensie .DFM în timp ce codul sursă Object Pascal este salvat în fișiere de extensie .PAS. În timp ce alte limbi (cum ar fi C # cu Winforms) generează instrucțiunile necesare pentru a crea componentele interfeței și le injectează într-o secțiune a codului sursă al programului, Delphi separă datele descrierii statice de obiectele interfeței., La fel ca XAML și se bazează pe rutinele VCL pentru a citi și prezenta interfața în timpul rulării.
Interfața de dezvoltare permite adăugarea de componente terțe (grafică sau nu) printr-un sistem component. Modularitatea este obținută la proiectare, dar poate fi exploatată și la runtime printr-un sistem de încărcare dinamică a pachetelor de runtime , Borland extinzând conceptul de biblioteci partajate și formatul DLL Windows prin introducerea unui model propriu pentru înregistrarea dinamică și exportul claselor între module. Același sistem va fi preluat de Microsoft în Visual Basic cu formatul VBX , apoi la nivel de sistem cu componentele COM și ActiveX .
Următorul cod arată ce generează Delphi atunci când creează o aplicație goală. Fereastra de pe ecran este reprezentată de o clasă ( TForm1 ) care va fi instanțiată la runtime și a cărei instanță va fi atribuită variabilei Form1 . Celelalte componente sunt , de asemenea , definite ca clase al căror cod sursă este stocat în fișierele descrise în utilizările clauza unității:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) private { Déclarations privées } public { Déclarations publiques } end; var Form1: TForm1; implementation {$R *.dfm} endCu toate acestea, acesta este cam tot ceea ce generează Delphi (altul decât codul pentru articolele plasate prin IDE ). Dacă un programator experimentat dorește să genereze clase eficient pentru a-și proiecta și structura mai bine datele, Borland oferă alte instrumente bazate pe UML : ModelMaker de la ModelMakerTools care, la rândul său, generează tot codul de interfață al unei clase. Precum și aplică cu ușurință modele de proiectare , sau Together, un produs Borland rezultat din achiziționarea TogetherSoft.
Delphi integrează, de asemenea, mulți vrăjitori pentru crearea de proiecte sau fișiere, în funcție de ceea ce doriți să faceți. Puteți să le adăugați și să le distribuiți liber.
Kylix este un produs foarte apropiat de Delphi (același principiu, aceeași interfață) care funcționează sub Linux și care permite crearea de programe pentru acest sistem. Același cod sursă poate fi compilat sub Linux și Windows (respectiv cu Kylix și Delphi) datorită utilizării bibliotecii de obiecte CLX care se bazează pe biblioteca grafică Qt urmând aceleași principii ca și biblioteca VCL. Astăzi Borland a abandonat dezvoltarea Kylix, dar biblioteca CLX rămâne prezentă în noile versiuni ale Delphi.
Lazarus este un proiect IDE gratuit pentru Free Pascal . Copierea pe widget și funcțiile din apropierea instrumentului Delphi (și fiind utilizată ca aceasta), software-ul, asociat cu Free Pascal, permite proiectarea de proiecte substanțial compatibile cu Delphi. Folosind câteva directive de compilare, același cod orientat spre procesare (care nu utilizează direct funcții GUI) poate fi compilat sub Delphi, Kylix și Free-Pascal.
Delphi beneficiază de o bibliotecă de componente vizuale și non-vizuale, Biblioteca de componente vizuale (VCL), care este similară ca concept cu Visual Studio MFC . VCL permite, printre altele, să deseneze rapid o aplicație grafică, ascunzând apeluri către API-uri Windows complexe. De la Delphi 1, VCL a fost îmbunătățit de editorul său cu fiecare nouă versiune a Delphi, asigurând compatibilitate aproape totală în interfața bibliotecii, care permite migrarea proiectelor în timp ce limitează rescrierea codului.
C ++ Builder folosește aceeași bibliotecă de componente și include un „traducător” de la Object Pascal la C ++ , cel puțin un C ++ conținând extensii specifice Borland de înțeles de către fratele C ++ al Delphi. Astfel, orice cod Delphi poate fi exploatat cu C ++ Builder.
Firemonkey a fost introdus în Delphi în 2011 cu versiunea XE2. Este o alternativă la VCL pentru dezvoltarea multiplatformă.
În întregime grafică, vă permite să gestionați 2D, 3D, animații, filtre și efecte grafice pe toate componentele unei interfețe grafice. Se integrează , de asemenea, Box2D și Box3D biblioteci , permițându - vă să adăugați un motor de fizica la orice componentă vizuală a unei forme, indiferent dacă acestea sunt câmpuri de intrare sau imagini.
În cazul în care VCL oferă acces la toate caracteristicile prezente în Windows, Firemonkey (prescurtat ca FMX) permite accesul la API-urile platformelor țintă pe care compilăm.
În versiunea 10.2 Tokyo, Delphi (și C ++ Builder ) pot crea astfel programe compilate nativ în modul consolă sau cu o interfață grafică pentru Windows, OS X, iOS și Android.
Delphi vă permite să generați programe consolă sau daemon pentru Linux, cum ar fi interfețe grafice cu FMX Linux, care este inclusă din iunie 2019 în versiunea 10.3.1 Rio și mai târziu.
Delphi, în funcție de nivelul de licență, integrează, de asemenea, instrumente, proiecte și componente client / server, bază de date, simplificând dialogul cu senzorii IoT , permițând crearea și accesarea API-urilor REST, site-urilor Internet: FireDAC , EMS ( RAD Server ), Datasnap , Webbroker , tehnologii bluetooth (BT, BT LE, baliză), componente http native ale fiecărei platforme, App Tethering , IntraWeb, tehnologie ThingConnect (componente IoT) etc.
Din a doua versiune, ținta era Windows pe 32 de biți (Windows 95, NT etc.). Software-ul nu se schimbă radical între fiecare versiune, diferența se face mai mult prin adăugarea de componente care pot fi utilizate în programe și includerea de noi tehnologii.
Fără a găsi un cumpărător, Borland a creat în 2006 CodeGear (ro) , o entitate dedicată IDE-urilor, la care participă întreaga echipă de dezvoltare Delphi, C ++ Builder și JBuilder . Inițial, CodeGear aparține Borland, dar are propriile resurse destinate creării de instrumente pentru dezvoltatori ( „Unde dezvoltatorii contează” ).
După doi ani de cercetare, compania Embarcadero Technologies (ro) a cumpărat CodeGear pentru 23 de milioane de dolari. Din motive de coerență, bazele de date de la Embarcadero sunt grupate împreună sub numele DataBaseGear. CodeGear continuă să funcționeze ca o companie privată sub conducerea actualului CEO al Embarcadero. Borland, sau ceea ce a rămas din el, va fi achiziționat de Micro Focus International în 2009 pentru 75 de milioane de dolari.
Limbaj: suport pentru genericitate . Acest lucru reduce semnificativ liniile de cod care trebuie introduse de dezvoltator. Suport pentru metode anonime, permițând, printre altele, realizarea refactorizării mai reușite.
Au fost introduse noi componente vizuale, dintre care cea mai notabilă este implementarea interfeței de utilizator Ribbon folosită de Microsoft de la Microsoft Office 2007 și Windows 7 .
Embarcadero a fost achiziționat în octombrie 2015 de Idera, o companie specializată în baze de date.
Limbajul Delphi este folosit mult mai puțin decât cel mai comun competitor al său, C ++, dar totuși apare de obicei printre clasamentele de popularitate ale limbajelor de calculator. De exemplu, indicele TIOBE menționează Delphi printre cele 20 de limbi cercetate cel mai adesea, fără întrerupere din 2001. Delphi este utilizat pentru realizarea de software de afaceri specifice, dar și pentru produse computerizate standard precum:
Cu ocazia aniversării a 26 de ani de la Delphi (14 februarie 2021) Embarcadero și-a relansat cazurile pentru clienți în care sunt prezentate câteva sute de aplicații software și mobile dezvoltate cu Delphi.