Kāda valoda tiek lietota delfos. Par programmēšanu un Delphi

Tīmekļa vietne:

Delfos(Delfi, izrunā /ˈdɛlˌfi:/ klausieties)) ir obligāta, strukturēta, uz objektu orientēta programmēšanas valoda, Object Pascal dialekts. Sākot ar Delphi 7.0 izstrādes vidi, Borland sāka lietot nosaukumu Delphi, lai apzīmētu Object Pascal valodu oficiālajos dokumentos. Kopš 2007. gada Delphi valoda (atvasināta no Object Pascal) sāka dzīvot patstāvīgu dzīvi un piedzīvoja dažādas izmaiņas, kas saistītas ar mūsdienu tendencēm (piemēram, ar .NET platformas attīstību) programmēšanas valodu attīstībā: klases palīgi, operatora pārslodze, un parādījās vairāk.

Mērķa platforma

Sākotnēji izstrādes vide bija paredzēta tikai Microsoft Windows aplikāciju izstrādei, pēc tam tika ieviesta arī Linux platformām (kā Kylix), tomēr pēc Kylix 3 iznākšanas 2002. gadā tās izstrāde tika pārtraukta, un neilgi pēc tam tika paziņots par Microsoft .NET atbalstu.

Lazarus projekta izstrādes vides (Free Pascal, apkopota Delphi saderības režīmā) ieviešana ļauj to izmantot, lai izveidotu Delphi aplikācijas tādām platformām kā Linux, Mac OS X un Windows CE.

Ir bijuši arī mēģinājumi izmantot valodu GNU projektos (piemēram, GNU Notepad) un uzrakstīt kompilatoru GCC.

Valodas vēsture

Objekts Pascal ir Turbo Pascal valodas attīstības rezultāts, kas, savukārt, attīstījās no Pascal valodas. Pascal bija pilnībā procesuāla valoda, Turbo Pascal, sākot ar versiju 5.5, Pascal pievienoja objektorientētus rekvizītus un Object Pascal dinamisku datu tipu identifikāciju ar iespēju piekļūt klases metadatiem (tas ir, klašu un to dalībnieku aprakstam). kompilētajā kodā, ko sauc arī par introspekciju - šī tehnoloģija tiek apzīmēta kā RTTI. Tā kā visas klases manto bāzes klases TObject funkcijas, jebkuru objektu uz objektu var pārvērst par to un pēc tam izmantot ClassType metodi un TypeInfo funkciju, kas nodrošinās pašpārbaudi.

Vēl viena atšķirīga Object Pascal no C++ iezīme ir tā, ka objekti pēc noklusējuma atrodas dinamiskajā atmiņā. Tomēr jūs varat ignorēt TObject klases virtuālās metodes NewInstance un FreeInstance. Tādējādi pilnīgi jebkura klase var piepildīt “vēlmi” “kur gribēšu, tur gulēšu”. “Multigrupēšana” tiek organizēta attiecīgi.

Object Pascal (Delphi) ir Turbo Pascal funkcionāla paplašinājuma rezultāts.

Delphi bija ļoti ietekmīgs .NET platformas valodas koncepcijas izveidē. Daudzi tā elementi un konceptuālie risinājumi tika iekļauti C#. Viens no iemesliem ir viena no vadošajiem Delphi izstrādātājiem Andersa Hejlsberga pāreja no Borland Ltd. uzņēmumā Microsoft Corp.

  • 8. versija spēj ģenerēt baitkodu tikai .NET platformai. Šī ir pirmā vide, kas vērsta uz daudzvalodu lietojumprogrammu izstrādi (tikai .NET platformai);
  • Turpmākās versijas (norādītas ar izlaišanas gadiem, nevis sērijas numuriem, kā iepriekš) var radīt gan Win32 lietojumprogrammas, gan baitu kodu .NET platformai.

Tomēr tā paša gada novembrī tika nolemts atteikties no IDE biznesa pārdošanas. Taču ar IDE produktu izstrādi tagad nodarbosies jauns uzņēmums – CodeGear, kuru pilnībā finansiāli kontrolēs Borland.

2006. gada augustā Borland izlaida vieglo RAD Studio versiju ar nosaukumu Turbo: Turbo Delphi (Win32 un .NET), Turbo C#, Turbo C++.

2008. gada martā tika paziņots, ka šīs produktu līnijas izstrāde tiks pārtraukta.

2007. gada martā CodeGear iepriecināja lietotājus ar atjaunināto Delphi 2007 līniju Win32 produktiem un pilnīgi jauna produkta Delphi 2007 izlaišanu PHP.

2007. gada jūnijā CodeGear iepazīstināja ar saviem nākotnes plāniem, tas ir, publicēja tā saukto ceļa karti.

Embarcadero RAD Studio 2010

  • Pēc noklusējuma pilnīgs Unicode atbalsts visās valodas daļās, VCL un RTL; visu Windows API funkciju zvanu aizstāšana ar unikoda analogiem (tas ir, MessageBox izsauc MessageBoxW, nevis MessageBoxA).
  • Vispārinātie veidi, aka ģenēriskās zāles.
  • Jauna $POINTERMATH kompilatora direktīva.
  • Funkcija Exit tagad var pieņemt parametrus atbilstoši funkcijas veidam.

