Delphi cât de mult

Suntem de multe ori a pus întrebarea: „? Delphi depășește pachetul X“ „Care sunt principalele avantaje ale Delphi“ sau. De-a lungul anilor, am dezvoltat două variante de răspunsuri la aceste întrebări - scurt și lung. Primul este într-un singur cuvânt - „productivitate“. Doar pentru munca de azi în Delphi este despre productivitatea metodei de creare a aplicațiilor pentru Windows. Desigur, există categoria de oameni (superiori și potențialii clienți), pentru care un astfel de răspuns nu ar fi suficient. În acest caz, vom da un răspuns lung, ceea ce explică în detaliu Prin combinarea caracteristicilor mediului Delphi, ceea ce o face atât de productiv. Noi credem că productivitatea totală a tuturor instrumentelor de dezvoltare a software-ului depinde de următoarele cinci aspecte esențiale:

• dezvoltarea calității mediului vizual;

• viteza de compilator rapid și compilate despre

gram; • puterea limbajului de programare și complexitatea acesteia;

• flexibilitate și scalabilitate utilizată arhitecturii bazei de date;

• prezența mediului de dezvoltare susținută și șabloane de proiectare.

Fig. 1.1.Shema diagrame pentru a estima productivitatea de aplicare instrumente de dezvoltare ki Noi nu încercăm folosind formula propusă de a impune decizia lor pre-aranjate - alegerea este a ta! Pur și simplu oferim o oprire în detaliu pe fiecare aspect al schemele de mai sus și să evalueze performanța Delphi relevante în comparație cu alte aplicații în timp instrumente rabotki pentru Windows.

Calitatea mediului de dezvoltare vizuală

Versiunea modernă a debugger Delphi sprijină setul complet de caracteristici inerente în pachetul Visual Studio depanator. Pentru funcția adăugat recent tsiyam includ instrumente de la distanță de depanare, procesul de conectare, tovarășul pachet de depanare și biblioteci DLL, controlează valorile variabilelor locale automate și sprijinirea fereastra CPU. În plus, Delphi oferă un mijloc convenabil de control mediu depanare grafic. Acestea vă permit să posta în fereastra de depanare și de îmbinare în orice locație convenabilă, dar, de asemenea, stoca informații de configurare obținute sub forma unui grup numit de setările desktop. Unul dintre extrem de user-friendly caracteristici debugger, care este larg răspândită în mediul interpreților (cum ar fi Visual Basic sau Java), este abilitatea de a schimba codul, și, prin urmare, comportamentul cererii O venno directă în procesul de depanare. Din păcate, asociat cu foarte mare dificultate, prin urmare, în versiunea actuală, nu este printre punerea în aplicare compilator este, cum ar fi funcții.

În ultimii ani, Delphi și Visual Basic este prins într-o luptă constantă pentru supremație într-o varietate de oportunități în formă de designer. Fiecare versiune vypu schennaya a acestor produse este pur și simplu uimitor pentru noile sale caracteristici. De exemplu, proiectantul formularele Delphi folosit pentru construirea unui sistem complet orientat pe obiect. Ca urmare a modificărilor aduse claselor de bază se aplică imediat tuturor claselor derivate din acestea. Acest mecanism este utilizat pentru a implementa funcția de moștenire vizualnyhform (Visual Forma Mostenire - VFI). VFI vă permite să generați dinamic o nouă formă de orice altă formă de formă de imagine sau proiect. De asemenea, introdus sub formă de bază a modificărilor vor fi distribuite imediat și moștenit toți urmașii ei forme. Pentru mai multe informații despre acest subiect, a se vedea Insula GLA 3, „Aventurile de posturi.“

Viteza de compilator

și viteza de programe compilate

Rapid compilator ne permite să dezvolte poetap software-ul, dar, deoarece permite mai multe Efectuarea de mici modificări pro gramul original, urmat de recompilare și testare. Ca urmare, există un ciclu foarte eficient de dezvoltare. Mai lent compilator handler forțe decalaj face simultan modificări de volum -Mai mare prin combinarea mai multor accesorii pentru îmbunătățiri în compilarea un ciclu și depanare. Aceasta, desigur, reduce eficiență ef al ciclurilor de dezvoltare individuale. Avantajele obținute prin utilizarea eficientă a shennoy povy programelor compilate sunt evidente. În orice caz, mai rapid programul de lucrări și codul său mai mic obiect, cu atât mai bine.

