TEST RUN<>
012013<><>

Razvojna programerska okruženja

Programiramo sve i svuda

Oni koji su radili u Delphiju osećaće se u Lazarusu kao kod kuće
Programeri mnogo cene kada napisane programe bez većih izmena mogu da izvršavaju na što većem broju hardversko-softverskih platformi. Izabrali smo tri kandidata koji su se dobro pokazali u obavljanju tog zadatka.

Lazarus 1.0.2

Pascal je, posle BASIC-a, verovatno najpopularniji programski jezik opšte namene. Nekada vrlo popularan u školama kao odlično didaktičko sredstvo, vezao je svoju sudbinu za kompaniju Borland, koja je sa Turbo Pascalom svojevremeno postala jedan od najpoznatijih softverskih proizvođača. Dolazak na scenu „prozora” poklapa se sa masovnim uvođenjem objektnog programiranja u sve programske jezike. Taj trend nije mimoišao ni Pascal, pa smo dobili više nego dobri Delphi, koji je nekada omogućavao najefektivniji način kreiranja „punokrvnih” Windows aplikacija. Delphi je živeo svoj život i stekao mnogo poklonika među programerima, ali je prelaskom Microsofta na .NET platformu Borland počeo da gubi korak, da bi ga na kraju kupila kompanija Embarcadero i od tada je nestao iz fokusa većine programera (mada je i sada u pitanju vrlo kvalitetan proizvod, koji u poslednjoj verziji nosi oznaku Delphi XE3, sa podrškom za Windows, Mac OS X, iOS i Linux).

Code::Blocks podržava razvoj velikog broja različitih projekata, među kojima je i razvoj programa za mikrokontrolere
Pre skoro 12 godina objavljena je prva verzija razvojnog okruženja Lazarus (www.lazarus.freepascal.org, 112,3 MB), da bi tek nedavno zvanično dobila prvu, finalnu verziju 1.0. Poslove kompajliranja fajlova Lazarus poverava ugrađenom kompajleru Free Pascal, koji sadrži sve ekstenzije koje su koristili Turbo Pascal i Delphi, tako da je na sintaktičkom planu kompatibilnost sa Delphijem maksimalna. Da se odmah razumemo, Lazarus nije klon programskog paketa Delphi, ali omogućava konverziju i izvršavanje mnoštva gotovih projekata u novom razvojnom okruženju. Dovoljno jasne instrukcije po pitanju konverzije fajlova mogu se pronaći na adresi goo.gl/6FZZZ.

Free Pascal (samim tim i Lazarus) podržava respektabilan broj različitih hardverskih arhitektura i operativnih sistema. Od x86 i x64, preko ARM-a, pa sve do sada već prevaziđenih procesora SPARC, MIPS, PowerPC i Motorola 680xx. Podržani su (od najznačajnijih operativnih sistema) Windows, Linux, Mac OS X, iOS i Windows CE. Lazarus se po svojoj koncepciji drži Delphija koliko je to moguće. Međutim, ovaj paket će vam bez problema kompajlirati i programe pisane za druge dijalekte Pascala (dakle, kôd koji nije ranije napisan za Delphi već za neke druge kompajlere sa drugih hardverskih platformi). Umesto Borlandove biblioteke funkcija VCL, kompajler koristi svoju biblioteku LCL, koja je vrlo slična, ali ne i identična (potpuno su podržani najvažniji delovi). LCL podržava Windows grafičke objekte kroz Win API (Win CE API za verziju CE). Mac OS X grafički objekti su podržani preko API-ja Cocoa i Carbon, dok su za Linux na raspolaganju Qt i GTK (koje možemo koristiti i za oba prethodna OS-a).

Radno okruženje MonoDevelopa izgleda standardno
Pošto je Delphi često korišćen u projektima sa bazama podataka, treba reći da Lazarus podržava rad sa bazama MySQL, MS SQL, SQLite, Postgree, dBase i FoxPro.