Sastādītāji

  • Embarcadero Delphi (agrāk CodeGear Delphi un Borland Delphi), iespējams, ir slavenākais kompilators, kas ir Borland Pascal un Turbo Pascal pēctecis. Izmanto Win16 (Delphi 1), Win32 (Delphi 2 un jaunākas versijas), Win64 (Delphi 16 (XE2) un jaunākas versijas), kā arī .NET 1.x, 2.0 (Delphi 8, Delphi 2005-Delphi 2007). Pēc tam .NET atbalsts tika sadalīts atsevišķā produktā, kas pazīstams kā Oxygene.
  • Free Pascal (FPC) ir bezmaksas Object Pascal kompilators, kas atbalsta dažādus Pascal dialektus, tostarp Turbo Pascal, Delphi un savus dialektus. Šobrīd FPC var ģenerēt kodu x86, x86-64, PowerPC, SPARC un ARM procesoriem, kā arī dažādām operētājsistēmām, tostarp Microsoft Windows, Linux, FreeBSD, Mac OS. FPC ir vairākas programmatūras izstrādes vides (viens no slavenākajiem pārstāvjiem ir Lazarus).
  • GNU Pascal (atsevišķi izstrādāta versija no GCC). Tā mērķis nav turpināt Delphi dialektu sēriju kā daļu no Pascal, bet tomēr satur saderības režīmu Borland Pascal un ļoti lēni uzņem Delphi valodas komponentus. Nav piemērots lielu projektu apkopošanai, kas satur Delphi kodu, taču ir vērts atzīmēt, ka lielākā daļa operētājsistēmu un arhitektūru to atbalsta.
  • Skābeklis (agrāk pazīstams kā Chrome klausieties)) ir Object Pascal kompilators, kas ir integrēts programmā Microsoft Visual Studio. Pieejams arī kā kompilators ar bezmaksas CLI komandrindu. Izmanto .NET un mono platformas. Pašlaik tiek pārdots ar zīmolu Embarcadero Delphi Prism.
  • MIDletPascal ir programmēšanas valoda ar Delphi līdzīgu sintaksi un tāda paša nosaukuma kompilatoru, kas pārvērš pirmkodu kompaktā un ātrā Java baitkodā.
  • PocketStudio — uz Pascal balstīta IDE, kas paredzēta Palm OS.
  • Virtual Pascal — bezmaksas kompilators un teksta IDE priekš Win32, OS/2 un Linux. Tajā laikā tas bija ļoti ātrs un ļoti saderīgs (Delphi 5 dizaini tiek daļēji atbalstīti). Ārēji tas ir ļoti līdzīgs Borland Pascal 7 teksta videi, lai gan, piemēram, nav ar to saderīgas grafikas. Tomēr izstrāde beidzās 2004. gadā, un pirmkods nebija atvērts. Kopš tā laika FPC ir daudz progresējis un parasti ir labāks programmēšanai. Neskatoties uz to, VP joprojām ir ļoti labs risinājums, lai ātri nomainītu vēl novecojušās Borland Pascal versijas skolai/institūtam, ņemot vērā tā sākotnējo darbu Win32 bez problēmām ar krievu kodējumu.

Valodas sintakse

Operatori

Operatoru saraksts, atdalīts ar atstarpēm: := + - * / div mod not un vai ar xor shl shr ^ =<> >= <= < >@in ir kā

Izteicieni

Izteiksmes Object Pascal (Delphi) var būt aritmētiskas, loģiskas vai virknes.

Galvenās loģiskās izteiksmes:
Loģiskās izteiksmes galvenokārt tiek izmantotas nosacījumu paziņojumos. Loģiskās izteiksmes ietver tādas darbības kā:

  • not - “NOT”, loģiskās izteiksmes noliegums (NOT<логическое_выражение>)
  • un - "Un", loģisko izteiksmju reizināšana (krustošanās) (<логическое_выражение1>UN<логическое_выражение2>)
  • vai - “OR”, apvienojot loģiskās izteiksmes (<логическое_выражение1>VAI<логическое_выражение2>)
  • xor — “ekskluzīvs VAI”, VAI noliegums, viss, kas neietilpst VAI (<логическое_выражение1>XOR<логическое_выражение2>)

Datu veidi

Programmā apstrādātie dati ir sadalīti mainīgajos, konstantēs un literāļos. Konstantes ir dati, kuru vērtības ir iestatītas konstantes deklarācijas sadaļā un nemainās programmas izpildes laikā.

Objekti

  • Embarcadero produkti: Embarcadero Delphi, Embarcadero C++ Builder, Borland JBuilder 1. un 2. versija.
  • Datu bāzes administrēšana un izstrāde: MySQL Tools, IBExpert.
  • Inženierprogrammatūra: Altium Designer.
  • Failu pārvaldnieki: Total Commander, Fregate.
  • Grafikas skatītāji: FastStone Image Viewer, FuturixImager, drComRead.
  • Video un audio atskaņotāji: Light Alloy, The KMPlayer, AIMP, X-Amp.
  • Tūlītējās ziņojumapmaiņas programmas: QIP, R&Q, Skype GUI, The Bat! , PopTray , FeedDemon .
  • Mūzikas izveide: FL Studio, Guitar Pro (līdz versijai 6.0).
  • Programmatūras izstrāde: Dev-C++, DUnit, Game Maker, Inno Setup, PyScripter.
  • Web izstrāde: Macromedia HomeSite.
  • Teksta redaktori: BirEdit, Notepad GNU, Bred.
  • Grāmatvedība un nodokļi: “PARUS”, AVARDA (līdz versijai 6.x ieskaitot).
  • Programmas animāciju veidošanai: Pivot Stickfigure Animator.
  • Datu saspiešanas programmas: ALZip, PowerArchiver, PeaZip.
  • Datorspēles: Brīnumu laikmets, Space Rangers, Venom. Koda nosaukums: Outbreak, Space Empires V, "Patiesība par devīto uzņēmumu".
  • Grafiskie redaktori: Real Paint.

Piezīmes

Literatūra

  • Nīls Dž.Rubenkings. Delphi programmēšanas valoda manekeniem. Ievads Borland Delphi 2006 = Delphi for Dummies. - M.: Dialektika, 2007. - 336 lpp. - ISBN 0-7645-0179-8
  • Havjers Pašeku. Programmēšana Borland Delphi 2006 profesionāļiem = Delphi for .NET Developer’s Guide. - M.: Williams, 2006. - 944 lpp. - ISBN 0-672-32443-X
  • A. N. Valvačovs, K. A. Surkovs, D. A. Surkovs, Ju. M. Četirko. Programmēšana Delphi valodā. Apmācība . - 2005. gads.

Saites

  • Programmēšanas vides lapa mājaslapā Embarcadero Technologies

Tātad, šajā rakstā mēs runāsim par to, kā noteikt Windows operētājsistēmas bitumu, programmējot Delphi. Tas ir nepieciešams, lai, piemēram, izvēlētos vienu vai otru draivera versiju - x86 (32 biti) vai x64 (64 biti).

Tātad, sāksim.

Izveidosim jaunu projektu un pievienosim veidlapai Label komponentu.