Probabil cel mai bun avantaj cunoscut utilizat în compilator Delphi Pascal este viteza. De fapt, acesta este - un nivel ridicat de cel mai rapid limba Comp trimmer de toate existente în mediul Windows. În ultimii ani, a existat o îmbunătățire semnificativă în activitatea unui compilator C ++, care este considerat în mod tradițional cel mai lent în ceea ce privește viteza de compilare. Uspehi fost realizată prin cuplarea în trepte și diferite strategii sunt memorate în cache Bani, utilizate, în special, în ambalaje Visual C ++ si C ++ Builder. Cu toate acestea, chiar și aceste compilatoare C ++ îmbunătățit funcționează de mai multe ori mai lent decât compilatorul Delphi.

Are o astfel de viteză mare compila o întârziere obligatorie în eficiența programelor stabilite? Desigur, răspunsul la această întrebare este „nu“. Creat în cod obiect Delphi are aceiași indicatori de performanță ca și codul obiect generat de compilator C ++ Builder. De aici se pot face programe de calitate a apei create de același nivel, oferă un foarte bun compilator C ++. Conform celor mai recente estimări fiabile capacitatea de aer, programul creat de compilator Visual C ++, nu au, cu cea mai mare performanță și viteza de dimensiunea codului. Practic, acest lucru este atins datorită o optimizare foarte bun. Deși aceste avantaje mici și Nez, de asemenea, vizibile în timpul dezvoltării de aplicații normale, acestea pot fi foarte importante atunci când creați aplicații care realizează o cantitate semnificativă de calcul.

În ceea ce privește utilizarea Visual Basic uni Cullen tehnologia limbajului de compilare. În Visual Basic (VB) ruyuschem dezvoltarea de aplicații utilizate în modul interpretat, oferind o viteză suficientă. Când trebuie să se răspândească aplicația noastră, puteți utiliza VB compilator, rezultatul care este un fișier executabil (* .exe). Acest compilator este foarte lent și performanțele sale se situează cu mult în urma capacității instrumentovC ++ și Delphi. În timpul creării acestei cărți, Microsoft a produs o nouă generație de compilatoare, și Visual Basic.NET promite să ia locul său de drept în această serie.

O altă opțiune interesantă este limbajul Java. Cele mai multe instrumente de acest mediu lingvistic (de exemplu, Jbuilder și J Visual ++) demonstrează timpul de compilare comparabil cu Delphi. Dar eficacitatea programelor stabilite de multe ori lasă mult de dorit pentru simplul motiv că limbajul Java este un limbaj interpretat. Deși dezvoltarea de instrumente Java pentru a trece mai repede Pami, viteza programelor produse de acesta, în cele mai multe cazuri este mult în urmă Delphi și C ++.

Puterea limbajului de programare și complexitatea acesteia

C ++ este, de asemenea, un limbaj foarte puternic. Cu ei într-adevăr de instrumente eficiente, cum ar fi macro-uri preprocesorul, template-uri, operatorii supraîncărcate, puteți crea chiar și propria limbă în C ++. În cazul în care dezvoltatorul oferă o gamă extrem de largă de caracteristici pentru a fi utilizate cu înțelepciune, aceasta va crea o foarte clar și ușor de programul de condus însoțit. Dar problema este că majoritatea dezvoltatorilor nu pot rezista tentației de a o utilizare excesivă și utilizarea necorespunzătoare a posibilităților există, iar acest lucru duce adesea la apariția programelor voluminoase. De fapt, în C ++ pentru a scrie programe proaste mult mai ușor decât bine, pentru că limba în sine nu încurajează dezvoltator pentru a utiliza programe bune practici Ming, lăsând astfel de probleme în întregime pe lui usmotrenie.Suschestvuet două limbi, care, în opinia noastră, este foarte asemănătoare cu cea ca acestea să realizeze cel mai bun echilibru între complexitate și putere. Acesta - Object Pascal si Java. Ambele limbi utilizate abordarea de limitare a accesului GUVERNAMENTALE funcționalitate care permite dezvoltatorilor să transfere baze eforturile Nye pe logica pentru a crea aplicații. De exemplu, în ambele limbi, lipsa unui „foarte orientat-obiect“, ci printr-o varietate de abuz niyamas conceptul de moștenire multiplă. În ambele cazuri, acesta se înlocuiește cu punerea în aplicare a mai multor clase în interfețe diferite. Ambele limbi sunt excluse elegant, dar în același timp, caracteristica foarte periculoasă a supraîncărcării operatorului. În plus, în ambele cazuri, fișierele sursă sunt considerate ca principale obiecte de Yazi minut, și nu ca o materie primă pentru linker-ul. Mai mult decât atât, în ambele limbi, folosind astfel de caracteristici puternice ca manipulare excepție, informații despre tipurile de rulare (RTTI - Runtime Type Information), și resursele șir. Poate că este o coincidență, dar ambele limbi nu au fost create o echipa mare de dezvoltatori, și o persoană sau un grup mic într-o singură organizație, cu o idee foarte clară a ceea ce ar trebui să fie o limbă creată.