Da ukratko rezimiramo – Lazarus je odlično (pa još i besplatno) rešenje za sve one koji znaju Pascal, ali i za one koji bi želeli da ga nauče. Nije u potpunosti kompatibilan sa Delphijem, ali je zbog toga multiplatformski orijentisan. U pitanju je jedan od najboljih načina za pisanje RAD aplikacija za više različitih operativnih sistema. Pogotovu može da bude efikasno sredstvo za razvoj aplikacija vezanih za baze podataka.

Code Blocks 10.05

Lazarus ima odlično urađen editor formi, koji spada među najbolje za operativni sistem Linux
Bez ikakve sumnje, među profesionalnim programerima najrasprostranjeniji programski jezik današnjice je C++. Što se tiče domaćih programera, ukoliko su orijentisani na Windows platformu, mahom koriste Visual C++, dok je na Linuxu to GCC (sa ili bez Eclipsea). U poslednje vreme sve veći broj linuksaša prelazi upravo na Code::Blocks (www.codeblocks.org, 74 MB) zbog toga što je reč o zaista kvalitetnom radnom okruženju, koje je uz to i jednostavno za upotrebu.

Prva stvar na koju početnici (koji koriste Windows) treba da obrate pažnju pre instalisanja je da za download odaberu verziju sa integrisanim MinGW sistemom, koja sadrži i GCC kompajler. To će za posledicu imati smanjenje komplikacija oko naknadne instalacije kompajlera. Kasnije po želji možete zameniti MinGW sa nekim drugim iz dugačkog spiska kompajlera (Microsoft Visual C++, Borland C++, Digital Mars, Intel C++ compiler, Watcom C++, itd.). Uputstvo o tome kako to obaviti možete naći na adresi goo.gl/ekTYB. Ukoliko se koristi Microsoftov kompajler, vrlo verovetno ćete morati da vršite dodatne prepravke kako biste prilagodili sintaksu.

Oni koji su radili sa Visual Studiom ili Eclipseom znaju koliko ova radna okruženja mogu da uspore računar. Sa novijim verzijama VS jedino vlasnici jačih računara sa ugrađenim SSD diskovima mogu da uživaju u adekvatno brzom radu. Za razliku od njih, Code::Blocks ima drugačiju koncepciju. U pitanju je radno okruženje koje ne zahteva prevelike računarske resurse. Njegova filozofija je da treba krenuti od jednostavnog okruženja, koje ćemo kasnije proširivati dodacima koji su nam potrebni.

Kreiranje grafičkog interfejsa je primarno realizovano preko biblioteke wxWidgets, što je verovatno najfleksibilniji sistem danas. Moguće je koristiti i druge GUI biblioteke, ali one prethodno moraju da budu instalirane na računaru (wxSmith se u slučaju Windows verzije automatski instalira kao plug-in, dok je na Linuxu potrebno instalirati biblioteku libwxsmithlib0). Code::Blocks ima ugrađen solidan editor sa sintaksnim bojenjem teksta, automatskim kompletiranjem i mogućnošću sakrivanja blokova programa. Moguće je korišćenje kako GDB (GNU debugger) tako i Microsoftovog Visual Studio Debuggera (CDB). Kompajliranje se obavlja znatno brže nego u, recimo, VS2010. Izuzetno je korisna mogućnost importovanja projekata pisanih za MS Visual C++ i Dev-C++ (nažalost, dosta često baguje u složenim projektima). Code::Blocks je zapravo idejni naslednik radnog okruženja Dev-C++, koji već više od osam godina nije obnovljen (da budemo precizni, čovek pod pseudonimom Orwell odnedavno samostalno radi na novim verzijama programa i od poslednje oficijalne verzije 4.9.9.2 dogurao je do 5.3.0.3).

Trenutna stabilna verzja radnog okruženja Code::Blocks je 10.05 i stara je više od dve godine, ali se uskoro može očekivati obnavljanje, sa velikim brojem unapređenja.