Pēc tam mēs ejam uz avota koda redaktoru un sadaļā ar mainīgajiem mainīgajiem pievienojam razr virknes mainīgo (string data type, t.i. string).

var Form1: TForm1;

razr: virkne;

Pēc tam veiciet dubultklikšķi uz formas, nokopējiet un ielīmējiet tajā šādu kodu (galvenās formas TForm1.FormCreate izveides procedūrā), starp frāzēm sākas un beigas; (tas ir, procedūras sākums un beigas).

(izmantojot funkciju Get Environment Variable, mēs nolasām mainīgā ProgramFiles(X86) vērtību

ja sistēma ir 32 bitu, tad tai būs tukša vērtība

ja 64 bitu, tad tam būs zināšanas par C:Program Files (x86)

t.i., mape, kurā ir instalētas programmu 32 bitu versijas)

razr:= GetEnvironmentVariable("Programmas faili(x86)");

etiķete1.Caption:= razr;

ja (razr = ""), tad

sākt

label1.Font.Color:=clRed; (Maina uzraksta krāsu, jūs varat izvēlēties jebkuru pēc savas gaumes, piemēram, clGreen - zaļa)

label1.Caption:= "Jums ir x86"; (etiķetes nosaukuma labl1 vietā var rakstīt jebko citu, piemēram, metka)

cits

sākt

label1.Font.Color:=clBlue; (Maina uzraksta krāsu, jūs varat izvēlēties jebkuru pēc savas gaumes, piemēram, clGreen - zaļa)

label1.Caption:= "Jums ir x64";

beigas;

Kā programma darbojas?

Funkcija Get Environment Variable nolasa vides mainīgā vērtību sistēmā Windows ProgramFiles (X86).

Ja sistēma ir 32 bitu, tad tai būs tukša vērtība.

Ja tas ir 64 bitu, tad tam būs zināšanas C:Program Files(x86), t.i., šī ir mape, kurā ir instalētas programmu 32 bitu versijas.

Patiesībā tas arī viss.

Tas notika ar mani.

Zemāk varat lejupielādēt arhīvu ar programmas avota kodu, lai mēģinātu izdomāt, kā tas darbojas pats.


Komentāri ()

wdfm 90

Programma darbojas labi operētājsistēmā Windows 7 x64, jūs varat to izmantot

Edvards 300

Visiem, kas iesāk ārpus tēmas + neķītrās valodas, tiks 1 diena aizliegts! Tas neattiecas uz administratoriem.
.php?board=18.0

Es ne velti izveidoju šo forumu!

Edvards 300

Ievads

Šīs vadlīnijas ir izstrādātas, lai palīdzētu studentiem iegūt praktiskas iemaņas tehnoloģijā, kā vizuāli izstrādāt savas lietojumprogrammas operētājsistēmai Windows Delphi vidē, izmantojot objektorientētās programmēšanas metodoloģiju. Laboratorijas darbi aptver galvenos Windows programmu izstrādes posmus.

Vadlīnijas sastāv no trim sadaļām. Pirmajā sadaļā ir sniegts vizuālās aplikācijas dizaina un Delphi programmēšanas vides pamatjēdzienu apraksts, otrajā daļā formulētas vispārīgās prasības laboratorijas rezultātu ieviešanai un prezentēšanai. Trešā sadaļa sastāv no konkrētu laboratorijas darbu aprakstiem ar nepieciešamo īsu teorētisko informāciju, programmas izstrādes piemēriem, ieteikumiem darbu veikšanai, uzdevumu variantiem darba veikšanai un jautājumiem pašpārbaudei. Lai pabeigtu darbu, studentiem jāpārzina Object Pascal valoda un Delphi vizuālās programmēšanas vide.

Delphi pamatjēdzieni un definīcijas

delphi programmu masīva vizuālais

Ekrānā pēc Delphi palaišanas ir četri logi: galvenais logs, veidlapas, objektu inspektors un koda redaktors, ko gandrīz pilnībā pārklāj veidlapas logs.

Galvenajā logā ir Delphi komandu izvēlne, rīkjosla un komponentu palete.

Veidlapas logs, tā nosaukums FORM1, attēlo veidni, viena no izstrādājamās lietojumprogrammas objektu izkārtojumu.

Objektu inspektora logs, tā nosaukums Object Inspector ļauj redzēt un mainīt projekta objektu rekvizītus. Pēc Delphi palaišanas šajā logā tiek parādīti veidlapas FORM1 rekvizīti.

Kodu redaktora logs ir paredzēts notikumu apstrādes procedūru izveidei. Delfos kods ir programmas teksts.

Objekti vai vadīklas ir formas sastāvdaļas, no kurām tiek izveidots projekts; starp citu, pati forma, kā minēts iepriekš, arī ir objekts. Objekti var būt komandu pogas, teksta ievades lauki, slēdži, etiķetes, ritjoslas un logi.

Objekta rekvizīti ir, piemēram, virsraksta teksta lielums, veidlapas fona krāsa vai teksts uz komandas pogas un daudz kas cits; pilnu rekvizītu sarakstu var skatīt logā Object Inspector atlasītajam objektam. objektu.

Notikums ir kaut kas, kas notiek, kamēr darbojas jūsu izveidotā lietojumprogramma. Delfos katram notikumam ir nosaukums, piemēram, peles klikšķis ir OnClick notikums, dubultklikšķis ir OnDblClick notikums.

Projekts ir failu kopa (programmas vienības - moduļi), ar kuras palīdzību kompilators izveido izpildāmu programmas failu. Viens no projekta failiem, ko sauc par projekta failu un ar paplašinājumu dpr, satur vispārīgu projekta aprakstu. Projekta fails ir galvenais lietojumprogrammas modulis, ko ģenerē Delphi. Papildus galvenajam modulim projekts ietver vienu vai vairākus moduļus (vienības). Projekta moduļu faili (Unit) satur procedūru tekstus, funkcijas, tipu aprakstus, kā arī visu informāciju izpildāmās programmas izveidei, un tiem ir pas paplašinājums. Procedūra ir operatoru grupa programmēšanas valodā, kas ļauj veikt noteiktas darbības (atrisināt problēmu). Vienā vai otrā veidā viss izpildāmais kods, ko apkopojāt inicializācijai, obligāti tiek ievietots kādā procedūrā.

