![]() | ![]() |
![]() |
| ![]() |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Zend Studio 7, Sun NetBeans PHP IDE, Aptana Studio 3, TSW WebCoder 2010, Luckasoft EngInSite PHP Editor, NuSphere PhpED 5.9.5, CodeLobster PHP Edition IDE, MPSoftware phpDesigner 7, ActiveState Komodo IDE 5.2.4, WaterProof PHPEdit 3.6
U razvoju web aplikacija, tekst editore i dalje koristi veoma mali procenat starih i novih programera, a apsolutna većina ipak želi moćnije i bogatije aplikacije. Testirali smo deset najpopularnijih Programiranje u jeziku PHP prešlo je dug put. Počelo je kao manjinski udeo u globalnom prostoru web tehnologija i bilo je zarobljeno na računarima pojedinaca, zatim je dobijalo sve veću ulogu u oplemenjivanju mnogih sajtova i spravljanju CMS-ova, sve do masovne prisutnosti u dinamičkom svetu današnje Mreže. Pisanje PHP koda oduvek je bilo uporište tvrdokornih programera, onih koji nam prvi padnu na pamet kada uopšte pomislimo na tu društvenu grupu. Njihova odlika bila je da kôd pišu isključivo u Notepadu, a da se eventualno neki pojedinac odluči za neki rich-text editor sa opcijom syntax highlighting. No, kako je PHP postajao sve masovniji skripting jezik tako je ovaj relativno mali krug ljudi s promenom obima posla prosto morao da menja svoje navike. Veliki broj novopridošlih u svet ovog jezika već je imao iskustva sa razvojem softvera, i to najčešće upotrebom razvojnih okruženja. Stariji i iskusniji uporno su ih uveravali u to da je Notepad sve što im je potrebno, ali su i „razmaženi” programeri imali svoje argumente – želeli su veću produktivnost, pravljenje manjeg broja grešaka i pisanje čistog, čitljivog koda. Prednost u debagovanju aplikacije ne treba ni pominjati. Potrebe ovih programera ubrzo su bile prepoznate i tržište je odgovorilo mnogim rešenjima koja već godinama uspešno grade svoju bazu korisnika, bilo da su ona pod zastavom komercijalnih projekata ili onih koji dolaze iz zajednice otvorenog koda. Pre nešto više od dve godine (SK 2008/08) testirali smo četiri tada najpopularnije aplikacije. One su i danas prisutne, uz dodatak snažne konkurencije. Kako smo testirali? Testiranje razvojnih okruženja nikada nije lako iz prostog razloga što postoji pregršt opcija koje svaka aplikacija nudi i potrebno je dobro osmisliti kategorije u kojima će se te sposobnosti rangirati. Ako na to dodamo i činjenicu da svaki proizvođač na svom sajtu piše da je njegov softver najbolji, kači intervjue sa korisnicima koji u stilu „TopShop kupovine iz fotelje” kažu da su baš programirajući u tom i tom softveru smršali 25 kg za manje od mesec dana, stvar postaje još zamršenija. Izborivši se sa reklamama i nakon dovoljno vremena testiranja, iskristalisale su se sposobnosti koje smo prema grupama složili u: Ako je syntax highlightning već podrazumevana opcija za većinu savremenih programera, onda je završavanje koda (code completition) prva sledeća na spisku. U cilju obezbeđivanja maksimalne udobnosti u radu, potrebna je usklađenost sa phpDoc (dokumentacijom jezika), ali i sa korisnički napisanim klasama i metodama. Ova osobina ne olakšava samo pisanje već omogućava i proveru grešaka (slovnih) „u letu”. Prosto, ako napišete „$ponter–>” i ne izađe vam nikakav predlog, znate da verovatno nešto nije u redu. Lako se uočava da treba da piše „$pointer–>”, a tada će sistem već pokazati opcije na koje pokazuje ova promenljiva. U paru sa ovom zgodnom funkcijom često dobro dođe i mogućnost redirekcije do mesta na kojem su neka promenljiva ili metoda definisane, bilo da se u malom prozoru iznad metode (promenljive) pojavi informacija ili da se ponudi link do željenog mesta. Prijavljivanje grešaka i upozorenja „u letu” takođe je opcija koja zauzima vrlo bitno mesto i bez nje nijedno okruženje zaista nije kompletno. Kako PHP nikada ne „trči” sam, od razvojnih okruženja zahtevaju se i zavidne mogućnosti u radu sa HTML i Javascript jezicima, kao i SQL-om. Opcije refaktorisanja koda, debagovanja (sa svim funkcionalnostima poput breakpoint, watch, step into...), kontrola verzija (CVS, SVN) i slične opcije takođe ne smeju biti preskočene. Savremeni programer nije lenj i razmažen, ali svakako jeste navikao na ove udobrnosti i olakšanja i želi okruženje koje mu ih pruža. Na kraju, složenije sposobnosti okruženja poput upravljanja projektima ili sposobnosti proširenja zgodnim plug-inovima i third party softverom biće samo dodatna vrednost. Zend Studio 7
Nakon instalacije 30-dnevnog probnog paketa, softver je zatražio Zend Server, unapređenu verziju poznatog Apachea (biblioteke za unapređenje performansi su srž modifikacija). Nakon instalacije besplatne verzije dotičnog, sve je bilo spremno za rad. Oni koji su naviknuti na platformu Eclipse odmah će se snaći u ovom IDE-u, jer se snimanje workspacea i fajlova obavlja na isti način kao u originalnoj instalaciji popularne platforme. Zend se potrudio da korisnicima omogući veliki broj template kodova i pri kreiranju novog fajla moći ćete da birate izmeću velikog broja open source rešenja koja će ubrzati rad početnicima, ali i iskusnijim programerima. Većina rešenja zapravo su gotovi oblici koda u skladu sa Zend Frameworkom, tako da bi bilo zgodno da se početnici ipak upoznaju sa strukturom pre no što krenu sa daljim radom. Posledica činjenice da je Zend izgrađen na platformi Eclipse u potpunosti određuje izgled i funkcionalnost opcija editovanja koda i debagovanja, završetka koda (u letu) i sistema upozorenja i grešaka. Profajliranje je takođe deo paketa – softver je sposoban da generiše veliki broj korisnih izveštaja i statistiku za testirani fajl. U radu sa sistemima baza podataka Zend je veoma dobro opremljen i u mogućnosti je da radi sa gotovo svim poznatim sistemima pomoću JDBC drajvera. Preinstaliran je najkorišćeniji DBMS – MySQL, te je početnicima pojednostavljen rad. Ugrađeni Data Source Explorer omogućava detaljan pregled podataka u tabelama, manipulaciju pogledima i sačuvanim procedurama. Za izmenu tabela ipak je potrebno da ručno unosite SQL kôd, koji je donekle olakšan modom Database Debug, koji omogućava bezbolniji unos. Ako ste se zapitali da li ovako zaokruženo i moćno rešenje ima manu, odgovor je potvrdan. Najveća prednost Zend Studija je i njegova najveća mana. Mnogo plug-inova na jednom mestu uvek znači moćnog ali i tromog domaćina. Java kao podloga i veliki broj opcija koje su pokrenute nakon sat vremena korišćenja čak i na jačim mašinama mogu da pretvore rad u pakao. Kada se shvati i to da je pozamašnoj svoti novca koju je neophodno izdvojiti za ovo komercijalno rešenje potrebno dodati još stotinak evra za kupovinu dodatnih RAM modula, eto razloga da se odmah pogleda u komšijsko dvorište u potrazi za boljim rešenjem. Sun NetBeans PHP IDE
Klasičan izgled same aplikacije nikoga neće oduševiti, ali neće ni razočarati, a tokom korišćenja korisnik će se zaista brzo navikavati na opcije koje NetBeans nudi. S leve strane nalazi se explorer deo, zadužen za navigaciju kroz projekte, baze podataka i fajl sistem, kao i web servise popularnih Web 2.0 sajtova poput Amazona ili Facebooka. Upravo je lakoća korišćenja ovih web servisa u NetBeansu karakteristika koja gura ovo rešenje u prvi plan, kada su u pitanju novi programeri u svetu trećeg najpopularinjeg jezika (iza Jave i C/C++ zajednica). Unošenje koda, njegovo završavanje (u letu), kao i sposobnost „gutanja” HTML-a i Javascripta veoma su jednostavni i intuitivni, a ni dobra podrška za FTP i SFTP pristup nije izostala. S lakoćom je moguće podesiti i remote debugging jednostavnim unosom putanjâ i mapiranjem lokalnih i udaljenih izvornih fajlova. Ipak, oni sa zahtevnijim potrebama zameriće to što interni NetBeans SSH klijent ne podržava autentifikaciju sa zaštitnim ključem, te će biti primorani na korišćenje password autentifikacije ili SSH tunela (više informacija na http://wiki. NetBeans debaguje PHP kôd uz pomoć xdebuga, a podržano je i debagovanje Javascripta baziranog na Firebugu. Rad sa HTML formama i kontrolama je lak i obavlja se prevlačenjem (drag and drop) elemenata s desne strane aplikacije iz dela koji se naziva HTML paleta (Pallete). Ukoliko imate standardno instaliran MySQL server, NetBeans će ga prepoznati na adekvatnom portu, a inače dobro funkcioniše sa bilo kojim DBMS-om preko JDBC drajvera. Eksplorer baze veoma je lak za korišćenje i u njemu je moguće pregledati detaljno sadržaj tabela, a pomoću njega moguće je otvaranje i zatvarajne konekcije na bazu, pokretanje upita i slično. Veliki broj manipulacija nad bazom moguće je obaviti bez ručnog unosa SQL koda. Zamerku ovom softeru uputili bismo po pitanju podrške. Iako dolazi iz velike kuće, NetBeans nema savršeno razvijen sistem podrške i pomoći u pisanju PHP koda te korisnik za mnog probleme mora dosta vremena da provede pretražujući sajtove da bi pronašao rešenje. Ipak, ako se uzme u obzir to da je NetBeans besplatan, završna ocena ovog okruženja spada u red najviših. Aptana Studio 3 (Beta)
Korisniku je ostavljen prostor za uređenje izgleda aplikacije, uz velike mogućnosti dodatnih podešavanja u smislu editovanja koda i manipulacije nad njim. Ipak, nedostaju funkcija drag and drop i JavaScript debager, a bez dodatnih plug-inova nije omogućen ni rad sa CVS i SVN sistemima. Snažna podrška za FTP i SFTP transfer podataka, mogućnost pregleda HTML elemenata kroz DOM outline, kao i zgodna live opcija preview donekle spasavaju stvar. Oznaka Beta jasno ukazuje na to da Aptana Studio 3 još nije zaokruženo rešenje, ali ipak postoji velika baza onih koji ga koriste. Više od pet i po miliona preuzetih primeraka svakako govori o tome. Na kraju pomenimo i to da sami autori ističu da će u konačnoj verziji biti ispravljeni pomenuti nedostaci i dodata neophodna ugrađena dokumentacija. TSW WebCoder 2010
Debagovanje je moguće u dva moda – PHP i Web modu. Prvi je klasičan debager, mada uskraćen za neke od opcija (recimo watch), dok drugi predstavlja debagovanje kroz opciju preview svih elemenata na dinamički generisanoj HTML stranici. Zgodne opcije poput automatskog HTML i CSS validatora (integrisan je W3C), kao i PHP proveravača sintakse olakšavaju rad programeru i podižu produktivnost. Kreatori su inkorporirali i napredne funkcije Code Folding i Code Snippet, pomoću kojih se deo koda može „saviti” u samo jednu liniju sa odgovarajućim komentarom, a postoji i mogućnost da se deo koda sačuva kao snippet (parče koda koje se može ponovo koristiti, npr. for petlja). WebCoder efikasno edituje HTML i CSS pomoću odgovarajućih tabela, slično kao u Dreamweaveru. Za uređivanje koda zadužena je podrška za podesivi Tidy mehanizam, kojim će se gomila nečitljivog koda lako urediti. FTP i SFTP podrška postoje, ali je zato izostala ona za SVN i CVS, kao i za pregled baza podataka unutar IDE-a. Ovo će zahtevati instalaciju eksternih rešenja, pa se postavlja pitanje da li su autori dobro procenili bez kojih funkcionalnosti će ovo rešenje moći „da se proda”. No, to je na korisnicima da presude. Zgodnu opciju predstavlja mogućnost istovremenog pregleda u ugrađenim browserima IE i Firefox. Probna verzija važi 30 dana, a novac koji bi trebalo izdvojiti za kupovinu licence mnogo je manji od moćne konkurencije. Luckasoft EngInSite PHP Editor
Nakon instalacije 30-dnevne probne verzije, editovanje potojećih i pravljenje novih fajlova veoma je lako, uz sve potrebne opcije poput syntax highlightninga, završetka koda (u letu), kao i vođenja projekata. Sastavni delovi su i FTP i SFTP, zatim WebDAV integracija, CVS/SVN funkcionalnost i odličan syntax checker. U paket je integrisan IE browser i server sa prepodešenim parametrima, tako da je za korisnika veoma lako da nakon pisanja koda on odmah i testira bez prevelike brige o posebnoj instalaciji PHP-a i Apache servera. Program nudi i lako prebacivanje sa PHP4 na PHP5 verziju i obratno, što nismo sretali kôd konkurencije. Debagovanje je još jedna jaka strana ovog paketa i sadrži sve potrebne opcije koje će biti i stanju da koristi svako ko je barem jednom debagovao u Visual Studiju ili Eclipseu. Upotpunjen odličnim profajlerom, EngInSite PHP Editor omogućava programeru zavidan nivo kontrole. Izuzetno korisnu opciju predstavlja i funkcija Check syntax, koja pre pokretanja/debagovanja može da uštedi dosta vremena. Ipak, program nije bez mana. Nije podržana provera sintakse u letu, a podrška za povezivanje sa bazom vrlo je slaba, mada se kupovinom ovog softvera u paketu dobija aplikacija istog proizvođača upravo namenjena manipulaciji nad bazom i podacima. Napomenimo i to da je EngInSite PHP Editor ponekad pokazivao i znake nestabilnosti karakteristične za nedovoljno dobro napisane Windows aplikacije. Sa cenom nekoliko puta manjom od Zend Studija, ovo rešenje svakako ima svoje mesto među onima koji zaslužuju pažnju u konkurenciji komercijalnih aplikacija. NuSphere PhpED 5.9.5
Nakon dobrog početka, standardne opcije poput bojenja koda, predlaganja funkcija i atributa, završavanja koda (istina, nedostaje podrška za Javascript), javljanja grešaka u HTML, CSS, Javascript i SQL kodu izvedene su na najbolji mogući način, brzo i efikasno. Debagovanje je odlično urađeno, a ova aplikacija odlično se snalazi i sa Ajax pozivima, koje je takođe veoma lako debagovati. FTP, SFTP, WebDAV, Telnet ili SSH – ovom programu je svejedno. S lakoćom izdržava sve moguće načine remote smeštanja fajlova, kao i debagovanje udaljenih fajlova. Povezivanje s bazom podataka je jednostavno i editor nudi parčiće koda koji se lako popunjavaju, a takođe i mogućnost pregleda, izmena i brisanja podataka u tabelama baze. Prateća dokumentacija odlično je urađena. Unutar aplikacije postoje detaljni rečnici za sve podržane jezike, kao i mini-biblioteka uputstava za korišćenje programa, svih jezika, funkcionalnosti i podešavanja. Jedina mana koju ovaj softver ima jeste cena. Punokrvna verzija sa svim uključenim opcijama košta rekordnih 495 dolara, što je skuplje i od pompeznog „debeljka” iz kompanije Zend. Ovaj podatak verovatno će odbiti mnoge programere, ali je sa sajta kompanije koja proizvodi ovu aplikaciju jasno da je ona okrenuta pre svega profesionalnim developerima. CodeLobster PHP Edition IDE
Kao editor i razvojno okruženje CodeLobster se snalazi solidno, ali bez nekih stvari na koje smo navikli, kao što su integrisani help sistem ili podrška za automatski dolazak na mesto greške, odnosno upozorenja u kodu. Debagovanje je slično kao i većina stvari u ovom parčetu softvera – čudno. Potrebno je dosta istraživanja po opcijama debagera jer on automatski ne može da uradi mnogo toga, a na pitanje kako ga podesiti jedini odgovor izguglali smo na forumima posvećenim ovoj aplikaciji. Istina, do foruma se može doći i sa sajta proizvođača, ali nam je podešavanje debagera naprosto oduzelo previše vremena. Podrška za baze podataka postoji, ali kroz sistem koji samo prepoznaje konekciju na bazu i čita postojeće datoteke, bez ikakvog alata za manipulaciju podacima. Nedostatak podrške za FTP, SFTP, kao i SVN i CVS tehnologije nimalo ne pomaže paketu da bolje prođe na testu. Na kraju, jedina prednost koju ova aplikacija ima (osim zanimljivog imena) jeste mogućnost povezivanja sa postojećim popularnim aplikacijama, ali kako set od nekoliko plug-inova košta koliko neke od kompletnih aplikacija na ovom testu, CodeLobster nikako ne bismo mogli da preporučimo. MPSoftware phpDesigner 7
Ova komercijalna aplikacija dolazi i u 21-dnevnoj probnoj opciji. Nakon brze instalacije, pokrenuti IDE može da svari više različitih web orijentisanih jezika, među kojima su na primer Java, Ruby, Perl i Python. U radu sa PHP i HTML kodom softver briljira i olakšava korisniku svaki aspekt projektovanja i implementacije. Upakovani FTP i SFTP grafički eksplorer, sekcija za vođenje projekata, kao i predefinisani templejti koda jednostavno su inkorporirani u okruženje i lako dostupni korisniku. Unutar samog IDE moguće je prikazati aplikaciju u svim popularnim browserima, jedino nismo videli eksplicitnu podršku za Chrome. PhpDesigner poseduje istovetnu opciju, kao i EngInSite Editor za proveravanje sintakse pre pokretanja ili debagovanja, koja u realnom radu zaista može da uštedi dosta vremena. Debagovanje PHP-a izvedeno je pomoću xDebuga, dok se za debagovanje JavaScripta morate osloniti, recimo, na Firebug, dakle aplikaciju koja ne dolazi u paketu. Najozbiljniju manu koju ovaj softver ima nalazimo u nedostatku integrisanog sistema za upravljanje podacima u bazama podataka, gde je ponovo potrebno koristiti neku third-party aplikaciju. Podržane su FTP, SFTP, SVN i CVS tehnologije. ActiveState Komodo IDE 5.2.4
Instalacija nas odmah upoznaje sa integracijom popularnih Zend i Smarty PHP framework sadržaja, kao i sistemima za kontrolno verziranje (CVS) i udaljeno verziranje (recimo Bazaar). Razvijen na Mozilla osnovi (deli s njom deo koda), Komodo dobro može da iskoristi Firefoxove plug-inove za uvoz ili da izveze u ove pakete svoj kôd. U editovanju koda Komodo se dobro „sporazumeva” sa svim jezicima koje podržava. Debagovanje je još jedna kategorija u kojoj ovaj IDE odlično fukncioniše. Pored mogućnosti lokalnog debagovanja, Komodo je u stanju da debaguje i udaljene lokacije, što u situacijama kada aplikaciju razvija više programera može da bude veoma korisno. Ipak, debagovanje PHP i JavaScripta u istom fajlu zahteva više sesija, što može da oduzme dosta vremena. Okruženje poseduje zgodnu opciju pri debagovanju, koja pokazuje generisani izlazni HTML kôd do tačke u kojoj se nalazimo. Komodo kao da je kopirao prethodnika u još jednoj kategoriji – nedostatku podsistema za upravljanje podacima u bazama podataka. I pri korišćenju ovog programa za upravljanje bazom moraćete da koristite spoljnu aplikaciju. WaterProof PHPEdit 3.6
PHPEdit ima opciju da integriše framework setove raznih besplatnih PHP paketa poput Symfony MVC ili eZ Publish CMS-a. Snalaženje u osnovnim funkcionalnostima razvojnog okruženja ide bez muke, ali svako obraćanje dokumentaciji može da vam zada glavobolje. Inače, Francuzi nisu vrsni poznavaoci engleskog jezika i delovi dokumentacije mogu da budu u opsegu od nerazumljivih do komičnih. Neke od nedostataka u radu PHPEdit nadoknađuje prijatnim iznenađenjima poput onog da je u stanju da fokusira trenutan deo koda (zamračivanjem ostatka), recimo u slučaju da je unutar PHP-a umetnut deo sa JavaScriptom. Ova opcija podržana je i za SQL, a softver prepoznaje ovaj jezik i unutar stringova. Debagovanje je ponovo podržano putem xDebuga, a dizajneri su odabrali da im prvi izbor kada su browseri u pitanju bude Firefox, za koji postoji toolbar koji u slučaju problema automatski šalje aplikaciju na debagovanje, pri pokretanju Firefoxa iz okruženja. FTP, SFTP, CVS i SVN su, prema očekivanjima, deo paketa. Povezivanje sa bazama podataka rešeno je veoma jednostavno i IDE podržava sve poznate DBMS-ove. Ipak, kada poželite da se pozabavite upitima, tu stvar postaje zamršena, a kako na ovu temu u dokumentaciji nema previše teksta, moraćete da se snalazite, što može da vam oduzme previše vremena ako niste vični ovakvim situacijama. Verujemo da bi ispravljanjem nekih od ovih nedostataka neka novija verzija PHPEdita u budućnosti sebe preporučila za prva mesta u mnogim kategorijama. • • • Izbor razvojnog okruženja sličan je izboru automobila – argumenti nemaju utemeljenje isključivo u racionalnom. Bilo da ste zaokupljeni dobrim „eksterijerom”, „enterijerom” ili pak paketima serijske i prateće opreme, nadamo se tome da ste u testu ovih 10 aplikacija pronašli ono okruženje koje ćete poželeti da isprobate u test vožnji. Većina komercijalnih aplikacija daje vam dovoljno vremena da zađete dublje u funkcionalnosti i u to koliki nivo udobnosti njihov IDE nudi, tako da vas pozivamo da uvidom u našu tabelu svedete svoj izbor na dovoljan broj onih koji vam deluju interesantno, a onda da se i sami malo upustite u igranje sa „motorom”. Kada budete spremni, ubacite u petu brzinu i uživajte u vožnji. Momir ĐEKIĆ
![]()
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() | |
![]() | ![]() |
Home / Novi broj | Arhiva • Opšte teme | Internet | Test drive | Test run | PD kutak | CeDeteka | WWW vodič • Svet igara Svet kompjutera Copyright © 1984-2018. Politika a.d. • Redakcija | Kontakt | Saradnja | Oglasi | Pretplata • Help • English | |
SKWeb 3.22 |