Mirin webspace

Nejbohatší život má ten, kdo žije s minimem nároků

7. 9. 2008 - Komentáře (22) Ostatní PHP

NetBeans jako PHP IDE

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

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)

  1. Ondřej Doněk - 7. 9. 2008 15: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.

  2. dafodil - 7. 9. 2008 17:18

    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ý.

  3. Filda - 7. 9. 2008 18:38

    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.

  4. Jakub Podhorský - 7. 9. 2008 20:00

    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 :)

  5. koubel - 7. 9. 2008 22:37

    [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.

  6. koubel - 7. 9. 2008 22:48

    [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.

  7. koubel - 7. 9. 2008 23:03

    [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ě.

  8. v6ak - 8. 9. 2008 08:02

    Nedávno jsem něco jako jVi našel i pro Eclipse. Stačilo Googlit Eclipse VIM...

  9. koubel - 8. 9. 2008 09:29

    [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

  10. Fabian - 9. 9. 2008 12:55

    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?

  11. koubel - 9. 9. 2008 16:08

    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

  12. Tomáš Fejfar - 14. 9. 2008 17:51

    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 ;) )

  13. koubel - 15. 9. 2008 16:44

    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 :-)

  14. miniak - 16. 9. 2008 00:19

    :) 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.

  15. koubel - 16. 9. 2008 22:32

    [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.

  16. Petr - 2. 10. 2008 10:10

    Zkuste nastartovat NetBeans s prepinacem -J-Dswing.aatext=true, kdyz je startujete nebo umistit tento prepinac do options v ${adresar netbeans}/etc/netbeans.conf .

  17. Petr - 2. 10. 2008 15:19

    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.

  18. MiK - 16. 12. 2008 13:19

    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!

  19. Leinad - 26. 7. 2009 22:12

    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.

  20. Gaudentius - 15. 9. 2009 09:38

    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

  21. MzK - 22. 10. 2009 17:15

    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).

  22. webSEO - 4. 2. 2011 18:22

    Váhám mezi Eclipse a NetBeans...

Komentáře jsou uzavřeny.