Vienība sastāv no trim sadaļām: interfeiss (sākas ar vārdu interfeiss), ieviešana (sākas ar vārdu implementetion) un. Zemāk ir norādīta moduļa struktūra.

unitModuleName;

(Šeit ir šī moduļa procedūru un funkciju apraksti, ko var izmantot citi moduļi)

(Šeit ir moduļa globālo konstantu deklarācijas, kuras var izmantot moduļa procedūrās un funkcijās)

(Šeit ir globālo moduļu tipu deklarācijas, kuras var izmantot moduļa procedūrās un funkcijās)

(Šeit ir moduļa globālo mainīgo deklarācijas, kuras var izmantot moduļa procedūrās un funkcijās)

(Šeit ir moduļa procedūru un funkciju apraksti)

(Norādījumi moduļa mainīgā inicializācijas sadaļai atrodas šeit)

Tādējādi saskarnes sadaļa norāda kompilatoram, kura moduļa daļa ir pieejama citiem programmas moduļiem. Ieviešanas sadaļa sākas ar direktīvu ($R*.DFM), kas liek kompilatoram izmantot formas aprakstu, ģenerējot izpildāmo failu. veidlapas apraksts atrodas failā ar paplašinājumu dfm, kura nosaukums sakrīt ar moduļa nosaukumu. Direktīvai ($R*.DFM) seko notikumu apstrādes procedūras formai un tās komponentiem. Programmētājs šeit var izvietot arī izstrādātas procedūras un funkcijas. Ja inicializācijas sadaļā nav norādījumu, tad vārds start nav norādīts.

Delphi ir programmēšanas valoda un programmatūras izstrādes vide. To izstrādājis uzņēmums Borland (agrāk pazīstams kā Inprise). Delphi programmēšanas valoda, agrāk pazīstama kā Objekts Paskāls(Pascal ar objektorientētiem paplašinājumiem), kas sākotnēji bija paredzēts tikai Microsoft Windows, taču tagad ļauj izveidot vietējās lietojumprogrammas operētājsistēmai Linux un Microsoft. NET Framework un citi (skatiet tālāk). Programmēšana iesācējiem.
Populārākais lietojums ir galddatoru lietojumprogrammu un uzņēmumu datu bāzu izstrāde, kā arī Delph programmēšanas valoda. Un var izmantot vairumam projektu izstrādes veidu. Tā bija viena no pirmajām valodām, kas kļuva pazīstama kā RAD (Rapid Application Development) rīks, kad tas iznāca 1995. gadā. Delphi 2, kas tika izlaists gadu vēlāk, atbalstīja 32 bitu Windows vidi, un tikai dažus gadus vēlāk iznāca C, C++ Builder. 2001. gadā kļuva pieejama Linux versija, kas pazīstama kā Kylix (klasiskā grieķu urna). Katru gadu bija viena jauna versija, 2002. gadā produkts kļuva pazīstams kā Delphi 7 Studio, valodu oficiāli sauca par Delphi programmēšanas valodu, nevis Object Pascal, un tika pievienots atbalsts Linux (izmantojot Kylix) un. NET (izmantojot priekškompilatoru). Pilns atbalsts. NET ir plānots gaidāmajā Delphi 8. Programmēšana manekeniem.
Galvenās Delphi un Kylix sastāvdaļas: Delphi valoda (agrāk oficiāli pazīstama kā Object Pascal valoda), VK/CLX (Visual Component Library), spēcīgi datu bāzes savienojumi, apvienojumā ar jaudīgu IDE (Integrated Development Environment) un papildu atbalsta rīkiem.
Lieliskas Delphi valodas iespējas ietver:

  • Caurspīdīga objektu apstrāde, izmantojot atsauces vai norādes
  • Rekvizīti kā daļa no valodas kopā ar Get un Set funkcijām, kas pārredzami iekapsulē piekļuvi lauka dalībniekiem
  • Indekss un noklusējuma rekvizīti, kas nodrošina piekļuvi kolekcijai ērtā un pārskatāmā veidā
  • Delegāti vai citādi tipam drošas rādītāja metodes, kas tiek izmantotas komponentu izraisītu notikumu aktivizēšanai
  • Interfeisa ieviešanas deleģēšana klases laukam vai īpašumam
  • Viegli ieviešami Windows ziņojumu apstrādātāji, atzīmējiet klases metodi ar apstrādājamā ziņojuma lodziņa numuru/nosaukumu
  • Lielākā daļa no iepriekš uzskaitītajām funkcijām vispirms tika ieviestas Delphi un vēlāk tika pieņemtas citās valodās.

Delphi un tā priekšgājēja Turbo Pascal galvenais arhitekts bija Anderss Hejlsbergs, līdz viņš 1996. gadā pārcēlās uz Microsoft, lai savu darbu veltītu programmēšanas pamatiem.
Delphi produkts tiek izplatīts dažādos iepakojumos, no kuriem katrs piedāvā vairāk funkcionalitātes nekā citi:

  • Personīgi
  • Profesionāls
  • Uzņēmums
  • Arhitekts

Labi iemesli Delphi izmantošanai:

  • Ļoti informatīvas un sabiedrībai noderīgas ziņas
  • Var apkopot vienā izpildāmā failā, atvieglojot izplatīšanu un samazinot problēmas ar dažādiem DLL
  • VCL un trešo pušu komponenti parasti ir pieejami ar pilnu pirmkodu
  • Jaudīgs un ātri optimizējošs kompilators
  • Viens avota kods rada izcilus mašīnkodus dažādām operētājsistēmām
  • Atbalsts jaunākajām tehnoloģijām un standartiem

Kloni un alternatīvas