Pošto je Dev-C++ i dan-danas veoma popularan među profesorima koji predaju informatiku, prelazak na moderniji Code::Blocks predstavlja logičan izbor. Reč je o moćnom, brzom i kvalitetnom razvojnom okruženju koje nastavlja tamo gde je Dev-C++ stao. Iako ovo razvojno okuženje možemo koristiti kako pod Windowsom tako i pod Mac OS X-om i Linuxom, zbog prirode C++ koda ne možemo pisati program na jednoj platformi i potom ga bez izmena izvršavati na ostalim. Međutim, C++ programeru koji se navikne na rad u jednom okruženju biće mnogo jednostavnije da programira na drugoj platformi, u čemu leži još jedna velika prednost ovog programa u odnosu na konkurenciju. Svima koji se prvi put susreću sa ovim programom obavezno preporučujemo da pročitaju sledeći priručnik (PDF na engleskom jeziku): goo.gl/1l5BG.

MonoDevelop 3.0.5

Kada smo pravili koncept za ovaj tekst, glavno merilo bilo je da obuhvatimo kvalitetna razvojna okruženja za najpopularnije programske jezike, koja se istovremeno izvršavaju na najzastupljenijim operativnim sistemima današnjice. Što se tiče C++ i Pascala, izbor nije bio težak. Šta još ubaciti u relativno kratak tekst, a da pregled bude kompletan?

Naravno, .NET! Poznato je to da Microsoft zna da pravi dobre kompajlere, ali, nažalost, podržava samo svoju Windows platformu. Programeri na ostalim sistemima zauvek bi ostali uskraćeni za razvoj .NET aplikacija da nekada moćna kompanija Novell nije 2004. godine izašla sa jednom vrstom .NET klona za UNIX-olike operativne sisteme, koja se zove Mono (na španskom, majmun). Na sreću, Microsoft nije zabranio objavljivanje Mono frejmvorka, već je on proglašen za zvaničnog predstavnika .NET za sisteme bazirane na UNIX-u. Ovaj frejmvork sadrži kompajler za programski jezik C#, kao i biblioteke za ASP.NET, ADO.NET i WinForms. Mimo toga, postoji podrška za izvršavanje programa napisanih za VB.NET i kompajler za Moonlight (Mono ekvivalent Microsoftovom Silverlightu). U doglednoj budućnosti moguće je da će Mono moći da izvršava i programe u mnogim drugiim programskim jezicima koji budu bili napisani za njega. Zasad je aktivno podržana samo nekolicina njih.

Ukratko smo pomenuli šta je to Mono frejmvork, pa sada prelazimo na integrisano radno okruženje MonoDevelop (monodevelop.com, 27,1 MB), koje je napisano upravo uz pomoć Mono frejmvorka. MonoDevelop u najkraćem bismo mogli da opišemo kao znatno osiromašenu verziju Visual Studija. Međutim, MonoDevelop ima baš ono što Visual Studio nema, a to su krosplatformska podrška i mogućnost pisanja .NET aplikacija bez obzira na operativni sistem. MonoDevelop, kao i svaki ozbiljniji editor, podržava sintaksno bojenje koda, automatsko kompletiranje komandi, skrivanje programskih delova i njihovo prikazivanje po potrebi. Dakle, ništa spektakularno, ali i dalje upotrebljivo. Program ima i opciju importovanja fajlova kreiranih u paketu Visual Studio, ali je sve to obavljeno dosta nezgrapno. Teško da ćete moći da importujete i najprostiji program napisan sa VB.NET, pošto će rezultujući kôd imati mnogo grešaka (ili će vam MonoDevelop jednostavno „pasti”). Situacija po pitanju C# koda mnogo je bolja i često se konverzija završava bez bilo kakvih intervencija programera. Trik je u tome što je Mono prvenstveno pisan da bi omogućio podršku za C#, a sve ostalo je dodato naknadno i nekako preko volje.

