Artikelformat

Netbeans 7.0 – ein Preview

Ich bin ein Fan von Netbeans, da man im Gegensatz zu PDT mit vielen netten Features verwöhnt wird. In der Version 6.9 sind die umfangreichen Formatierungsmöglichkeiten hinzugekommen und in der Version 7.0 steht wieder ein Highlight an. Dies möchte ich kurz vorstellen, um den ein oder anderen zu einem Blick über den PDT Tellerrand zu motivieren.

Natürlich rufen die Features bei Benutzern von kommerziellen IDEs wie Zend Studio nur ein müdes Lächeln hervor, aber auch hier kann man ja mal schauen, ob Netbeans vielleicht flüssiger oder stabiler daherkommt.

Während sich eine Software weiterentwickelt oder weiter entwickelt wird, ist es üblich, dass man Methoden, Variablen etc umbenennt, um die Struktur zu verbessern. Deutlichere Namen werden bspw gewählt. In der Java Welt ist das sehr leicht durchzuführen, da das Renaming klassenübergreifend funktioniert. Mit Netbeans 7.0 hat man als PHP Entwickler auch die Möglichkeit solche Refactorings schnell und sicher durchzuführen. Hierzu markiert man das entsprechende Element und wählt aus dem Kontextmenü die entsprechende Funktion aus.

Netbeans bietet daraufhin eine Übersicht, was die IDE nun ändern wird und man kann als Entwickler die Änderung begutachten und notfalls korrigierend eingreifen. Ein paar kleine Tests hierzu waren sehr vielversprechend. Inwieweit sich diese Funktion auch bei komplexen Strukturen bewähren wird, zeigt die Zeit.

Daneben ist die neue PhpDoc Funktion zu erwähnen. Mit einem Klick auf das Projekt wird die Dokumentation erzeugt. Ist alles sauber dokumentiert und wurden die PhpDoc Annotationen genutzt erhält man so eine hübsche Doku. Für die Generierung nutzt Netbeans im Hintergrund den PhpDocumentor. Ich meine es ist der richtige Weg vorhandene Tools zu nutzen, um neue Funktionen bereitzustellen.
Persönlich finde ich diese Funktion aber nicht so spannend, da – wie jeder Leser weiß – mein Vorgehen eher über den CI-Server geht. Und somit die Dokumentation erstellt wird. Um aber schnell eine aktuelle Doku zu erhalten ist das Feature aber auf jeden Fall nett.

[Update]:
Das Refactoring passt bei Änderungen in den Variablennamen einer Methode auch gleichzeitig das phpdoc an. Auch gibt es eine Funktion um Variablen etc. sicher zu löschen. Das heißt, es wird überprüft, ob das Element noch genutzt wird. Im Fehlerfall, wenn also eine Referenz existiert, wird das Refactoring abgebrochen. Danke an Manuel für den Tipp.
[/Update]

14 Kommentare

  1. Kann ich nun in der 7.0 auch endlich verschiedene Dateiencodings benutzen? Die 6.9 unterstützt leider nur UTF-8, was gerade in Altprojekten ziemlich lästig ist. Hat sich da in 7.0 was getan?

    Antworten
    • Hm, interessante Frage. Leider oder glücklicherweise nutzen wir schon seit einigen Jahren utf-8. Ich kann aber heute abend mal schauen, ob ich dazu etwas finde. Vielleicht kennt die Antwort aber ein Leser und kann sie dir früher als ich beantworten 😉

  2. Ist die 7.0 schon ohne große Schmerzen in der Praxis verwendbar? Die 6.9 kränkelte im frühen Stadium noch an einigen Feinheiten, deswegen frag ich. Was war dein Eindruck hinsichtlich Stabiliät?

    Gruß

    Antworten
    • Bei meinen Tests gab es die ein oder andere Exception. Ein kompletter Absturz war aber nicht dabei. Da man mehrere Versionen parallel betreiben kann, ist eine Evaluation recht einfach. Wie immer ist es sinnvoll auf eine finale Version zu warten, wenn man ein System produktiv nutzen will.

  3. Georg Wächter

    19/01/2011 @ 11:25

    Netbeans unterstützt schon länger Nicht-UTF-8 Projekte. In den Einstellungen eines Projekts kann man das Encoding verändern …

    Antworten
  4. @Georg: Sicher, projektweit bringt es mir nicht viel. Ich benötige eine Einstellung auf Dateiebene, d.h. DateiA ist UTF-8, DateiB ist ISO, DateiC ist wieder irgendwas anderes. Eclipse und ZendStudio können das wunderbar, leider NetBeans nicht (für mich der Hauptgrund nicht umzusteigen, sorry, alles in UTF kommt nicht frage, zeitlich gesehen).
    Evtl. kann ja jemand mal in der 7.0 nachprüfen: Projekt in UTF-8 und eine einzelne Datei in ISO (oder umgekehrt).

    Antworten
  5. @Norbert: Wieso unterstützt Netbeans 6.9 nur utf-8? Bei Anlage eines Projektes lege ich doch das Encoding neben PHP-Version als erstes fest.

    Oder meinst Du, verschiedene Encodings innerhalb EINES Projektes?

    Antworten
    • okay, war von mir mehrdeutig formuliert. Wir benutzen ausschließlich utf-8. Somit haben wir nur genau ein Encoding. Das von Sascha beschrieben Problem habe ich also nicht.

  6. Ich freue mich auch schon auf die neue Version. Hoffentlich wird sie ein Tick schneller. Die IDE ist jetzt zwar schon nicht so langsam wie Eclipse, aber etwas schneller wäre noch besser und vor allem nicht so CPU-lastig, dass der Lüfter immer anspringen muss.

    Antworten
  7. Ich benutze die neuen Funktionen jetzt schon circa 6 Monate, dank der Dev-Versionen, die man sich vom öffentlichen CI-Server holen kann.

    Funktioniert alles bestens. Die funktionierende Autovervollständigung ist gegenüber PDT natürlich ein Killer-Feature. Der SVN-Client bietet weniger Funktionen, ist aber im Gegensatz zu PDT aktuell und kann auch mit Externals mit relativen Pfaden oder auf einzelne Dateien umgehen, was PDT nicht kann.

    Außerdem lässt sich ein vorhandener SVN-Client einbinden: was in Verbindung mit Tortoise deutlich mehr Sinn macht als in PDT.

    Antworten
  8. Was ich in deinem Artikel im bezug aufs Refactoring vermisse, ist die Tatsache, das das Refactoring auch in den Annotations (zumindestens die von PHPDoc) greift! 🙂

    Leider habe ich in meinem Projekt große Schwierigkeiten seit 7.0 mit dem Typehint für Basisklassen 🙁
    Vielleicht hat das mit der Größe des Projekts und der Tiefe der Ableitungshierachie zu tun…

    Momentan hab ich meistens beide Versionen mit dem selben Projekt offen:
    In 6.9 Entwickeln, in 7.0 Refaktorieren 🙂

    Antworten

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.