Lai gan nevar apmierināt visas programmētāju vajadzības, ir pieejams vesels papildu rīku komplekts, kas paredzēts, lai paplašinātu Delphi atrisināto uzdevumu loku, vai arī to var izdarīt, ievietojot kodu citās valodās, kur ir Delphi un Kylix. bezspēcīgs.
Šos Delphi aizstājējus var izmantot, ja nevarat samaksāt par izstrādes vidi, ir nepieciešamas bezmaksas izstrādes vides (piemēram, operētājsistēmām un bezmaksas programmatūrai vai izglītības nolūkos). Vairumā gadījumu šīs alternatīvas tiek izmantotas apmācībai, kā arī servera komponentu rakstīšanai operētājsistēmām, kuras netiek plaši izmantotas (tas bija līdz Kylix parādījās operētājsistēmai Linux, ko lielākā daļa izmanto kā OS serveriem ) . .
Uzskaitīsim dažus:

  • Free Pascal ir aizstājējs, kas tiek piegādāts kā kompilators, kas darbojas no komandrindas. Šīs izstrādes pamatā ir savietojamība gan ar Turbo Pascal, gan Delphi dialektu pamatfunkciju komplektu. Delphi versiju, kas vecākas par 4, funkcijas ir ieviestas un darbojas. Darbojas lielākajā daļā x86 operētājsistēmu, tostarp Win32, Dos, Linux, BSD un Novell Netware. Nav atbalsta citām operētājsistēmām m68k un PowerPC, kuru statuss joprojām mainās ļoti ātri. Ir sācies darbs pie pārejas uz SPARC platformu.
  • GNU Pascal (atsevišķi izplatīta GNU Compiler kolekcijas daļa), lai gan formāli nav paredzēta Borland Pascal dialektiem, tomēr satur saderību ar Borland Pascal un pakāpeniski absorbē Delphi valodas iezīmes, lai gan tā nav piemērota liela apjoma pārkompilēšanai. Delphi kods. Tas ir visproduktīvākais kompilators operētājsistēmu un procesoru ziņā, lai gan tas ir pelnījis pieminēt tikai kā pēdējo līdzekli.
  • Ir rīks, ko sauc par Pocket studio, kura mērķis ir apkopot noņemtu Delphi kodu kabatas datoriem.
  • Virtuālais Pascal — kompilators, x86 32 bitu Turbo Pascal un Delphi, saderīgi galvenokārt ar OS/2 un Windows, lai gan ir izstrādāts DOS paplašinātājs un eksperimentāls Linux šķērskompilators. Kompilators ir iestrēdzis pie Delphi 2. versijas, un vietne nav īpaši mainījusies divu gadu laikā, taču tā ir vēl viena no labākajām vietnēm ar lielisku IDE un atkļūdotāju, lai gan arī Free Pascal nav slinks.
  • BloodShed izplata ļoti labu Win32 grafikas redaktoru (lai gan ne RAD) kā interfeisu GNU Pascal un Free Pascal.
  • Lazarus centieni ir vērsti uz Free Pascal izstrādes vides izveidi. Lai gan GTK ports kļūst noderīgs nelielu lietojumprogrammu, piemēram, konfigurācijas rīku rakstīšanai, win32 portam joprojām ir nepieciešams daudz darba.
  • InnerFuse ir Delphi tulkotājs iegulšanai lietojumprogrammās. Klīst baumas, kas darbojas ar vairākām Delphi versijām.
  • WDOSX ir Win32 DOS Extender emulācijas API, ko var izmantot, lai iegūtu Delphi rakstītas konsoles lietojumprogrammas, kas darbojas parastajā DOS.

Kā kļūt par vietņu izstrādes profesionāli un sākt pelnīt naudu? Lēti video kursi ar ievada ievadu.

Sāksim iepazīšanos ar programmēšanu Delphi vidē ar tādiem jautājumiem kā pašas programmēšanas būtība, tās pamati un apakštipi. Tāpat apskatīsim, kas ir Delfu vide, ar ko tā atšķiras no citām un kādu ceļu nogājusi kopš tās pirmsākumiem pirms 10 gadiem.

Kas ir programmēšana

Tātad, pirmkārt, sapratīsim paši, ko nozīmē termins programmēšana? Tagad daudzi sevi dēvē par programmētājiem, pat nezinot, kas tas ir: pārbaudot, izrādās, ka cilvēks, kurš HTML dokumentā ir nomainījis pāris koda rindiņas, jau ir gatavs sevi uzskatīt par programmētāju. Bet patiesībā, strādājot ar HTML (proti, pašu HTML), jūs nevarat kļūt par programmētāju, jo HTML, kā norāda nosaukums (Hypertext Markup Language), nav programmēšanas valoda.

Rezultātā mums ir pirmais nosacījums: lai apgūtu programmēšanu, ir nepieciešama kaut kāda programmēšanas valoda. Mūsu gadījumā šīs būs jaunākās Object Pascal versijas (14.0 vai 15.0).

Tālāk, pieņemsim, kāds, kurš sevi dēvē par programmētāju, ne tikai rediģēja pāris HTML koda rindiņas, bet arī ieraudzīja Delphi un pat uzzīmēja tajā formu ar 2-3 pogām un teksta lauku. Vai šis ir programmētājs? Visticamāk arī nē. Fakts ir tāds, ka zem vizuālā apvalka patiesībā slēpjas ļoti sarežģīts mehānisms, kas nodrošina vadības ierīču (tās pašas pogas) mijiedarbību ar lietotāju un operētājsistēmu - no vienas puses, un ļauj veikt gandrīz jebkuru skaitļošanas darbību. - uz citiem. Ar visu to jums vajadzētu būt iespējai izdarīt galveno - izveidot programmas darbības algoritmus - vai tā būtu reakcija uz konkrētas pogas nospiešanu, vai funkcijas izveide sarežģīta matemātiska vienādojuma risināšanai.

Tātad programmēšana savā modernajā koncepcijā ietver zināšanas par operētājsistēmas darbības principiem, tās komponentu mijiedarbību un iekšējo struktūru. Nu, tajā pašā laikā tiek saglabāta klasiskā programmēšanas definīcija, proti, spēja sastādīt algoritmus, matemātiskās un uzvedības programmas. Tas viss tiek realizēts kādas programmēšanas valodas kontekstā, piemēram, tas pats Object Pascal no Delphi.

Kas ir Delphi

