Aký jazyk sa používa v delphi. O programovaní a Delphi

Webstránka:

Delphi(Delphi, vyslovené /ˈdɛlˌfi:/ počúvať)) je imperatívny, štruktúrovaný, objektovo orientovaný programovací jazyk, dialekt Object Pascal. Počnúc vývojovým prostredím Delphi 7.0 začal Borland používať názov Delphi na označenie jazyka Object Pascal v oficiálnych dokumentoch. Od roku 2007 začal jazyk Delphi (odvodený od objektu Pascal) žiť svojím nezávislým životom a prešiel rôznymi zmenami spojenými s modernými trendmi (napríklad s vývojom platformy .NET) vo vývoji programovacích jazykov: pomocníci triedy, preťaženie operátora a objavili sa ďalšie.

Cieľová platforma

Spočiatku bolo vývojové prostredie určené výhradne pre vývoj aplikácií Microsoft Windows, potom bolo implementované aj pre platformy Linux (ako Kylix), avšak po vydaní Kylix 3 v roku 2002 bol jeho vývoj prerušený a krátko na to bola oznámená podpora pre Microsoft .NET.

Implementácia vývojového prostredia projektu Lazarus (Free Pascal, skompilovaný v režime kompatibility Delphi) umožňuje jeho použitie na vytváranie aplikácií Delphi pre platformy ako Linux, Mac OS X a Windows CE.

Objavili sa aj pokusy použiť tento jazyk v projektoch GNU (napríklad GNU Notepad) a napísať kompilátor pre GCC.

História jazyka

Object Pascal je výsledkom vývoja jazyka Turbo Pascal, ktorý sa zase vyvinul z jazyka Pascal. Pascal bol úplne procedurálny jazyk Turbo Pascal, počnúc verziou 5.5, do Pascalu pridal objektovo orientované vlastnosti a do Object Pascalu dynamickú identifikáciu dátových typov s možnosťou prístupu k metadátam triedy (teda k popisu tried a ich členov) v kompilovanom kóde, nazývanom aj introspekcia - táto technológia je označená ako RTTI. Keďže všetky triedy dedia funkcie základnej triedy TObject, dá sa naň previesť ľubovoľný ukazovateľ na objekt a potom použiť metódu ClassType a funkciu TypeInfo, ktoré poskytnú introspekciu.

Ďalšou charakteristickou črtou Object Pascal z C++ je, že objekty sú štandardne umiestnené v dynamickej pamäti. Môžete však prepísať virtuálne metódy NewInstance a FreeInstance triedy TObject. Takže absolútne každá trieda môže splniť „túžbu“ „kde chcem, tam budem ležať“. „Multi-grouping“ je organizovaný podľa toho.

Object Pascal (Delphi) je výsledkom funkčného rozšírenia Turbo Pascalu.

Delphi malo obrovský vplyv pri vytváraní konceptu jazyka pre platformu .NET. Mnohé z jeho prvkov a koncepčných riešení boli zahrnuté v C#. Jedným z dôvodov je prestup Andersa Hejlsberga, jedného z popredných vývojárov Delphi, z Borland Ltd. v spoločnosti Microsoft Corp.

  • Verzia 8 je schopná generovať bajtový kód výhradne pre platformu .NET. Ide o prvé prostredie zamerané na vývoj viacjazyčných aplikácií (len pre platformu .NET);
  • Nasledujúce verzie (označené skôr rokmi vydania než sériovými číslami ako predtým) môžu produkovať Win32 aplikácie aj bytecode pre platformu .NET.

V novembri toho istého roku sa však rozhodlo o upustení od predaja podnikania IDE. O vývoj IDE produktov sa však teraz bude starať nová spoločnosť – CodeGear, ktorú bude kompletne finančne kontrolovať Borland.

V auguste 2006 vydal Borland odľahčenú verziu RAD Studio pod názvom Turbo: Turbo Delphi (pre Win32 a .NET), Turbo C#, Turbo C++.

V marci 2008 bolo oznámené, že vývoj tohto produktového radu bude ukončený.

V marci 2007 CodeGear potešil používateľov aktualizovaným radom Delphi 2007 pre produkty Win32 a vydaním úplne nového produktu Delphi 2007 pre PHP.

V júni 2007 predstavil CodeGear svoje plány do budúcnosti, teda zverejnil takzvanú cestovnú mapu.

Embarcadero RAD Studio 2010

  • Štandardne plná podpora Unicode vo všetkých častiach jazyka, VCL a RTL; nahradenie volaní všetkých funkcií rozhrania Windows API analógmi Unicode (to znamená, že MessageBox volá MessageBoxW, nie MessageBoxA).
  • Generalizované typy, aka generiká.
  • Nová direktíva kompilátora $POINTERMATH.
  • Funkcia Exit teraz môže akceptovať parametre podľa typu funkcie.

