Malo je korisnika Windowsa koji nisu čuli za razvojni alat Delphi, baziran na nekad popularnom Turbo Pascalu. Počev od treće verzije, Delphi izlazi u četiri varijante Standard, Professional, Client/Server i Enterprise. Standard varijanta ima veoma povoljnu cenu - 99 USD, koliko je koštao i prvi Turbo Pascal. Sa ovom varijantom možete praviti aplikacije za baze podataka, koncepcije na koju su programeri navikli u Clipperu, kao i mnoge aplikacije sistemskog i uslužnog tipa. Client/Server ima slobodno distributabilne povezivače (SQL links) sa većinom popularnih sistema za upravljanje bazom podataka (Oracle, MS SQL server, Sybase, Informix, Interbase), kao i sam jedan takav sistem (Interbase). Professional je negde između, pa je on pogodan za razvojne softverske firme kojima je skupo da kupe Client/Server baš za svakog zaposlenog; dobro dođe i ljudima koji prave dodatne komponente, jer omogućava pravljenje ActiveX kontrola i sadrži izvorni kod cele VCL (biblioteke komponenti). Enterprise još nije izašao u verziji 4, a inače je namenjen za pravljenje distribuiranih aplikacija čiji se delovi nalaze na različitim platformama (Windows, Unix) uz pomoć programa Entera. Naravno, svaka jača varijanta vertikalno je kompatibilna sa slabijima.
Najbliži savršenstvu, ali ne bez mana Šta je novo Nakon petnaest godina, konačno sam odlučio da ne koristim piratovani Delphi. Odlučio sam se za najjeftiniju, Standard varijantu. Cena Standard varijante u Sloveniji (jako pogodnoj zemlji za kupovinu hardvera i softvera jer su dažbine svega 5%) preračunata u DEM je 270, Professional je 1670 DEM, a Client/Server 6646 DEM. (Delphi Enterprise varijanta se kupuje po dogovoru, a njena cena ide od 45000 USD naviše.) Za taj novac se pored CD-a dobije malo uputstvo od pedesetak strana, a ostala se nalaze na CD-u u PDF formatu. Standard varijanta nema mnogo poboljšanja u odnosu na Delphi 3. Najočiglednije je okruženje, koje se može prilagođavati. Sada je moguće npr. Object Inspector, prozor koji prikazuje sva svojstva objekata na ekranu, prevući na prozor sa izvornim kodom, čime se ova dva prozora stapaju u jedan i postaju delovi istog prozora. Slično se mogu premeštati i toolbarovi i glavni meni, što je, uostalom, već viđeno u Office 97. Ali, toolbar i prozor s izvornim kodom ne mogu se spojiti u jedinstven prozor. Novosti ima i u debageru, mnogo je moćniji i sada prati i stanje procesora uz disasembliranje koda, čime je stari TDW postao nepotreban. Jezik Object Pascal proširen je 64-bitnim celim brojevima („Intelov” procesor Merced dolazi), dinamičkim nizovima kojima nije potrebno definisati opseg, procedurama i metodama koje mogu imati podrazumevane parametre koji se u pozivu ne moraju navoditi, kao i procedurama i metodama koje mogu imati isto ime, ali različit broj i tip parametara (method overload). Promene u VCL-u u standardnoj varijanti omogućile su pravljenje prozora koji se spajaju u jedan (kao u novom Delphijevom okruženju), što važi i za menije i toolbarove. Takođe je olakšano pravljenje formi koje se mogu širiti i skupljati uz proporcionalno razmicanje komponenti na njima, uz pomoć novih svojstava Anchors i Constraints. I QuickReport je dobio nekoliko novih komponenti, pre svega za konverziju izlaza u druge formate. Uvedene su akcione liste koje omogućavaju da pridružimo nekim komponentama (npr. Tbutton) određene akcije kao što su Cut i Paste, pri čemu je automatski obezbeđeno da se ne mogu odabrati opcije koje u datom trenutku nemaju smisla. Dodate su i komponente za podršku Windowsa 98 (kalendar, rad s više monitora, miš s točkićem). Vezano za Borland Database Engine (BDE), novost u standard varijanti predstavlja drajver za Access 97. Međutim, i dalje mora da se instalira „Microsoftov” Jet Engine, pa u kombinaciji s BDE-om desetak megabajta ode na silne drajvere. Sem toga, ima dosta „Microsoftovih” ograničenja nad licencom za Jet. Više novosti ima u jačim varijantama, Professional i Client/Server. Njih još nisam video uživo, ali ono što sam pročitao govori da proširenja u okruženju mnogo olakšavaju kretanje kroz kod i njegovo pisanje. Tu pre svega treba pomenuti Code Explorer koji u formi stabla prikazuje klase (još jedna stvar pokupljena od Visual C++), Code Navigation - mogućnost da sa ‘Ctrl’ i klikom miša skočimo s poziva procedure na njenu definiciju i Class Completion koji na otkucano ime svojstva (property) ili metode u deklaraciji klase, uz pomoć ‘Ctrl’+’Shift’+’C’ kombinacije, odmah pripremi minimalni potrebni kod. Debager ima mogućnost nadgledanja druge mašine ili prekidne tačke zavisne od vrednosti podataka, a dodat je i OpenHelp za prilagođavanje sadržaja help datoteka. Komponente za pristup Internetu po treći put su promenjene. Sada su to konačno VCL komponente i nema potrebe za OCX kontrolama. A ako više volite OCX kontrole i želite da pravite svoje, njihovo kreiranje je još lakše nego u Delphiju 3. Omogućeno je lako kreiranje NT servisa. I u ovoj verziji mislilo se na ljude koji žive van SAD, jer je dodat editor stringova u resursnim tabelama i editor DFM datoteka bez potrebe za posedovanjem izvornog koda. Najviše je promena u BDE-u u oblasti viševeznih (multi-tier) baza podataka. „Borlandov” protokol MIDAS uveden je u Delphiju 3 i omogućio je da na jednom serveru držimo sve silne drajvere za pristup bazama podataka, a da klijentu budu dovoljni samo EXE i stotinak kilobajta velik DLL („samo”? Pa ne baš - ako je klijent pod Win95 ili NT3.51 moramo instalirati i DCOM). Posle se može promeniti server za bazu podataka, npr. sa Paradox baze preći na Oracle, bez reinstalacije svih klijenata. Klijenti ne moraju biti sva vreme priključeni na bazu, pa je to pogodno i za modemsku vezu. Do sada se MIDAS bazirao na „Microsoftovom” DCOM protokolu, a sada podržava i Microsoft Transaction Server i protocol CORBA koji je definisan od strane ISO. Virtuelne tabele i upiti koji se pri tome generišu (Provider DataSet) proširene su u ovoj verziji mogućnostima izračunatih polja i master/detail. No, gorak je ukus primene MIDAS-a ako se zna da za svaki server koji smo tako kreirali treba platiti papreno skupu licencu od 5000 dolara. Druga ključna promena u BDE-u je podrška za Oracle 8 koji sa relacione baze polako prelazi u treću generaciju objektno orijentisanih baza podataka. Nisu se međutim obistinili tračevi sa Useneta da će Delphi moći da generiše sors u Javi i tako reši problem jednoplatformnosti, ili da će biti moguće predefinisati operatore kao u C++. Uz sve tri verzije i dalje se besplatno isporučuje Delphi 1, namenjen za pravljenje aplikacija za Windows 3.x preko VCL i OWL biblioteka, a uz nedokumentovane trikove i za DOS (na Internetu se mogu naći TPU datoteke, čime se omogućava da Delphijev kompajler u verziji 1 kompajlira čiste DOS i DOS/DPMI programe, nažalost bez graph unita, ali sa Turbovizijom). Nedostaci i kako ih prevazići Iako je, za moj ukus, u Windows svetu Delphi najbliži savršenstvu od svih razvojnih alata, nije bez mane. Najveća mana koja se čuje u razgovorima o Delphiju je „To nije Microsoftov alat, a ‘Borland’ - pardon, ‘Inprise’ - će uskoro propasti i šta onda?”. Mada se ta propast nije dogodila, i u dogledno vreme verovatno i neće, čak ni to ne bi bila tragedija. Naime, u informatici ste svakako osuđeni na stalnu promenu razvojnih alata svake tri godine. Da li danas smatrate Windows 3.11 i silni softver za njega upotrebljivim, iako je „Microsoftov”? Delphi je sem toga prodat u milion (legalnih) kopija, što znači da verovatno ima desetak miliona korisnika u svetu, a među njima ćete još godinama moći da nađete odgovore na mnoge probleme koji vas muče. Bagovi u softverskim paketima danas su češći nego u predinternetsko doba, ali zato i lakše otklonjivi. Dovoljno je sa www.inprise.com učitati novi servisni paket. Za sada je izašao jedan takav za Delphi 4 (koji je neprimetno još jednom popravljen). On doduše još nije otklonio sve poznate bagove, ali ga svakako treba instalirati. Delphi je još uvek orijentisan isključivo na Windows platforme. Nema dakle ni Linuxa, ni Unixa, ni Macintosha, ni DOS-a, ni OS/2, ni Amige. Iako mu „Microsoft” radi o glavi, „Inprise” ga se čvrsto drži. Da se taj problem prevaziđe, grupa entuzijasta pravi projekat Free Pascal. Pogledajte tfdec1.fys.kuleuven.ac.be/~michael/fpc gde ćete videti da se dotični trenutno nalaze između Turbo Pascala 7 i Delphija. Dodatne komponente iz starih verzija će raditi samo ako imate njihov izvorni kod. Na Delphi Super Page (sunsite.icm.edu.pl/delphi) preko hiljadu komponenata zadovoljava taj uslov, dok specijalnih komponenti za Delphi 4 u ovom trenutku ima oko 100. Broj će verovatno rasti. Na prvi pogled Delphi Standard dosta zaostaje za Professional, a naročito Client/Server varijantom. Srećom, dobri ljudi na Internetu već su ponudili rešenja. Tako recimo MIDAS možemo zameniti (pod određenim uslovima) besplatnim MIDWARE programom (sme.belgium.eu.net/~vip107/midware.zip), a tu se nalaze sme.belgium.eu.net/~vip107/ics.zip sa paketom Internet komponenti ili cgisimpl.zip kao primer za pravljenje Internet server aplikacija. Na već spomenutom Delphi Super Page možemo videti kako praviti NT servise (sunsite.icm.edu.pl/delphi/ftp/d30free/demosrv.zip), povezati se sa ODBC bazama ili MSSQL serverom bez potrebe za BDE ili klijent/server verzijom Delphija (odbclass.zip i mssqlsrv.zip). Ako vam nedostaje komplet objekata za poslovnu grafiku Teechart, možete ga kupiti za 100 USD ili probati skromniji i besplatni www.torry.ru/vcl/charts/graph.zip. Sve navedene komponente su besplatne i u mnogome približavaju Delphi Standard varijantu jačim i višestruko skupljim. Zanimljivo je takođe da uz Standard varijantu dolaze neke stvari za koje „Inprise” tvrdi da ih nema, npr. InstallShield, math i BDE uniti (istina bez helpova), Windows 98 komponente i oba popularna Web browsera. Često kritikovani, inače fleksibilni i brzi BDE zbog glomaznosti, nestandardnosti i komplikovanog konfigurisanja moguće je zameniti i već je na raspolaganju dosta komponenti koje to rade. Pogledajte www.kylecordes.com. Da li kupiti „četvorku”? Skok sa dvojke na trojku bio je veći, pa korisnici Delphija 3, neće mnogo profitirati. Što se tiče korisnika Delphija 1 i 2 i drugih razvojnih alata - kupite, vredi! |