Utviklet av | Embarcadero Technologies ( in ) |
---|---|
Første versjon | 1995 |
Siste versjon | 10.4.2 Sydney (24. februar 2021) |
Prosjekt status | Aktiv |
Skrevet i | pascal objekt - delphi |
Operativsystem | Microsoft Windows |
Les formater | 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 Pakke ( 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 ) og Borland Delphi - C ++ Builder Form (var.4) ( d ) |
Skriftlige formater | 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 Pakke ( 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 ) og Borland Delphi - C ++ Builder Form (var.4) ( d ) |
Språk | Engelsk , fransk , tysk og japansk |
Type | Integrert utviklingsmiljø |
Tillatelse | Eieren |
Nettsted | www.embarcadero.com/products/delphi |
Kronologi av versjoner
Delphi er både et objektorientert programmeringsspråk og et integrert utviklingsmiljø (IDE) for det språket.
Delphi IDE er en proprietær Windows- basert IDE opprettet i 1995 av Borland . På den tiden ble oppretting av grafikkprogrammer i Windows for det meste gjort ved hjelp av enten Visual C ++ kompileringskjeden eller Visual Basic RAD . Det første verktøyet var for komplekst og det andre ganske ustrukturert, Delphi fremsto da som et levedyktig alternativ for mange utviklere som ønsket å lage programmer for Windows.
I 2001 , Borland gitt ut en Linux- versjon av Delphi kalles Kylix , som ikke oppfyller suksess forventet av utgiveren.
Siden 2011 har Embarcadero introdusert Firemonkey-rammeverket i tillegg til Visual Component Library (VCL) (fremdeles Windows-orientert) som gradvis har gjort det mulig å kompilere de samme programmene på andre plattformer.
For øyeblikket lar Delphi deg generere kjørbare Windows-, macOS-, iOS-, Android- og Linux-programmer fra programmer skrevet i Object Pascal under Windows.
Delphi bygger inn en objektorientert versjon av Pascal-språket : Object Pascal , omdøpt til Delphi-programmeringsspråk med endringer gjort av Borland. Delphis Object Pascal har flere fordeler: sterk skriving , streng kontroll av kompilatoren for å unngå minnefeil, overløp, integrert styring av strenger og dynamiske arrays, etc. Sammensetningen gjøres bare i ett enkelt pass, og det er ingen skille mellom implementeringen og grensesnittet som i C eller C ++: genereringen av et Delphi-prosjekt er derfor veldig raskt, som har Når det ble utgitt, ble verktøyet raskt kjent for sin rekordtid.
Selv om Object Pascal introduserer et mangfold av interessante og innovative konsepter (mange har blitt plukket opp med C # ), lider det av kjente svakheter. For eksempel tillater det ikke noen funksjoner i OOP, slik som flere arv av klasser . Noen funksjoner som overbelastning av operatører og generisitet ble ikke introdusert før sent (henholdsvis med Delphi 2005 og Delphi 2009). I tillegg er slektskapet med Pascal frastøt mange programmerere som er mer vant til programmeringsstiler nær Java eller C. Til slutt er det verken standardisert eller administrert av en uavhengig komité: Embarcaderos eiendom, forleggeren er den eneste som kan bestemme fremtiden og tillegg av nye funksjoner til språket.
Utviklingsmiljøet er basert på en grafisk grensesnitteditor tilknyttet en kildekodeditor. Det skylder suksessen til brukervennligheten for å utvikle grafikk- og / eller databaseapplikasjoner. Det har ofte blitt sammenlignet med Visual Basic fra Microsoft for denne lette utviklingen. Man kan til og med si at ved en morsom bevegelse av balanse og person påvirket VB Delphi som igjen påvirket VB ( Anders Hejlsberg i løpet av sin tid i Microsoft).
Utviklingsmiljøet genererer selv kode for å lette arbeidet til programmereren. Den opprettholder en automatisk korrespondanse mellom designvisningen (vinduet som programmereren bygger ved å slippe grafiske komponenter) og kodeditoren (visningen som viser kildekoden som vil opprette disse komponentene ved kjøretid). Komponentspesifikke data lagres i .DFM-utvidelsesfiler mens Object Pascal- kildekoden er lagret i .PAS-utvidelsesfiler. Mens andre språk (som C # med Winforms) genererer instruksjonene som trengs for å lage grensesnittkomponentene og injisere dem i en del av programmets kildekode, skiller Delphi de statiske beskrivelsesdataene fra grensesnittobjektene., Akkurat som XAML , og er avhengig av VCL- rutiner for å lese og presentere grensesnittet ved kjøretid.
Utviklingsgrensesnittet tillater tillegg av tredjepartskomponenter (grafikk eller ikke) via et komponentsystem. Modularitet oppnås ved design, men kan også utnyttes ved kjøretid via et system for dynamisk lasting av kjøretidspakker , Borland har utvidet konseptet med delte biblioteker og Windows DLL- format ved å introdusere en proprietær modell for opptak dynamisk og eksportere klasser mellom moduler. Det samme systemet vil bli overtatt av Microsoft under Visual Basic med VBX- format , deretter hele systemet med COM- og ActiveX- komponentene .
Følgende kode viser hva Delphi genererer når du oppretter en tom applikasjon. Vinduet på skjermen er representert av en klasse ( TForm1 ) som vil bli instantiert ved kjøretid, og hvis forekomst vil bli tildelt Form1- variabelen . De andre komponenter er også defineres som klasser som kilde kode er lagret i filene som er beskrevet i anvendelser leddet av enheten:
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} endDette er imidlertid stort sett alt Delphi genererer (annet enn koden for varer plassert gjennom IDE ). Hvis en erfaren programmerer ønsker å generere klasser effektivt for å bedre designe og strukturere dataene sine, tilbyr Borland andre UML- baserte verktøy : ModelMaker fra ModelMakerTools som igjen genererer all grensesnittkoden til en klasse. I tillegg til å enkelt bruke designmønstre , eller Together, et Borland-produkt som følge av oppkjøpet av TogetherSoft.
Delphi integrerer også mange veivisere for å lage prosjekter eller filer, avhengig av hva du vil gjøre. Du kan legge til dine egne og distribuere dem fritt.
Kylix er et produkt veldig nært Delphi (samme prinsipp, samme grensesnitt) som fungerer under Linux og som gjør det mulig å lage programmer for dette systemet. Den samme kildekoden kan kompileres under Linux og Windows (henholdsvis med Kylix og Delphi) takket være bruken av CLX- objektbiblioteket som er basert på Qt- grafikkbiblioteket ved å følge de samme prinsippene som VCL-biblioteket. I dag har Borland forlatt utviklingen av Kylix, men CLX-biblioteket er fortsatt til stede i nye versjoner av Delphi.
Lazarus er et gratis IDE-prosjekt for Free Pascal . Kopiering til widgeten og funksjonene i nærheten av Delphi-verktøyet (og brukes som denne), lar programvaren assosiert med Free Pascal, designe prosjekter som er vesentlig kompatible med Delphi. Ved hjelp av noen få kompileringsdirektiver kan den samme behandlingsorienterte koden (ikke direkte ved hjelp av GUI-funksjoner) kompileres under Delphi, Kylix og Free-Pascal.
Delphi drar nytte av et bibliotek med visuelle og ikke-visuelle komponenter, Visual Component Library (VCL), som i konsept ligner Visual Studio MFC-er . VCL lar blant annet raskt tegne et grafisk program, ved å skjule anrop til komplekse Windows API-er. Siden Delphi 1 har VCL blitt forbedret av redaktøren med hver nye versjon av Delphi, noe som sørger for nesten total kompatibilitet i biblioteksgrensesnittet, noe som gjør at prosjekter kan overføres mens begrensing av kodeskriving begrenses.
C ++ Builder bruker samme bibliotek med komponenter og inkluderer en "oversetter" fra Object Pascal til C ++ , i det minste en C ++ som inneholder utvidelser som er spesifikke for Borland som er forståelig av C ++ - broren til Delphi. Dermed kan enhver Delphi-kode utnyttes med C ++ Builder.
Firemonkey ble introdusert i Delphi i 2011 med XE2-versjonen. Det er et alternativ til VCL for utvikling av flere plattformer.
Helt grafisk, lar deg administrere 2D, 3D, animasjoner, filtre og grafiske effekter på alle komponentene i et grafisk grensesnitt. Den integrerer også Box2D og Box3D- bibliotekene, slik at du kan legge til en fysikkmotor til alle visuelle komponenter i et skjema, enten det er inndatafelt eller bilder.
Der VCL gir tilgang til alle funksjonene som er tilstede i Windows, gir Firemonkey (forkortet FMX) tilgang til API-ene til målplattformene vi kompilerer på.
I versjon 10.2 Tokyo kan Delphi (og C ++ Builder ) altså lage programmer som er kompilert naturlig i konsollmodus eller med et grafisk grensesnitt for Windows, OS X, iOS og Android.
Delphi lar deg generere konsoll- eller demonprogrammer for Linux, for eksempel grafiske grensesnitt med FMX Linux, som er inkludert siden juni 2019 i versjon 10.3.1 Rio og senere.
Avhengig av lisensnivå integrerer Delphi også verktøy, prosjekter og klient- / serverkomponenter, database, forenkler dialogen med IoT- sensorer , slik at du kan opprette og få tilgang til REST API-er, nettsteder: FireDAC , EMS ( RAD Server ), Datasnap , Webbroker , Bluetooth-teknologier (BT, BT LE, beacon), innfødte http-komponenter på hver plattform, App Tethering , IntraWeb, ThingConnect- teknologi (IoT-komponenter) osv.
Fra den andre versjonen var målet 32-biters Windows (Windows 95, NT, etc.). Programvaren endres ikke radikalt mellom hver versjon, forskjellen gjøres mer ved tillegg av komponenter som kan brukes i programmene og inkludering av ny teknologi.
Borland fant ikke en kjøper og opprettet i 2006 CodeGear (en) , en enhet dedikert til IDEer, der hele utviklingsteamet til Delphi, C ++ Builder og JBuilder deltar . I utgangspunktet tilhører CodeGear Borland, men har egne ressurser beregnet på å lage verktøy for utviklere ( "Hvor utviklere betyr noe" ).
Etter to års forskning kjøpte selskapet Embarcadero Technologies (en) CodeGear for 23 millioner dollar. For å få konsekvens er databasene fra Embarcadero gruppert under navnet DataBaseGear. CodeGear fortsetter å operere som et privat selskap under ledelse av nåværende administrerende direktør i Embarcadero. Borland, eller det som var igjen av det, vil bli kjøpt opp av Micro Focus International i 2009 for 75 millioner dollar.
Språk: støtte for generisitet . Dette reduserer kodelinjene som skal legges inn av utvikleren betydelig. Støtte for anonyme metoder, som blant annet tillater mer vellykket refactoring .
Nye visuelle komponenter har blitt introdusert, og det mest bemerkelsesverdige er implementering av Ribbon- brukergrensesnittet som brukes av Microsoft fra Microsoft Office 2007 og Windows 7 .
Embarcadero ble kjøpt i oktober 2015 av Idera, et selskap som spesialiserer seg på databaser.
Delphi-språket brukes mye mindre enn den vanligste konkurrenten, C ++, men vises likevel som en av popularitetsrangeringene til dataspråk. For eksempel nevner TIOBE-indeksen Delphi blant de 20 språkene som ofte er undersøkt, uten avbrudd siden 2001. Delphi brukes til realisering av spesifikk forretningsprogramvare, men også for standard dataprodukter som:
I anledning Delphis 26-årsjubileum (14. februar 2021) relanserte Embarcadero sine kundesaker der flere hundre programvare- og mobilapplikasjoner utviklet med Delphi presenteres.