Kompilátory

  • Embarcadero Delphi (predtým CodeGear Delphi a Borland Delphi) je pravdepodobne najznámejší kompilátor, ktorý je nástupcom Borland Pascal a Turbo Pascal. Používa Win16 (Delphi 1), Win32 (Delphi 2 a novšie), Win64 (Delphi 16 (XE2) a novšie), ako aj .NET 1.x, 2.0 (Delphi 8, Delphi 2005-Delphi 2007). Podpora .NET bola následne oddelená do samostatného produktu známeho ako Oxygene.
  • Free Pascal (FPC) je bezplatný kompilátor Object Pascal, ktorý podporuje rôzne dialekty Pascalu, vrátane Turbo Pascalu, Delphi a jeho vlastných dialektov. V súčasnosti dokáže FPC generovať kód pre procesory x86, x86-64, PowerPC, SPARC a ARM, ako aj pre rôzne operačné systémy vrátane Microsoft Windows, Linux, FreeBSD, Mac OS. Existuje niekoľko prostredí na vývoj softvéru pre FPC (jedným z najznámejších predstaviteľov je Lazarus).
  • GNU Pascal (samostatne vyvinutá verzia od GCC). Jeho cieľom nie je pokračovať v sérii dialektov Delphi ako súčasť Pascalu, no napriek tomu obsahuje režim kompatibility pre Borland Pascal a veľmi pomaly sa prispôsobuje komponentom jazyka Delphi. Nie je vhodný na kompiláciu veľkých projektov obsahujúcich kód Delphi, ale stojí za zmienku, že väčšina operačných systémov a architektúr to podporuje.
  • Kyslík (predtým známy ako Chrome listen)) je kompilátor Object Pascal, ktorý je integrovaný do Microsoft Visual Studio. Dostupné aj ako kompilátor s bezplatným príkazovým riadkom CLI. Používa .NET a mono platformy. V súčasnosti sa predáva pod značkou Embarcadero Delphi Prism.
  • MIDletPascal je programovací jazyk so syntaxou podobnou Delphi a kompilátorom s rovnakým názvom, ktorý prevádza zdrojový kód na kompaktný a rýchly bajtový kód Java.
  • PocketStudio - Pascal, IDE pre Palm OS.
  • Virtual Pascal – bezplatný kompilátor a textové IDE pre Win32, OS/2 a Linux. V tom čase to bolo veľmi rýchle a veľmi kompatibilné (dizajny Delphi 5 sú čiastočne podporované). Navonok je veľmi podobné textovému prostrediu Borland Pascal 7, hoci s ním napríklad nie je kompatibilná grafika. Vývoj sa však skončil v roku 2004 a zdrojový kód nebol otvorený. Odvtedy FPC zašlo oveľa ďalej a je vo všeobecnosti lepšie na programovanie. Napriek tomu zostáva VP veľmi dobrou voľbou na rýchle nahradenie ešte zastaranejších verzií Borland Pascal pre školy/inštitúty, vzhľadom na jeho natívnu prácu vo Win32 bez problémov s ruským kódovaním.

Syntax jazyka

Operátori

Zoznam operátorov oddelených medzerami: := + - * / div mod not a alebo s xor shl shr ^ =<> >= <= < >@in je ako

Výrazy

Výrazy v Object Pascal (Delphi) môžu byť aritmetické, logické alebo reťazcové.

Základné logické výrazy:
Logické výrazy sa používajú najmä v podmienených príkazoch. Logické výrazy zahŕňajú operácie ako:

  • nie - „NIE“, negácia logického výrazu (NOT<логическое_выражение>)
  • a - „A“, násobenie (priesečník) logických výrazov (<логическое_выражение1>A<логическое_выражение2>)
  • alebo - „ALEBO“, kombinujúci logické výrazy (<логическое_выражение1>ALEBO<логическое_выражение2>)
  • xor - „Exclusive OR“, negácia OR, všetko, čo nespadá pod OR (<логическое_выражение1>XOR<логическое_выражение2>)

Typy údajov

Údaje spracované v programe sú rozdelené na premenné, konštanty a literály. Konštanty sú údaje, ktorých hodnoty sú nastavené v časti deklarácie konštánt a počas vykonávania programu sa nemenia.

Objekty

  • Produkty Embarcadero: Embarcadero Delphi, Embarcadero C++ Builder, Borland JBuilder verzie 1 a 2.
  • Správa a vývoj databázy: MySQL Tools, IBExpert.
  • Inžiniersky softvér: Altium Designer.
  • Správcovia súborov: Total Commander, Frigate.
  • Prehliadače grafiky: FastStone Image Viewer, FuturixImager, drComRead.
  • Video a audio prehrávače: Light Alloy, The KMPlayer, AIMP, X-Amp.
  • Programy na odosielanie okamžitých správ: QIP, R&Q, Skype GUI, The Bat! , PopTray , FeedDemon .
  • Tvorba hudby: FL Studio, Guitar Pro (až do verzie 6.0).
  • Vývoj softvéru: Dev-C++, DUnit, Game Maker, Inno Setup, PyScripter.
  • Tvorba webu: Macromedia HomeSite.
  • Textové editory: BirEdit, Notepad GNU, Bred.
  • Účtovníctvo a dane: „PARUS“, AVARDA (do verzie 6.x vrátane).
  • Programy na vytváranie animácií: Pivot Stickfigure Animator.
  • Programy na kompresiu dát: ALZip, PowerArchiver, PeaZip.
  • Počítačové hry: Age of wonders, Space Rangers, Venom. Kódové označenie: Outbreak, Space Empires V, "Pravda o deviatej spoločnosti."
  • Grafické editory: Real Paint.

Poznámky

Literatúra

  • Neil J. Rubenking. Programovací jazyk Delphi pre figuríny. Úvod do Borland Delphi 2006 = Delphi for Dummies. - M.: Dialektika, 2007. - 336 s. - ISBN 0-7645-0179-8
  • Javier Pashecu. Programovanie v Borland Delphi 2006 pre profesionálov = Delphi for .NET Developer’s Guide. - M.: Williams, 2006. - 944 s. - ISBN 0-672-32443-X
  • A. N. Valvachev, K. A. Surkov, D. A. Surkov, Yu M. Chetyrko. Programovanie v jazyku Delphi. Návod . - 2005.

Odkazy

  • Stránka s programovacím prostredím na webe Embarcadero Technologies

V tomto článku si teda povieme, ako určiť bitovú hĺbku operačného systému Windows pri programovaní v Delphi. Je to potrebné, aby ste napríklad vybrali jednu alebo inú verziu ovládača - x86 (32 bit) alebo x64 (64 bit).

Takže, začnime.

Vytvorme nový projekt a do formulára pridáme komponent Label.

Potom prejdeme do editora zdrojového kódu a do sekcie s premennými var pridáme premennú reťazec razr (údajový typ reťazec, t.j. reťazec).