Instaliranje ovog radnog okruženja pod Windowsima vrši se u dva koraka. Prvi je instalacija Mono frejmvorka za Windows i GTK# (interfejs između .NET i GTK+ GUI biblioteka), koji se instaliraju iz zajedničkog instalacionog paketa. Posle toga, na red dolazi instalacija samog IDE okruženja. GTK# je istovremeno i osnova modula za dizajniranje grafičkog interfejsa unutar MonoDevelopa. Iako podržava brojne elemente i kontrole (koje se ovde nazivaju vidžeti), ipak je znatno nefleksibilniji od onoga što nudi Visual Studio.

Upotreba MonoDevelopa pod Windowsom dolazi pod znak pitanja zbog prisustva besplatne Microsoftove alternative. Međutim, za programere u Linuxu predstavlja čisto blago zato što mogu bez velikih problema prilagoditi programe pisane za Windows i omogućiti razvoj ASP.NET aplikacija direktno iz Linuxa. Doduše, ima tu mnogo usputnih problema koji nastaju, recimo, prilikom pozivanja SQL servera. To se iz Visual Studija obavlja veoma jednostavno, dok ta baza podataka praktično ne postoji na Linux platformi, pa korisnici moraju da idu zaobilaznim putem.

Iako još nije dorađen, u pitanju je perspektivan proizvod koji obećava dobru podršku za pisanje Android i iOS aplikacija, što potencijalno može mnogo da znači za ovu razvojnu platformu. Ukoliko ste ranije koristili Visual Studio a sada se bavite programiranjem za Linux, osećaćete se (skoro) kao kod kuće.

• • •

Kao što smo već rekli, Code::Blocks će odlično poslužiti mladim C/C++ programerima i njihovim profesorima u edukativne svrhe, pošto će s lakoćom moći da kreiraju kako konzolne tako i GUI aplikacije. Naravno, poslužiće odlično i profesionalcima pošto sadrži sve što se zahteva od jednog radnog okruženja. Sve u svemu, vrlo dostojan program.

MonoDevelop je potencijalni rudnik zlata za brojne programere koji po prirodi posla moraju da pišu programe za više platformi istovremeno. Mnogi programeri su maštali o tome da imaju C# pod Linuxom i sada je njihov san postao stvarnost.

Na kraju, autoru ovog teksta najdraži je Lazarus, sredstvo kojim možemo pisati „čistokrvne” aplikacije za mnoge operativne sisteme. Od svih predstavljenih programa daje najveće mogućnosti za pisanje kvalitetnog multiplatformskog softvera. Napiši jednom i kompajliraj bilo gde!

Igor S. RUŽIĆ

 
Alternativni internet pregledači
Epubor Ultimate Converter 1.50
CardRecovery 6.10
FastStone MaxView 2.5
Photo Calendar Maker 2.65
Microsoft Office 2013
Funny Photo Maker 2.2
AVG AntiVirus Free 2013
SnapPea 2.26 Beta
Razvojna programerska okruženja
Šta mislite o ovom tekstu?
WinMetro Beta
Presentation Pointer 1.3.2
Perfect Effects 4 Free
Save your videos
DesktopSnowOK 2.22
Browser Backgrounds 6.6
Search for cheap flights 1.1
Home / Novi brojArhiva • Opšte temeInternetTest driveTest runPD kutakCeDetekaWWW vodič • Svet igara
Svet kompjutera Copyright © 1984-2018. Politika a.d. • RedakcijaKontaktSaradnjaOglasiPretplata • Help • English
SKWeb 3.22
Opšte teme
Internet
Test Drive
Test Run
PD kutak
CeDeteka
WWW vodič
Svet igara



Naslovna stranaPrethodni brojeviOpšte informacijeKontaktOglašavanjePomoćInfo in English

Svet kompjutera