Inițial, Visual Basic (simplu) a fost stabilită ca limbă destul de simplu pentru programatori novice poate maestru rapid. Dar, pe măsură ce adăugați caracteristici noi la aceasta, este un răspuns la cerința de urgență, nu, această limbă devine din ce în ce mai dificilă. În ciuda tuturor eforturilor depuse pentru a permite dezvoltator pentru a evita detaliile oneroase de programare, limbajul Visual Basic conține încă o serie de obstacole, Koto de secară trebuie să depășească, atunci când crearea de aplicatii destul de complexe. ne expansiune externă versiune Visual Basic.NET de la Microsoft. Aceasta este următoarea generație a produsului, într-o anumită direcție a suferit modificări semnificative (în principal din cauza compatibilitatea cu versiunile anterioare).

Flexibilitate si scalabilitate a arhitecturii bazei de date

Deoarece propria linie de produse Borland nu este de gestionare a bazelor de date Niya în Delphi a inclus un instrument care, în opinia noastră, oferă arhitectura cea mai flexibilă pentru a sprijini baze de date, în comparație cu toate celelalte disponibile pe piață. Desigur, dbExpress foarte tiven eficacitate (deși în detrimentul caracteristicilor suplimentare), dar alegerea conducătorilor auto este destul de limitat. Mecanismul BDE funcționează cu succes și oferă performanțe suficiente pentru cele mai multe tipuri de aplicații în timp ce interacționează cu o gamă largă de baze de date, deși Borland reduce treptat acest interval. Mai mult decât atât, componente încorporate credite performante ADO furnizează comunicări cu baze sau ADO prin ODBC. În cazul în care orice caz Interbase nu poate face față cu sarcina, puteți utiliza com de bază Ponente - IBExpress, care are o eficiență mult mai mare și capacitatea de a comunica cu aproape orice server de baze de date. În cazul în care nici una dintre metodele de mai sus nu poate oferi acces la date, rămâne o oportunitate de a scrie propriul acces la date de clasă au fost prezentate utilizând arhitectura de structuri abstracte de date, sau să cumpere o soluție gata făcute de un producător terț. Astfel DataCLX facilitează accesul la oricare dintre care surse de date FIR, în ciuda faptului că acestea pot fi împărțite în mai multe niveluri de logic sau fizic.

Trebuie remarcat faptul că instrumentele de dezvoltare Microsoft ne sfokusirova în mod logic, pentru a sprijini propriile lor baze de date Microsoft și să ofere soluții adecvate pentru accesul la datele lor, inclusiv instrumentul ODBC, OLE DB, etc.

Suport de proiectare mediu de dezvoltare și utilizarea de template-uri

Acest „miracol de droguri“ și „Sfântul Graal“ al tehnologiei de dezvoltare de software, pare a fi complet ignorate de celelalte instrumentele pentru dezvoltatori Tami. În timp ce toate componentele Delphi sunt necesare și importante, majoritatea celor membri guvernamentale existente este încă VCL. Posibilitatea de a manipula componentele direct în proiectarea, instrumente de dezvoltare a propriilor sale componente, elemente moștenesc comportamentul lor de la alte componente sunt folosind o varietate de tehnologii orientate-obiect - toate acestea sunt cerințe esențiale pentru un nivel ridicat de productivitate inerente în mediul Delphi. În dezvoltarea componentelor VCL este întotdeauna posibil de a alege tehnologia adecvată pentru un caz specific de design orientat-obiect al numărului furnizat. Alte medii de dezvoltare care susțin lucrul cu componentele sunt adesea fie prea tare sau prea complicat.

De exemplu, controalele ActiveX oferă practic aceleași caracteristici ca și componentele VCL, cu toate acestea, a crea o nouă clasă, care este derivata controlul ActiveX, nu poți. mediile de dezvoltare tradiționale care oferă clase de locuri de muncă (de exemplu, OWL sau MFC), necesită în mod obișnuit dezvoltator la o cunoaștere profundă a mecanismelor lor interne. Numai în acest caz, dl Bot în mediul lor poate fi destul de productiv. Toate acestea nu au suficient de precise instrumente pentru a sprijini funcțiile de proiectare. În prezent, Microsoft a lansat o bibliotecă nouă .NET (biblioteca .NET comună) partajată care să fie, fără îndoială, în, împins în prim plan în domeniul gap orientate pe componente Botko. În plus, tehnologia .NET a fost chiar compatibilă cu un număr de foști lor instrumente, inclusiv C #, Visual C ++ și Visual Basic.

articole similare