var Form1: TForm1;

razr: struna;

Potom dvakrát kliknite na formulár, skopírujte a vložte do neho nasledujúci kód (v postupe na vytvorenie hlavného formulára TForm1.FormCreate), medzi frázy begin a koniec; (teda začiatok a koniec procedúry).

(pomocou funkcie Get Environment Variable načítame hodnotu premennej ProgramFiles(X86).

ak je systém 32-bitový, potom bude mať prázdnu hodnotu

ak 64-bit, potom bude mať znalosti o C: Program Files (x86)

priečinok, v ktorom sú nainštalované 32-bitové verzie programov)

razr:= GetEnvironmentVariable("ProgramFiles(x86)");

label1.Caption:= razr;

if (razr = "") potom

začať

label1.Font.Color:=clRed; (Zmení farbu nápisu, môžete si vybrať ľubovoľnú podľa svojho vkusu, napríklad clGreen - zelená)

label1.Caption:= "Máte x86"; (namiesto názvu štítku labl1 môžete napísať čokoľvek iné, napr. metka)

inak

začať

label1.Font.Color:=clBlue; (Zmení farbu nápisu, môžete si vybrať ľubovoľnú podľa svojho vkusu, napríklad clGreen - zelená)

label1.Caption:= "Máte x64";

koniec;

Ako program funguje?

Funkcia Získať premennú prostredia číta hodnotu premennej prostredia v systéme Windows ProgramFiles (X86).

Ak je systém 32-bitový, bude mať prázdnu hodnotu.

Ak je 64-bitový, potom bude mať znalosti C:Program Files(x86), t.j. toto je priečinok, do ktorého sú nainštalované 32-bitové verzie programov.

Vlastne, to je všetko.

Toto sa mi stalo.

Nižšie si môžete stiahnuť archív so zdrojovým kódom programu, aby ste sa pokúsili prísť na to, ako to funguje sami.


Komentáre ()

wdfm 90

Program funguje dobre na Windows 7 x64, môžete ho použiť

Edward 300

Každý, kto začne off-topic + obscénny jazyk bude zakázaný na 1 deň! Toto sa nevzťahuje na správcov.
.php?board=18.0

Toto fórum som nevytvoril pre nič za nič!

Edward 300

Úvod

Tieto pokyny sú navrhnuté tak, aby pomohli študentom získať praktické zručnosti v technológii vizuálneho navrhovania vlastných aplikácií pre Windows v prostredí Delphi pomocou metodológie objektovo orientovaného programovania. Laboratórne práce pokrývajú hlavné fázy vývoja programu pre Windows.

Usmernenia pozostávajú z troch častí. Prvá časť poskytuje popis základných pojmov návrhu vizuálnej aplikácie a programovacieho prostredia Delphi. Druhá časť formuluje všeobecné požiadavky na implementáciu a prezentáciu laboratórnych výsledkov. Tretiu časť tvoria popisy konkrétnych laboratórnych prác s potrebnými stručnými teoretickými informáciami, príklady návrhu programu, odporúčania na vykonávanie práce, varianty úloh na vykonávanie práce a otázky na autotest. Na dokončenie práce musia študenti poznať jazyk Object Pascal a vizuálne programovacie prostredie Delphi.

Základné pojmy a definície Delphi

vizuálne pole programu delphi

Obrazovka po spustení Delphi obsahuje štyri okná: hlavné okno, formuláre, inšpektor objektov a editor kódu, ktorý je takmer celý zakrytý formulárovým oknom.

Hlavné okno obsahuje menu príkazov Delphi, panel nástrojov a paletu komponentov.

Okno formulára, jeho názov FORM1, predstavuje šablónu, rozloženie jedného z objektov vyvíjanej aplikácie.

Okno Object Inspector, jeho názov Object Inspector, vám umožňuje vidieť a meniť vlastnosti objektov projektu. Po spustení Delphi sa v tomto okne zobrazia vlastnosti formulára FORM1.

Okno editora kódu je určené na vytváranie procedúr spracovania udalostí. V Delphi je kód text programu.

Objekty alebo ovládacie prvky sú komponenty formulára, z ktorých je vytvorený projekt, mimochodom samotný formulár, ako je uvedené vyššie, je tiež objektom. Objektmi môžu byť príkazové tlačidlá, polia na zadávanie textu, prepínače, štítky, posuvníky a okná.

Vlastnosti objektu sú napríklad veľkosť textu nadpisu, farba pozadia formulára alebo textu na príkazovom tlačidle a mnoho ďalších, kompletný zoznam vlastností je možné vidieť v okne Object Inspector pre vybrané objekt.

Udalosť je niečo, čo sa stane, keď je spustená aplikácia, ktorú ste vytvorili. V Delphi má každá udalosť názov, napríklad kliknutie myšou je udalosť OnClick, dvojité kliknutie je udalosť OnDblClick.

Projekt je súbor súborov (programových jednotiek - modulov), pomocou ktorých kompilátor vytvorí spustiteľný programový súbor. Jeden zo súborov projektu, nazývaný súbor projektu a s príponou dpr, obsahuje všeobecný popis projektu. Súbor projektu je hlavným aplikačným modulom, ktorý generuje Delphi. Okrem hlavného modulu projekt obsahuje jeden alebo viac modulov (Units). Súbory modulov projektu (Unit) obsahujú texty procedúr, funkcií, popisy typov, ako aj všetky informácie na vytvorenie spustiteľného programu a majú príponu pas. Procedúra je skupina operátorov v programovacom jazyku, ktorá umožňuje vykonávať špecifické akcie (riešiť problém). Tak či onak, všetok spustiteľný kód, ktorý ste skompilovali na inicializáciu, je nevyhnutne umiestnený v nejakej procedúre.

Jednotka pozostáva z troch častí: rozhranie (začína slovom rozhranie), implementácia (začína slovom implementácia) a. Nižšie je uvedená štruktúra modulu.

