K editaci zdrojových kódů se používají různé prostředky, od prostých textových editorů až po různá integrovaná vývojová prostředí (IDE). Na většinu věcí mě postačoval lepší textový editor, nejčastěji PSPad, ale stále častěji se začínám poohlížet po Vimu, oddělení editačního módu a módu pro pohyb po textu mě přijde jako výborná myšlenka, časem se k použití textových editorů pro vývoj ještě určitě vrátím, nicméně dnes bych se rád trochu pozastavil u IDE pro vývoj v PHP a to zejména u jedné novinky - Netbeans.
Pro PHP existuje již poměrně hodně možností v oblasti IDE. S podivem je, že většina je jich pro Windows, pak prostředí v Javě, která jsou multiplatformní, nativní IDE pro Linux/Unix přiznám se žádné neznám. Mezi ty oknoidní patří hlavně
Ani jedno z nich není zdarma ani open source, poměrem cena výkon mě docela zaujal PHPDesigner, PHPEd vypadá nabušeně, ale přeci jen cena začínající na 119$ za Standard edici mě přijde trochu hodně. PHPEdit také není špatný, ale nějak se mi nepodařilo rozchodit code completion pro soubory a třídy ve workspace. Co mi také vadí je to, že všechny jsou jen pro Windows, sice jsem našel informace o tom, že většinu lze provozovat i pod Wine, ale to je nic moc. Výjimkou snad bude PHPEdit, který ve verzi 3 bude pod .Net Frameworkem a prý bude fungovat i pod Monem. Zatím sice většinu času trávím také pod Windows, ale časem bych si chtěl i na desktopu nechat Linux.
Takže už zbývají IDE které používají Javu, tady je situace asi takováto
- novinka Netbeans PHP
Zend Studio for Eclipse je komerční IDE od Zendu, firmy, která se podílí přímo na vývoji PHP a tak jistě bude pro profesionála tou nejlepší volbou opět je tu ale trochu problém s tou cenou 349$ za professional edici je dost. Takže zbývá Eclipse PDT na nově Netbeans. Většina lidí používá Eclipse PDT hlavním důvodem bude zejména to, že je tu mnohem déle než Netbeans PHP a je vlastně jakousi testovací platformou pro Zend Studio for Eclipse, což je určitě výhoda. Netbeans je stejně jako Eclipse primárně IDE pro Javu a vytváří ho firma Sun, která se sama o Javu jako takovou stará. Stejně jako Eclipse je i Netbeans zároveň platforma, nad kterou si můžete vytvořit co chcete. Nedávno tak byla do Netbeans přidána podpora Ruby. Jak se mi ale zdá, tak Eclipse je jako platforma využívána častěji, než Netbeans. Netbeans PHP není ještě ve stabilní verzi, ale i přesto jsem se nakonec rozhodl jako PHP IDE používat právě Netbeans. Důvody jsou asi tyto.
- Menší velikost - instalace je něco okolo 4OMB. Což je asi třetina toho, co u Eclipse PDT, vůbec přístup k PHP edici Netbeans na webu Netbeans na mě dělá tak nějak lepší dojem než Eclipse PDT.
- Větší přehlednost - Netbeans mě přijde takové přehlednější, voleb pro nastaveni je méně a celkově na mě působí tak nějak kompaktnějším dojmem.
Neuvedl jsem žádné důvody, které by se nějak týkaly přímo práce s PHP kódem v IDE. Je to proto, že tam neshledávám téměř žádný rozdíl i přesto, že Netbeans je mnohem mladší a není ještě ani ve finální verzi. Máte tam
- pokročilou code completion jak pro interní PHP věci, tak pro vlastní PHP kód v projektu
- hlídání chyb při psaní a jejich zvýrazňování
- snippety, code templates
- code navigator a skoky na deklarace
Pár věci ještě nefunguje jak má, ale práce jde velmi rychle dopředu, každý den si můžete stáhnout aktuální buildy a je vidět, že se lidé ze Sunu se vývoji PHP IDE aktuálně opravdu věnují. Věc, kterou jsem nikde nevyzkoušel ani nepoužíval byl debugger, IDE pro PHP jsem vlastně hledal zejména kvůli code completion a orientaci v kódu.
Další zajímavostí je, že u Sunu se na vývoji Netbeans podílí mnoho českých vývojářů, z blogu o Netbeans PHP jsem nabyl dojmu, že PHP IDE snad nikdo jiný než Češi nedělají.
A perlička na závěr pro skalní VIMaře (ač sám nejsem), feature, která je opravdu killer a hovoří ve prospěch Netbeans oproti Eclipse je dokonalý klon Vimu pro Netbeans - jVi.
Komentáře (22)
Plne souhlasim - NetBeans pro PHP zkousim jiz od betaverzi a s postupnym vychytavanim par obtizi, na ktere sem v nich natrefil se stava opravdu dobrym nastrojem. Pri srovnani s Eclipse PDT bych take rad zminil, ze mi NetBeans prijdou o dost rychlejsi.
Kazdopadne v prehledu nebylo zmineno Komodo IDE, ktere je take komercni a s PHP si rozumi velmi dobre (autokompletace je opravdu vyborna) - existuje i open verze, te ovsem chybi outline zdrojoveho kodu.
Supr ze se o tom nekde pise, sam zatim pouzivam Eclipse PDT ale planuju Netbeans, protoze je pouzivam i pro vyvoj v Jave a jsme na to nejak vice zvyklý.
Libí se mi, že máme k dispozici další free IDE, ale mrzí mě, že na refaktoring, podporu unit testů a out-of-the-box debugování si budem ještě počkat.
docela dobrý je i VS.PHP který je postavený nad Visual Studiem (je to IDE resp. prostředí který mi tak nějak sedí úplně nejvíc)
pár dní jsem ho zkoušel a nebylo to špatný ale protiargumentem je opět cena :)
[1] - Na Komodo jsem zapoměl, taky jsem ho před nějakou dobou zkoušel (myslím, že tu free verzi - Komodo Edit) a přišlo mi to nějak složité, podle toho, co jsem četl, by ta code completion měla být jen pro aktuální soubor a jeho includy, jestli nefunguje pro všechny soubory projektu, tak to dost vadí, ten outline taky trochu schází, hlavně když je třída s větším množstvím metod a členských proměnných, ale v čem Komodo vede je podpora Perlu a Tcl. Tam, kde mají nějaké věci v ještě v Perlu (a že toho určitě budou kila), tak tam bych to viděl na Komodo Edit.
[4] - VS.PHP jen když se kombinují PHP s nějakým .NET jazykem, pak jo a samozřejmě pouze na win, nepojede určitě ani ve wine.
[3] - ten refaktoring tam už prý nějak funguje, ale nějak víc jsem to nezkoumal, někde jsem o tom zahlédl zmíňku někde v nějakém screencastu
out-of-box debugger tam asi nikdy nebude, do toho podle mě Sun nepůjde, aby psal vlastní PHP debugger nebo nějaký ohýbal, myslím, že solidní podpora xdebug by mohla stačit, ale nevím, o PHP debugger jsem se nikdy moc nezajímal.
Popora unit testů tak ta určitě chybí, tu by to chtělo určitě.
Nedávno jsem něco jako jVi našel i pro Eclipse. Stačilo Googlit Eclipse VIM...
[8] - já jsem našel dva, eclim, což je vim, do kterého jsou přes různé srandy a pluginy "dotaženy" featury z eclipse, to se mi zdá takové trochu šílené
a pak viPlugin, to je obdoba jVi, ale je placené, takže bych to zatím viděl tak, že obdoba jVi pro eclipse nic moc
Ahoj,
zkousel nekdo Subversion v Netbeans PHP IDE? Me to u vsech repository pri checkoutu pise PROPFIND of '/svn': authorization failed (http://mydomain.com). Pristupove udaje jsou urcite spravne (v browseru a napriklad v rapidsvn mi to funguje).
Nema nekdo stejny problem?
bohužel, nic z verzovacích feature jsem nezkoušel, v práci máme mercurial a používám ho normálně z command line mimo IDE, možná časem
Tak jsem na tvůj popud vyzkoušel NetBeans IDE a musim říct, že je fajn. Kromě jedné věci. A to věci TRAGICKY NEPOUŽITELNÉ - antialiasingu písma v zobrazení kódu ! ! ! screen
Jestli někdo ví, jak se toho zbavit, tak sem s tím - icq třidvapět-stodva-pětdvačtyři (poslední dobou mě nahání boti ;) )
12 - Tak to netuším, já používám ten defaultní font (vypadá jak courier ??) a mám to v pohodě, zkus se na to zeptat na tom blogu, url je někde ve článku, ale taky jsem dost slepej, tim to taky může být :-)
:) toho sa nezbavis, lebo ten cely Javovsky GUI toolkit vykresluje fonty takto debilne. Zend Studio ma presne tento isty problem. Eclipse je sice tiez Java, ale ten ma nejaku inu GUI kniznicu, ktora ma ovela lepsiu nativu integraciu do roznych OS.
[14] - jo, jo tak nějak to je, pokud se pamatuji, tak NetBeans používá standarní javovský gui toolkit swing a Eclipse je celé postavené na SWT, což je toolkit od IBM, který je postaven více na nativním gui widgetech, takže na každém OS vypadá jinak, kdežto swing je více abstraktní a vypadá všude stejně. Nicméně Zend Studio je v podstatě Eclipse, takže tam bych čekal, že to bude vypadat stejně, kdežto Netbeans asi ne, nicméně já tam žádný extra rušivý aliasing nějak nezaznamenávám, takže to nezkoumám.
Zkuste nastartovat NetBeans s prepinacem -J-Dswing.aatext=true, kdyz je startujete nebo umistit tento prepinac do options v ${adresar netbeans}/etc/netbeans.conf .
Tak jsem se jeste podival na anti-aliasing bliz. Drive mnou uvedena properta swing.aatext je deprecated a nemela by se moc pouzivat. To co jsem zjistil jsem popsal zde: http://blogs.sun.com/netbeansphp/entry/anti_aliasing_font_in_the
Jedna poznamka pro Tomase Fejfara. Neni dobry ukazovat anti-aliasing na jpg souboru, protoze transformace pouzita v jpg zpusobi, ze to pismo pak vypada anti aliasovane.
Na netbeansech dělá hodně čechů protože původní kód psal nějaký čech od kterého to sun odkpoupil, což si myslím je bezba!
Možná to je jen štěstí, ale při pokusu rozběhat PHP debugger pro Eclipse PDT jsem se s tím neúspěšně mořil celý den a když jsem to zkusil rozběhat pro Netbeans, tak jsem našel na jejich stránkách nádherný návod a rozběhané jsem to měl zachvilku.
Ahoj, taky jsem na Tvůj popud nainstaloval a rozběhal, rychle z orientoval. Má to kotel výhod oproti Eclipse, ale jak psal kolega výše, jak implementovat SVN?
když se chci připojit na adresář, tak mi to vyhodí:
org.tigris.subversion.javahl.ClientException: Repository has been moved
Repository moved permanently to 'http://localhost/_REPOSITORY/upc_box/'; please relocate
Netbeans používám od té doby, co jsem ho viděl na přednášce webexpo.. Líbí se mi čím dál víc, ale to bude asi tím, je dobrej (oproti pspadu).
Váhám mezi Eclipse a NetBeans...
Komentáře jsou uzavřeny.