Tagad mēs zinām, ka programmēšana ir algoritmu apkopošana un programmēšanas valodas izmantošana. Bet, ja valoda, kuru mēs mācāmies, ir Object Pascal, tad kas ir Delphi? Atbilde ir: Delphi ir RAD jeb Rapid Application Development — ātras lietojumprogrammu izstrādes vide. Citiem vārdiem sakot, Delphi ietver ne tikai visus rīkus darbam ar Object Pascal valodu (jo īpaši tāpēc, ka, sākot ar 2005. gada versiju, Delphi atbalsta citas programmēšanas valodas, jo īpaši C#), bet arī vairākus papildu rīkus, kas paredzēti, lai paātrinātu. cik vien iespējams paātrināt procesu un vienkāršot programmu izveidi. Šie rīki ietver, pirmkārt, vizuālo formu redaktoru, ar kura palīdzību jūs varat izveidot pilnvērtīgu programmu dažu minūšu laikā un bez papildu piepūles, kā arī citas programmas izstrādes vizuālās sastāvdaļas sastāvdaļas.

Rezultātā programmas izstrādes laiks tiek ievērojami samazināts, jo nav manuāli jāaprēķina katra lietotāja interfeisa elementa atrašanās vieta.

Kopā ar izstrādātajiem koda rakstīšanas un atkļūdošanas rīkiem – specializētu teksta redaktoru, optimizējošu kompilatoru un atkļūdotāju – Delphi ir rīks ātrai lietojumprogrammu izstrādei. Tajā pašā laikā Delphi pamats gala lietotājam ir IDE - Integrated Development Environment, kas apvieno koda redaktoru un vizuālās izstrādes rīkus, kā arī savieno to ar kompilatoru, datu bāzes izstrādes rīkiem un citiem Delphi komponentiem.

Delfos un citi

Protams, Delphi nav vienīgā ātrās lietojumprogrammu izstrādes vide. Ir arī citi RAD, kas ir vienlīdz noderīgi vizuālo programmu izstrādei, piemēram, Visual Basic. Bet BASIC ir pazīstama kā ne pati jaudīgākā un ērtākā programmēšanas valoda, turklāt tajā rakstītajām programmām ir raksturīga salīdzinoši zema veiktspēja.

Tajā pašā laikā ir programmēšanas valodas, kas ir ne mazāk jaudīgas kā Object Pascal un kurām ir savi RAD - pirmkārt, šī ir C++ valoda kopā ar tādiem labi zināmiem izstrādes rīkiem kā Visual C++ un C++ Builder. Tomēr C++ nav labvēlīgi salīdzināms ar Object Pascal mācību viegluma ziņā. Turklāt programmu veidošana un atkļūdošana programmā C++ notiek salīdzinoši lēni, lai gan gatavās programmas darbojas tikpat ātri kā tās, kas izveidotas, izmantojot Delphi.

PIEZĪME
Ņemiet vērā, ka tās parādīšanās laikā 1995. gadā Delphi bija patiesi unikāla vide, kas apvienoja vizuālo programmēšanu ar optimizējošu kompilatoru un rīkiem darbam ar datu bāzēm.

Rezultātā iegūstam teju ideālu produktu ātrai programmu izstrādei: no vienas puses ar Visual Basic pielīdzināma vienkāršība un ērtības, no otras – C++ raksturīgā jauda, ​​ātrums un elastība.

Šeit jāatzīmē, ka Delphi lietotajai Object Pascal valodai ir maz kopīga ar tās priekšteci - Pascal programmēšanas valodu, kuru jūs, iespējams, esat apguvis skolā vai augstskolā. Pirmkārt, Delphi izmanto tīru uz objektu orientētu programmēšanas modeli, savukārt Pascal bija parasta procesuālā valoda. Kāda ir procesuālās programmēšanas un objektorientētās programmēšanas atšķirību būtība? Šis ir jautājums, ko mēs apspriedīsim nākamajās divās rindkopās.

Procedūru programmēšana un algoritmi

Gandrīz visas mūsdienu programmēšanas valodas ir procesuālas. Tas nozīmē, ka katra programma sastāv no procedūru kopas, no kurām katra atrisina noteiktu problēmu, savukārt viena procedūra var izsaukt jebkuru citu, ieskaitot sevi (pēdējo, t.i., procedūru, kas izsauc sevi, sauc par rekursiju). Pati programma ir sastādīta, pamatojoties uz algoritmiem, un pietiek tikai ar trim to variantiem - atlase (dakša), atkārtošana (cikls) un pāreja. Taču pēdējais veids praksē praktiski netiek izmantots tā sliktās reputācijas dēļ (runa ir par GOTO - kādreiz iemīļoto, aiz izmisuma, BASIC programmētāju operatoru).

Apskatīsim vienkāršāko algoritmu - spēlei "uzmini skaitli". Tās darbības loģika ir tāda, ka jums ir jāpārbauda, ​​vai skaitlis ir lielāks vai mazāks par slēpto, un, ja tā, tad parādīsit atbilstošo mājienu, un, ja tas nav ne lielāks, ne mazāks (t.i., atbilst), spēle beidzas. . Šāda algoritma blokshēma sastāvēs no 2 zariem (1.1. att.).

Rīsi. 1.1. Vienkārša algoritma blokshēma

Vispirms ir jāprasa lietotājam skaitlis A, kas tiek divreiz salīdzināts ar iepriekš noteiktu skaitli B. Pirmkārt, tā pārbauda, ​​vai skaitlis A ir lielāks par B, un, ja tā, programma ziņo, ka "pārsniegums" ir noticis un atgriežas pie ieejas punktu numuriem. Ja skaitlis nav lielāks, tiek veikts otrs salīdzinājums - lai redzētu, vai A ir mazāks par B. Ja tas tā ir, tiek parādīts ziņojums, ka skaitlis ir mazāks ("nepietiekams"), un atkal tiek atgriezta līdz sākumam notiek. Bet, ja skaitlis A nav mazāks par skaitli B, tad, ņemot vērā to, ka šobrīd jau ir zināms, ka tas nav lielāks, tas ir vienāds ar skaitli B, un programma beidzas. Tajā pašā laikā tas var parādīt lietotājam apsveikumus par skaitļa uzminēšanu.

Šis algoritms var būt daļa no cita algoritma. Piemēram, nav paredzēts paša skaitļa ģenerēšana, kas ir jāuzmin. Nav arī atkārtošanas iespējas. Lai labotu šo situāciju, apsveriet algoritma blokshēmu, kas kontrolē programmas izpildi kopumā (1.2. att.).


Rīsi. 1.2. Programmas vadības blokshēma

Izpildes sākumā tiek ģenerēts jauns numurs, ko lietotājs uzminēs. Tad nāk pats minēšanas bloks, kuru mēs jau esam apsvēruši (sk. 1.1. att.) - šeit tas tiek parādīts viena vienkārša moduļa veidā, jo tas neietekmē programmas izpildi kopumā. Pēc šī bloka pabeigšanas mums ir viens atzars - atkarībā no tā, ko lietotājs reaģē uz piedāvājumu atkārtot spēli. Tātad, ja atbilde ir pozitīva, tad programmai būs jāiet uz sākumu, t.i. lai ģenerētu jaunu numuru. Ja lietotājs atsakās, programma ir jāpārtrauc.

Konkrēta algoritma ieviešana ir atkarīga no izmantotās programmēšanas valodas, kā arī no programmas veidotāja vēlmēm, jo ​​parasti vienu un to pašu konstrukciju var atrisināt, izmantojot vairākas dažādas metodes. Piemēram, lai atgrieztos blokshēmā norādītajā punktā, varat izmantot gan cilpas, gan beznosacījumu lēciena paziņojumus. Pašus blokus var ievietot atsevišķās procedūrās un saukt par apakšprogrammām. Vienīgā kopīgā iezīme ir nosacītais operators, kas ir atbildīgs par dakšiņu - gandrīz visās valodās, un Pascal nav izņēmums, to sauc par IF. Taču mums vēl būs laiks iepazīties ar Object Pascal operatoriem.

Par objektorientēto programmēšanu

Ja atlase, atkārtošana un pārlēkšana ir jebkuras procesuālās programmēšanas valodas stūrakmeņi, tad objektorientētā programmēšana svarīgi ir tādi jēdzieni kā iekapsulēšana, mantošana un polimorfisms. Apskatīsim šos jēdzienus, bez kuriem nevienu objektu atbalsta valodu nevar saukt par objektorientētu, sīkāk.

PIEZĪME
Termins “objekts” programmēšanā tiek saprasts kā noteikts sarežģīts datu tips, kuram var pievienot šim tipam unikālas īpašības un OOP gadījumā arī metodes.

Iekapsulēšana ir datu un apakšprogrammu, kas tos apstrādā - metožu - kombinācija vienā objektā, ko OOP sauc par "klasi". Tas nozīmē, ka klase iekapsulē visu nepieciešamo darbam ar konkrētu objektu.

Mantojums ir vēl viena svarīga OOP daļa. Mantojums nozīmē spēju izveidot tipu (objektu), pamatojoties uz cita objekta definīciju. Šajā gadījumā visas vecākobjekta īpašības un metodes var mantot bērns. Piemēram, ja mums ir “auto” objekts, tad uz tā pamata varam izveidot citu objektu, teiksim, “tramvaju”, kas mantos visus tā īpašumus un papildus tiem saņems arī kādu no saviem. Savukārt šim objektam varēs būt arī savi pēcnācēji utt. Rezultāts ir objektu koks, ko sauc par klases hierarhiju.

Objektā Pascal visas klases cēlušās no viena priekšteča - TObject klases, kas īsteno darbības ar objektu, kas kopīgs visām klasēm, piemēram, izveidošanu un dzēšanu.

PADOMS
Delphi kastē iekļautajās versijās ir plakāts, kurā parādīts visu galveno Delphi komponentu klases koks. Tāpēc, ja esat laimīgs licencēta produkta īpašnieks, varat vizuāli izpētīt šīs sistēmas struktūru, izvietojot šo plakātu savā darba vietā.

Visbeidzot, trešais pīlārs, uz kura balstās OOP, ir polimorfisms jeb spēja radīt tāda paša nosaukuma īpašības un metodes saistītos objektos, kas pēc būtības atšķirsies. Pieņemsim, ka mums jau ir klases “auto” un “tramvajs”, un abām ir definēta īpašība “motors”, bet ja automašīnai motora tips ir viena tipa objekts, tad tramvajam tas ir pavisam cits. viens.

Vēl viens svarīgs OOP raksturīgs komponents ir slēpšana, kas ļauj padarīt vairākas objekta īpašības neredzamas. Citiem vārdiem sakot, ja mēs varam definēt "auto" tipa objektu, kuram, savukārt, tiek noteiktas tādas īpašības kā šasija, motors un riteņi. Tātad, ja dzinēju un riteņus var padarīt redzamus (un pieejamus) visur, kur ir pieejama pati “auto” klase, tad šasija nevar. Attiecīgi piekļuvi šādam īpašumam var iegūt tikai tajās programmas daļās, kurās tiek veikts paša “mašīnas” objekta apraksts. Šādas īpašības sauc par aizsargātām.

Sīkāka informācija par objektorientēto programmēšanu tiks apspriesta šīs publikācijas otrajā daļā.

Vizuālā programmēšana un Delphi

Tātad Delphi ir vide, kas darbojas ar objektorientētu strukturālo programmēšanas valodu Object Pascal. Papildus tam Delphi ir arī vizuālās izstrādes vide. Citiem vārdiem sakot, jau programmas izveides procesā var redzēt, kā tā izskatīsies izpildes laikā. Vizuālā programmēšana ievērojami samazina laiku, kas nepieciešams, lai izveidotu lietotāja interfeisu Windows lietojumprogrammām. Pirms vizuālās izstrādes rīku parādīšanās programmēšana operētājsistēmā Windows bija ļoti grūta, jo bija gandrīz akli jāaprēķina katras vadīklas atrašanās vieta lietojumprogrammas logā, kas izraisīja daudz kļūdu (1.3. att.).


Rīsi. 1.3. Klasiskā un vizuālā pieeja saskarnes izveidei

Tas, ka Delphi ir vizuālās izstrādes vide, atstāj savas pēdas programmēšanas valodā. Jo īpaši tas nodrošina īpašus līdzekļus, lai noteiktas klašu īpašības varētu būt pieejamas jau programmas izstrādes stadijā, nevis tikai izpildes laikā. Bet visa šī krāšņuma vissvarīgākā daļa ir klases bibliotēka - VCL (Visual Component Library). Tieši VCL slēpj visas Windows iekšējo elementu aptuvenās malas un ļauj viegli izveidot lietojumprogrammas, neiesaistoties ilgstošā karā ar sistēmas ziņojumu, atzvanu, rokturu un norādes apstrādi.

Ar visu šo, protams, neviens neaizliedz izmantot Windows funkcijas tieši, vajadzības gadījumā apejot VCL. Tomēr tas var būt vajadzīgs ļoti reti, tāpēc iesācējam Delphi programmētājam Windows lietojumprogrammu rakstīšanai nav nepieciešams nekas cits kā VCL.

Vizuālos komponentus sīkāk aplūkosim šīs grāmatas 3. daļā.

Delphi versijas un to atšķirības

Ievaddaļas beigās aplūkosim atšķirības starp Delphi versijām, vienlaikus pētot šīs brīnišķīgās attīstības vides attīstības vēsturi.

Delphi 1. Delphi 1.0, kas tika izlaists neilgi pirms Windows 95 parādīšanās, bija pirmais Windows (3.1) lietojumprogrammu izstrādes rīks, kas apvienoja optimizējošu kompilatoru, vizuālās izstrādes vidi un jaudīgus datu bāzes rīkus. Šī bija īsta Paskāla valodas reinkarnācija – tā kļuva par Object Pascal.

Delphi 2. Delphi 2. versija, kas tika izlaista pēc gada, piedāvāja visu to pašu, bet Windows 32 bitu versijām (95/NT), atkal kļūstot par pirmo rīku, kas apvieno 32 bitu kompilatoru, rīkus darbam ar datu bāzēm un vizuālo attēlu. izstrādes vide, kas atbalsta OLE (un pēc atjauninātā Delphi 2.01 un ActiveX izlaišanas). Arī valoda ir mainījusies, kļūstot par 32 bitu orientētu.

Delphi 3. Turpmāka Delphi uzlabošana visos virzienos noveda pie 3. versijas izlaišanas, kurā bija paplašināts rīku komplekts lietojumprogrammu izveidei, pateicoties COM un ActiveX atbalstam. Šajā versijā pirmo reizi tika likts uzsvars uz iespēju veidot aplikācijas internetam un parādījās netipizēts datu tips – variants.

Delphi 4. Vēl viens svarīgs attīstības pavērsiens. Šajā versijā tika ieviestas daudzas jaunas un noderīgas lietas, lai vienkāršotu lietojumprogrammu izstrādi, tostarp jauna vide ar dinamiskiem padomiem utt. Tika uzlabots modelis darbam ar komponentiem (VCL), un kļuva iespējams ātri izmantot tādas tehnoloģijas kā MIDAS, DCOM un CORBA. Šajā versijā tika uzlabota arī Object Pascal valoda: parādījās jaunas mūsdienu OOP raksturīgas funkcijas, tika ieviesti jauni datu tipi, tostarp 64 bitu.

Delphi 5. Delphi 4 bija tik daudz izmaiņu, ka diemžēl bija dažas kaitinošas kļūdas un kļūdas. Rezultātā tika izlaistas 3 atjauninājumu pakotnes (mūsu pirāti tās pārdeva Delphi 4.1, 4.2 un 4.3 aizsegā). Bet Delphi 5 jāuzskata par vispilnīgāko un pareizāko atjauninājumu pakotni – šajā versijā viss Delphi 4 iesāktais tika realizēts.

Delphi 6. Izlaižot sesto versiju, Borland paziņoja par jaunu, vairāku platformu laikmetu Delphi, vienlaikus izlaižot Delphi versiju Linux (Kylix 1.0). Tagad, veidojot aplikāciju, varēja izvēlēties tās veidu - priekš Windows, vai universālo. Attiecīgi VCL bibliotēka tika papildināta ar CLX bibliotēku, kas ir saderīga gan ar Windows, gan ar Linux. Turklāt sestajā versijā beidzot parādījās komponenti darbam ar internetu, nevis ārzemju ActiveX, un abās versijās vienlaikus - gan VCL, gan CLX. Sākot ar šo versiju, pati Object Pascal programmēšanas valoda tiek oficiāli saukta par Delphi.

Delphi 7. Delphi 6 tālāka attīstība, uzlabota CLX bibliotēka un jauna atbilstoša izstrādes vides versija Linux OS - Kylix 3. Tajā pašā laikā, sākot ar Delphi 7, Borlandu uztrauca jautājums par saderību ar citu platformu - Microsoft . NET, kuram tika veiktas dažas izmaiņas kā VCL, un valodā (un attiecīgi arī kompilatorā).

Delphi 8. Pirmā Delphi versija, kas vērsta uz darbu ar Microsoft.NET platformu. Šajā versijā izstrādātāji riskēja mainīt vides saskarni, padarot to līdzīgu Microsoft, jaunā Borland lielākā akcionāra, produktiem. Attiecīgi Kylix atbalsts tika pārtraukts.

Delphi 2005. Mazāk nekā gadu pēc Delphi 8 izlaišanas parādījās jauna versija, kas ātri atgrieza spēju strādāt klasiskajā IDE stilā, izstrādājot Windows lietojumprogrammas. Tajā pašā laikā Delphi 2005 īpaši NET platformai paredzētu aplikāciju izstrādes gadījumā ļauj strādāt ne tikai ar Delphi valodu, bet arī ar C#. Tajā pašā laikā pašā Delphi valodā tika ieviesti tādi jauninājumi kā for...in operators un iebūvētās procedūras un funkcijas.

Delphi 2006. Jaunākā Delphi versija, ko izlaida Borland. Tika izlaista arī vieglā versija - Turbo Delphi. Tad sākās ceļojums pie citiem izstrādātājiem.

Delphi 2007. CodeGear izdotā versija. Pievienots atbalsts Aero saskarnei operētājsistēmai Windows Vista.

Delphi 2009. Versiju izlaida Embarcodero. Unikoda atbalsts ir ieviests VCL un RTL, izsaukumi uz visām Windows API funkcijām ir aizstāti ar Unicode analogiem, ir pievienoti vispārīgie veidi un anonīmas metodes.

Delphi 2010. Windows 7 atbalsta, pieskārienu un žestu komponenti un dbExpress komponenti tagad oficiāli atbalsta Firebird.

Delphi XE (Delphi 2011). Pievienots mākoņdatošanas atbalsts.

Vai jums patika raksts? Dalies ar to
Tops