unitModuleName;

(Tu sú popisy procedúr a funkcií tohto modulu, ktoré môžu používať iné moduly)

(Tu sú deklarácie globálnych konštánt modulu, ktoré môžu používať procedúry a funkcie modulu)

(Tu sú deklarácie globálnych typov modulov, ktoré môžu používať procedúry a funkcie modulu)

(Tu sú deklarácie globálnych premenných modulu, ktoré môžu používať procedúry a funkcie modulu)

(Tu sú popisy procedúr a funkcií modulu)

(Pokyny pre sekciu inicializácie premennej modulu nájdete tu)

Sekcia rozhrania teda informuje kompilátor, ktorá časť modulu je prístupná pre ostatné programové moduly. Implementačná časť začína direktívou ($R*.DFM), ktorá hovorí kompilátoru, aby pri generovaní spustiteľného súboru použil popis formulára. popis formulára sa nachádza v súbore s príponou dfm, ktorého názov sa zhoduje s názvom modulu. Po smernici ($R*.DFM) nasledujú procedúry spracovania udalostí pre formulár a jeho komponenty. Programátor sem môže umiestniť aj vyvinuté postupy a funkcie. Ak inicializačná časť neobsahuje pokyny, potom slovo begin nie je zadané.

Delphi je programovací jazyk a vývojové prostredie softvéru. Je vyvinutý spoločnosťou Borland (predtým známy ako Inprise). Programovací jazyk Delphi, predtým známy ako Objektový Pascal(Pascal with Object Oriented Extensions), pôvodne zameraný len na Microsoft Windows, ale teraz vám umožňuje vytvárať natívne aplikácie pre Linux a Microsoft. NET Framework a ďalšie (pozri nižšie). Programovanie pre začiatočníkov.
Najpopulárnejším využitím je vývoj desktopových aplikácií a podnikových databáz a ako nástroj programovací jazyk Delph A možno použiť pre väčšinu typov rozvojových projektov. Bol to jeden z prvých jazykov, ktorý sa stal známym ako nástroj RAD (Rapid Application Development), keď vyšiel v roku 1995. Delphi 2, vydaný o rok neskôr, podporoval 32-bitové prostredie Windows a len o niekoľko rokov neskôr vyšiel C, C++ Builder. V roku 2001 bola dostupná verzia pre Linux známa ako Kylix (klasická grécka urna). Každý rok bola k dispozícii jedna nová verzia, v roku 2002 sa produkt stal známym ako Delphi 7 Studio, jazyk sa oficiálne nazýval programovací jazyk Delphi a nie Object Pascal a bola pridaná podpora pre Linux (cez Kylix) a. NET (cez predkompilátor). Plná podpora. NET je plánovaný pre nadchádzajúci Delphi 8. Programovanie pre figuríny.
Hlavné komponenty Delphi a Kylix: jazyk Delphi (predtým oficiálne známy ako jazyk Object Pascal), VK/CLX (Visual Component Library), silné databázové pripojenia v kombinácii s výkonným IDE (Integrated Development Environment) a ďalšími nástrojmi podpory.
Medzi skvelé vlastnosti jazyka Delphi patria:

  • Transparentná manipulácia s objektmi prostredníctvom referencií alebo ukazovateľov
  • Vlastnosti ako súčasť jazyka v spojení s funkciami Get a Set, ktoré transparentne zapuzdrujú prístup k členom poľa
  • Index a predvolené vlastnosti, ktoré poskytujú prístup ku kolekcii pohodlným a transparentným spôsobom
  • Delegáti alebo inak typovo bezpečné metódy ukazovateľov, ktoré sa používajú na spúšťanie udalostí vyvolaných komponentmi
  • Delegovanie implementácie rozhrania na pole alebo vlastnosť triedy
  • Ľahko implementovateľné obslužné nástroje správ systému Windows, označte metódu triedy číslom/názvom schránky so správou, ktorú chcete spracovať
  • Väčšina funkcií uvedených vyššie bola predstavená najskôr v Delphi a neskôr bola prijatá do iných jazykov.

Hlavným architektom Delphi a jeho predchodcu Turbo Pascal bol Anders Hejlsberg, kým v roku 1996 neprestúpil do Microsoftu, aby sa venoval základom programovania.
Produkt Delphi je distribuovaný v rôznych balíkoch, z ktorých každý ponúka viac funkcií ako ostatné:

  • Osobné
  • Profesionálny
  • Spoločnosť
  • architekt

Dobré dôvody na používanie Delphi:

  • Veľmi poučné a užitočné správy pre komunitu
  • Môže sa skompilovať do jedného spustiteľného súboru, čo uľahčuje distribúciu a znižuje problémy s rôznymi knižnicami DLL
  • VCL a komponenty tretích strán sú vo všeobecnosti dostupné s úplným zdrojovým kódom
  • Výkonný a rýchlo optimalizujúci kompilátor
  • Jeden zdrojový kód vytvára vynikajúce strojové kódy pre rôzne operačné systémy
  • Podpora najnovších technológií a štandardov

Klony a alternatívy

Aj keď nie sú schopné uspokojiť všetky potreby programátorov, existuje celý rad ďalších nástrojov, ktoré sú navrhnuté tak, aby rozšírili rozsah úloh riešených pomocou Delphi, alebo to možno urobiť vložením kódu do iných jazykov, kde sú Delphi a Kylix. bezmocný.
Tieto náhrady Delphi je možné použiť, ak nemôžete platiť za vývojové prostredie, potrebujete bezplatné vývojové prostredia (napríklad pre operačné systémy a slobodný softvér alebo na vzdelávacie účely). Vo väčšine prípadov sa tieto alternatívy používajú na školenie, ako aj na písanie serverových komponentov pre operačné systémy, ktoré nie sú široko používané (to bolo dovtedy, kým sa Kylix neobjavil pre OS Linux, ktorý väčšina používa ako OS pre servery) . .
Uveďme niektoré:

  • Free Pascal je náhrada, ktorá prichádza ako kompilátor, ktorý sa spúšťa z príkazového riadku. Tento vývoj je založený na kompatibilite so základnou sadou funkcií dialektov Turbo Pascal a Delphi. Funkcie verzií Delphi nad 4 sú implementované a fungujú. Funguje na väčšine operačných systémov x86, vrátane Win32, Dos, Linux, BSD a Novell Netware. Na m68k a PowerPC chýba podpora iných operačných systémov, ktorých stav sa stále veľmi rýchlo mení. Práce na prechode na platformu SPARC sa začali.
  • GNU Pascal (samostatne distribuovaná časť GNU Compiler Collection), hoci nie je formálne zameraný na dialekty Borland Pascal, obsahuje kompatibilitu s Borland Pascal a postupne absorbuje vlastnosti jazyka Delphi, hoci nie je vhodný na prekompilovanie veľkého množstva Delphi kód. Je to najplodnejší kompilátor z hľadiska operačných systémov a procesorov, aj keď si zaslúži zmienku len ako posledná možnosť.
  • Existuje nástroj s názvom Pocket studio, ktorého cieľom je zostaviť skrátený kód Delphi pre vreckové počítače.
  • Virtual Pascal - kompilátor, x86 32-bitový Turbo Pascal a Delphi, kompatibilný primárne s OS/2 a Windows, aj keď bol vyvinutý DOS Extender a experimentálny linuxový krížový kompilátor. Kompilátor sa zasekol okolo Delphi verzie 2 a stránka sa za dva roky príliš nezmenila, ale alternatívne je to ďalšia z najlepších, so skvelým IDE a debuggerom, aj keď Free Pascal tiež nie je žiadny troška.
  • BloodShed distribuuje veľmi dobrý grafický editor Win32 (aj keď nie RAD) ako rozhranie pre GNU Pascal a Free Pascal.
  • Úsilie Lazarus je zamerané na vytvorenie vývojového prostredia pre Free Pascal. Zatiaľ čo port GTK sa stáva užitočným pre písanie malých aplikácií, ako sú konfiguračné nástroje, port win32 ešte potrebuje veľa práce.
  • InnerFuse je prekladač Delphi na vkladanie do aplikácií. Existujú povesti, ktoré fungujú s niekoľkými verziami Delphi.
  • WDOSX je emulačné API Win32 DOS Extender, ktoré možno použiť na spustenie konzolových aplikácií napísaných v Delphi na bežnom DOSe.

Ako sa stať profesionálom v oblasti vývoja webových stránok a začať zarábať peniaze? Lacné video kurzy s úvodným úvodom.

Náš úvod do programovania v prostredí Delphi začnime otázkami ako podstata samotného programovania, jeho základy a podtypy. Pozrieme sa aj na to, čo je prostredie Delphi, čím sa líši od ostatných a akou cestou prešlo od svojho vzniku pred 10 rokmi.

Čo je programovanie

Najprv teda pochopme sami, čo sa myslí pod pojmom programovanie? Teraz sa veľa ľudí nazýva programátormi, bez toho, aby vôbec vedeli, čo to je: po kontrole sa ukáže, že osoba, ktorá zmenila niekoľko riadkov kódu v dokumente HTML, je už pripravená považovať sa za programátora. V skutočnosti sa však pri práci s HTML (konkrétne so samotným HTML) nemôžete stať programátorom, pretože HTML, ako už názov napovedá (Hypertext Markup Language), nie je programovací jazyk.

V dôsledku toho máme prvú podmienku: aby ste sa naučili programovať, potrebujete nejaký programovací jazyk. V našom prípade to budú najnovšie verzie Object Pascal (14.0 alebo 15.0).

Ďalej, povedzme, že niekto, kto si hovorí programátor, nielenže upravil pár riadkov HTML kódu, ale videl aj Delphi a dokonca doň nakreslil formulár s 2-3 tlačidlami a textovým poľom. Je to programátor? S najväčšou pravdepodobnosťou tiež nie. Faktom je, že pod vizuálnym plášťom sa v skutočnosti skrýva veľmi zložitý mechanizmus, ktorý zabezpečuje interakciu ovládacích prvkov (rovnaké tlačidlá) s používateľom a operačným systémom - na jednej strane a umožňuje vykonávať takmer akúkoľvek výpočtovú akciu. - na druhej. S týmto všetkým by ste mali byť schopní urobiť to hlavné - vytvoriť algoritmy pre správanie programu - či už je to jeho reakcia na stlačenie konkrétneho tlačidla, alebo vytvorenie funkcie na riešenie zložitej matematickej rovnice.

Programovanie teda vo svojom modernom poňatí zahŕňa znalosť princípov fungovania operačného systému, interakcie jeho komponentov a vnútornej štruktúry. Zároveň je zachovaná klasická definícia programovania, a to schopnosť zostavovať algoritmy, matematické a behaviorálne programy. To všetko je implementované v kontexte nejakého programovacieho jazyka, napríklad rovnakého Object Pascal od Delphi.

Čo je Delphi

Teraz vieme, že programovanie je kompilácia algoritmov plus použitie programovacieho jazyka. Ale ak jazyk, ktorý sa učíme, je Object Pascal, čo je potom Delphi? Odpoveď znie: Delphi je RAD alebo Rapid Application Development – ​​prostredie pre rýchly vývoj aplikácií. Inými slovami, Delphi obsahuje nielen všetky nástroje na prácu s jazykom Object Pascal (najmä preto, že od verzie 2005 má Delphi podporu pre iné programovacie jazyky, najmä C#), ale aj množstvo doplnkových nástrojov určených na zrýchlenie čo najviac urýchliť proces a zjednodušiť tvorbu programov. Medzi tieto nástroje patrí predovšetkým vizuálny editor formulárov, pomocou ktorého vytvoríte plnohodnotný program v priebehu niekoľkých minút a bez extra námahy, ako aj ďalšie súčasti vizuálnej zložky vývoja programu.

V dôsledku toho sa výrazne skráti čas vývoja programu, pretože nie je potrebné manuálne počítať umiestnenie každého prvku používateľského rozhrania.

Spolu s vyvinutými nástrojmi na písanie a ladenie kódu – špecializovaným textovým editorom, optimalizačným kompilátorom a debuggerom je Delphi nástrojom pre rýchly vývoj aplikácií. Základom Delphi pre koncového používateľa je zároveň IDE - Integrated Development Environment, ktoré kombinuje editor kódu a vizuálne vývojové nástroje a spája to aj s kompilátorom, nástrojmi na vývoj databáz a ďalšími komponentmi Delphi.

Delphi a ďalšie

Samozrejme, Delphi nie je jediné prostredie na rýchly vývoj aplikácií. Existujú aj iné RAD, ktoré sú rovnako užitočné pre vývoj vizuálnych programov, ako napríklad Visual Basic. BASIC je však známy ako nie najvýkonnejší a najpohodlnejší programovací jazyk, navyše programy na ňom napísané sa vyznačujú relatívne nízkym výkonom.

Zároveň existujú programovacie jazyky, ktoré nie sú o nič menej výkonné ako Object Pascal a majú svoje vlastné RADy - v prvom rade je to jazyk C++ spolu s takými známymi vývojovými nástrojmi, ako sú Visual C++ a C++ Builder. C++ však nie je v porovnaní s Object Pascalom priaznivá z hľadiska jednoduchosti učenia. Navyše, vytváranie a ladenie programov v C++ je relatívne pomalé, hoci hotové programy bežia rovnako rýchlo ako tie vytvorené pomocou Delphi.

POZNÁMKA
Všimnite si, že v čase svojho vzniku v roku 1995 bolo Delphi skutočne unikátnym prostredím, ktoré spájalo vizuálne programovanie s optimalizačným kompilátorom a nástrojmi na prácu s databázami.

Výsledkom je takmer ideálny produkt pre rýchly vývoj programov: na jednej strane jednoduchosť a pohodlie porovnateľné s Visual Basicom a na druhej strane výkon, rýchlosť a flexibilita charakteristická pre C++.

Tu je potrebné poznamenať, že jazyk Object Pascal používaný v Delphi má len málo spoločného so svojím predchodcom – programovacím jazykom Pascal, ktorý ste možno študovali na škole alebo univerzite. Po prvé, Delphi používa čisto objektovo orientovaný programovací model, zatiaľ čo Pascal bol bežný procedurálny jazyk. Aká je podstata rozdielov medzi procedurálnym programovaním a objektovo orientovaným programovaním? To je otázka, o ktorej budeme diskutovať v nasledujúcich dvoch odsekoch.

Procedurálne programovanie a algoritmy

Takmer všetky moderné programovacie jazyky majú procedurálny charakter. To znamená, že každý program pozostáva zo sady procedúr, z ktorých každá rieši konkrétny problém, pričom jedna procedúra môže volať ktorúkoľvek inú, vrátane seba samej (druhá, t. j. procedúra volajúca sama seba, sa nazýva rekurzia). Samotný program je zostavený na základe algoritmov a postačujú iba tri varianty - výber (vidlička), opakovanie (cyklus) a prechod. Posledný typ sa však pre jeho zlú povesť v praxi prakticky nepoužíva (hovoríme o GOTO - kedysi milovanom, zo zúfalstva, prevádzkovateľovi programátorov BASIC).

Pozrime sa na najjednoduchší algoritmus - pre hru "uhádni číslo". Logika jeho fungovania spočíva v tom, že musíte skontrolovať, či je číslo väčšie alebo menšie ako skryté, a ak áno, zobrazí sa zodpovedajúca nápoveda a ak nie je väčšia ani menšia (t. j. zhoduje sa), hra končí. . Bloková schéma takéhoto algoritmu bude pozostávať z 2 vetiev (obr. 1.1).

Ryža. 1.1. Vývojový diagram jednoduchého algoritmu

Prvým krokom je požiadať používateľa o číslo A, ktoré sa dvakrát porovná s vopred zadaným číslom B. Najprv skontroluje, či je číslo A väčšie ako B, a ak áno, program ohlási, že a došlo k "prekročeniu" a vráti sa na čísla vstupných bodov. Ak číslo nie je väčšie, dôjde k druhému porovnaniu - aby sa zistilo, či je A menšie ako B. Ak áno, zobrazí sa hlásenie, že číslo je menšie ("podstrel") a opäť návrat na začiatok vyskytuje. Ak však číslo A nie je menšie ako číslo B, potom vzhľadom na skutočnosť, že v súčasnosti je už známe, že nie je väčšie, sa rovná číslu B a program sa ukončí. Zároveň môže používateľovi zobraziť gratuláciu k uhádnutiu čísla.

Tento algoritmus môže byť súčasťou iného algoritmu. Napríklad neexistuje žiadne ustanovenie na generovanie samotného čísla, ktoré je potrebné uhádnuť. Nechýba ani možnosť opakovaného prehrávania. Na nápravu tejto situácie uvažujme blokovú schému algoritmu, ktorý riadi vykonávanie programu ako celku (obr. 1.2).


Ryža. 1.2. Vývojový diagram riadenia programu

Na začiatku vykonávania sa vygeneruje nové číslo, ktoré používateľ uhádne. Potom nasleduje samotný blok hádania, o ktorom sme už uvažovali (pozri obr. 1.1) - tu je prezentovaný vo forme jedného jednoduchého modulu, keďže neovplyvňuje vykonávanie programu ako celku. Po dokončení tohto bloku máme jedinú vetvu – podľa toho, ako používateľ zareaguje na ponuku na opakovanie hry. Ak je teda odpoveď kladná, tak program bude musieť ísť na začiatok, t.j. na vygenerovanie nového čísla. Ak používateľ odmietne, program musí byť ukončený.

Konkrétna implementácia konkrétneho algoritmu závisí od použitého programovacieho jazyka, ako aj od preferencií tvorcu programu, keďže tú istú konštrukciu možno spravidla riešiť niekoľkými rôznymi metódami. Môžete napríklad použiť cykly aj príkazy bezpodmienečného skoku na návrat do bodu vyznačeného na blokovom diagrame. Samotné bloky môžu byť umiestnené v samostatných procedúrach a nazývané ako podprogramy. Jediným spoločným znakom je podmienený operátor zodpovedný za fork – takmer vo všetkých jazykoch a Pascal nie je výnimkou, nazýva sa IF. Na zoznámenie sa s operátormi Object Pascal však ešte stihneme.

O objektovo orientovanom programovaní

Ak sú výber, opakovanie a skákanie základnými kameňmi akéhokoľvek procedurálneho programovacieho jazyka, potom objektovo orientované programovanie dôležité sú pojmy ako zapuzdrenie, dedičnosť a polymorfizmus. Pozrime sa na tieto koncepty, bez ktorých nemožno žiadny objektový jazyk nazvať objektovo orientovaným, podrobnejšie.

POZNÁMKA
Pod pojmom „objekt“ sa v programovaní rozumie určitý komplexný dátový typ, ku ktorému možno pripojiť jedinečné vlastnosti pre tento typ a v prípade OOP aj metódy.

Zapuzdrenie je kombináciou údajov a podprogramov, ktoré ich spracúvajú – metód – v rámci jedného objektu, ktorý sa v OOP nazýva „trieda“. To znamená, že trieda zapuzdruje všetko potrebné na prácu s konkrétnym objektom.

Dedičnosť je ďalšou dôležitou súčasťou OOP. Dedičnosť znamená schopnosť vytvárať typ (objekt) na základe definície iného objektu. V tomto prípade môže dieťa zdediť všetky vlastnosti a metódy nadradeného objektu. Ak máme napríklad objekt „auto“, tak na jeho základe môžeme vytvoriť ďalší objekt, povedzme „električku“, ktorý zdedí všetky jeho vlastnosti a dostane okrem nich aj nejaké svoje. Na druhej strane tento objekt bude môcť mať aj svojich vlastných potomkov atď. Výsledkom je strom objektov nazývaný hierarchia tried.

V Object Pascal všetky triedy pochádzajú z jedného predka - triedy TObject, ktorá implementuje akcie na objekte spoločné pre všetky triedy, ako je vytváranie a mazanie.

RADY
Krabicové verzie Delphi obsahujú plagát zobrazujúci strom tried pre všetky hlavné komponenty Delphi. Preto, ak ste šťastným majiteľom licencovaného produktu, môžete si vizuálne preštudovať štruktúru tohto systému umiestnením tohto plagátu na svoje pracovisko.

Napokon, tretím pilierom, na ktorom OOP stojí, je polymorfizmus, čiže schopnosť vytvárať vlastnosti a metódy rovnakého mena v rámci súvisiacich objektov, ktoré sa budú v podstate líšiť. Povedzme, že už máme triedy „auto“ a „električka“ a pre obe je definovaná vlastnosť „motor“, ale ak pre auto je typ motora objektom jedného typu, potom pre električku je to úplne iné. jeden.

Ďalšou dôležitou zložkou charakteristickou pre OOP je skrývanie, ktoré umožňuje zneviditeľniť množstvo vlastností objektu. Inými slovami, ak môžeme definovať objekt typu „auto“, pre ktorý sú zase definované vlastnosti ako podvozok, motor a kolesá. Takže ak je možné zviditeľniť (a sprístupniť) motor a kolesá všade tam, kde je k dispozícii samotná trieda „auto“, potom podvozok nie. Prístup k takejto vlastnosti je teda možné získať iba v tých častiach programu, v ktorých je vytvorený popis samotného objektu „stroj“. Takéto vlastnosti sa nazývajú chránené.

Podrobnejšie o objektovo orientovanom programovaní sa budeme zaoberať v druhej časti tejto publikácie.

Vizuálne programovanie a Delphi

Delphi je teda prostredie, ktoré pracuje s objektovo orientovaným štruktúrnym programovacím jazykom Object Pascal. Okrem toho je Delphi aj vizuálnym vývojovým prostredím. Inými slovami, už v procese vytvárania programu môžete vidieť, ako bude vyzerať počas vykonávania. Vizuálne programovanie výrazne znižuje čas potrebný na vytvorenie používateľského rozhrania pre aplikácie Windows. Pred príchodom vizuálnych vývojových nástrojov bolo programovanie pod Windows spojené s veľkými ťažkosťami, pretože bolo potrebné takmer naslepo vypočítať umiestnenie každého ovládacieho prvku v okne aplikácie, čo viedlo k mnohým chybám (obr. 1.3).


Ryža. 1.3. Klasické a vizuálne prístupy k vytváraniu rozhrania

Skutočnosť, že Delphi je vizuálne vývojové prostredie, zanecháva stopy na programovacom jazyku. Najmä poskytuje špeciálne prostriedky, aby určité vlastnosti tried mohli byť dostupné už vo fáze vývoja programu, a nie len za behu. Najdôležitejšou súčasťou celej tejto nádhery je však knižnica tried – VCL (Visual Component Library). Je to VCL, ktoré skrýva všetky drsné hrany vnútorných častí systému Windows a umožňuje vám jednoducho vytvárať aplikácie bez toho, aby ste sa zapájali do zdĺhavej vojny so spracovaním systémových správ, spätných volaní, popisovačov a ukazovateľov.

S tým všetkým vám samozrejme nikto nezakazuje používať funkcie systému Windows priamo a v prípade potreby obísť VCL. To však môže byť potrebné veľmi zriedka, takže pre začínajúceho programátora Delphi nie je na písanie aplikácií pre Windows potrebné nič iné ako VCL.

Na vizuálne komponenty sa podrobne pozrieme v 3. časti tejto knihy.

Verzie Delphi a ich rozdiely

Na konci úvodnej časti sa pozrieme na rozdiely medzi verziami Delphi a súčasne si preštudujeme históriu vývoja tohto nádherného vývojového prostredia.

Delphi 1. Delphi 1.0, vydaný krátko pred príchodom Windows 95, bol prvým nástrojom na vývoj aplikácií Windows (3.1), ktorý v sebe spájal optimalizačný kompilátor, vizuálne vývojové prostredie a výkonné databázové nástroje. Toto bola skutočná reinkarnácia jazyka Pascal – stal sa z neho Object Pascal.

Delphi 2. Druhá verzia Delphi, vydaná o rok neskôr, ponúkala to isté, ale pre 32-bitové verzie Windows (95/NT), pričom sa opäť stala prvým nástrojom kombinujúcim 32-bitový kompilátor, nástroje na prácu s databázami a vizuálny vývojové prostredie, podporujúce OLE (a po vydaní aktualizovaného Delphi 2.01 - a ActiveX). Zmenil sa aj jazyk, ktorý sa stal 32-bitovým.

Delphi 3. Ďalšie vylepšenie Delphi vo všetkých smeroch viedlo k vydaniu verzie 3, ktorá mala rozšírenú sadu nástrojov na tvorbu aplikácií vďaka podpore COM a ActiveX. V tejto verzii sa po prvýkrát kládol dôraz na možnosť tvorby aplikácií pre internet a objavil sa netypizovaný dátový typ - variant.

Delphi 4. Ďalší kľúčový vývojový míľnik. V tejto verzii bolo predstavených veľa nových a užitočných vecí na zjednodušenie vývoja aplikácií, vrátane nového prostredia s dynamickými nápovedami atď. Zdokonalil sa model pre prácu s komponentmi (VCL) a rýchlo sa dali využiť technológie ako MIDAS, DCOM a CORBA. V tejto verzii bol vylepšený aj jazyk Object Pascal: objavili sa nové funkcie charakteristické pre moderné OOP, zaviedli sa nové dátové typy vrátane 64-bitových.

Delphi 5. V Delphi 4 bolo toľko zmien, že sa, žiaľ, vyskytli nejaké nepríjemné chyby a chyby. Výsledkom bolo vydanie 3 aktualizačných balíkov (naši piráti ich predávali pod rúškom Delphi 4.1, 4.2 a 4.3). Delphi 5 by sa však malo považovať za najkompletnejší a najsprávnejší aktualizačný balík - v tejto verzii bolo dovedené všetko, čo sa začalo v Delphi 4.

Delphi 6. S vydaním šiestej verzie Borland oznámil novú, multiplatformovú éru v Delphi a súčasne vydal verziu Delphi pre Linux (Kylix 1.0). Teraz ste si pri vytváraní aplikácie mohli vybrať jej typ – pre Windows, alebo univerzálny. V súlade s tým bola knižnica VCL doplnená o knižnicu CLX, kompatibilnú s Windows aj Linuxom. Okrem toho sa v šiestej verzii, „natívnej“ a nie cudzej ActiveX, konečne objavili komponenty na prácu s internetom av oboch verziách naraz - pre VCL aj CLX. Počnúc touto verziou sa samotný programovací jazyk Object Pascal oficiálne nazýva Delphi.

Delphi 7. Ďalší vývoj Delphi 6, vylepšená knižnica CLX a nová zodpovedajúca verzia vývojového prostredia pre OS Linux - Kylix 3. Zároveň sa Borland počnúc Delphi 7 začal zaoberať otázkou kompatibility s inou platformou - Microsoft . NET, pre ktorý boli vykonané niektoré zmeny ako vo VCL a v jazyku (a teda aj v kompilátore).

Delphi 8. Prvá verzia Delphi, zameraná na prácu s platformou Microsoft.NET. V tejto verzii vývojári podstúpili riziko zmeny rozhrania prostredia, čím sa podobajú na produkty Microsoftu, nového hlavného akcionára Borlandu. V súlade s tým bola podpora pre Kylix prerušená.

Delphi 2005. Necelý rok po vydaní Delphi 8 sa objavila nová verzia, ktorá rýchlo vrátila možnosť pracovať v klasickom štýle IDE pri vývoji aplikácií pre Windows. Delphi 2005 zároveň v prípade vývoja aplikácií špeciálne pre platformu NET umožňuje pracovať nielen s jazykom Delphi, ale aj s C#. Zároveň boli do samotného jazyka Delphi zavedené také inovácie ako operátor for...in a vstavané procedúry a funkcie.

Delphi 2006. Najnovšia verzia Delphi vydaná spoločnosťou Borland. Bola vydaná aj odľahčená verzia - Turbo Delphi. Potom sa začala cesta k ďalším vývojárom.

Delphi 2007. Verzia vydaná spoločnosťou CodeGear. Pridaná podpora pre rozhranie Aero pre Windows Vista.

Delphi 2009. Verzia vydaná spoločnosťou Embarcodero. Podpora Unicode bola implementovaná vo VCL a RTL, volania všetkých funkcií Windows API boli nahradené analógmi Unicode, boli pridané generické typy a anonymné metódy.

Delphi 2010. Podpora Windows 7, dotykové komponenty a komponenty gest a komponenty dbExpress teraz oficiálne podporujú Firebird.

Delphi XE (Delphi 2011). Pridaná podpora pre cloud computing.

Páčil sa vám článok? Zdieľaj to
Hore