Softwareentwicklung

Netbeans 17 ist da – mit Unterstützung für PHP 8.2

Am 21. Februar 2023 war es soweit: Die kostenlose Entwicklungsumgebung Netbeans 17 wurde veröffentlicht.

Netbeans wird dieses Jahr 26 Jahre alt und erhält immer noch 4 große Updates pro Jahr. In Netbeans 17 sind gemäß den Netbeans IDE Release Notes 373 Commits (= Änderungsschritte im Quellcode) eingeflossen.

In diesem Artikel geht es vor allem um die Verbesserungen und Neuerungen rund um PHP.

Nicht lange lesen sondern gleich ausprobieren? Hier geht’s zum Download:

Keine Lust auf Experimente? Wer lieber bei Version 16 bleiben möchte, findet hier den Artikel über das Release von Netbeans 16.

Was ist neu in Netbeans 17?

Es wurden mehrere kleine Fehler behoben.

Groß- / Kleinschreibung bei CSS-Properties

CSS-Properties (z. B. “background-color”) sind case-insensitive. Das heißt, dass beide folgenden Code-Beispiele korrekt sind:

h1 {
    background-color: white;
}
h1 {
    BackGround-colOR: white;
}

Netbeans hatte das aber bisher als Fehler gewertet (s. Screenshot):

In Netbeans Version 17 ist dieser Fehler nun behoben.

Verbesserungen für PHP in Netbeans 17

  • (Leider kein) Verbessertes Verhalten von {@inheritDoc} in DocBlock-Kommentaren

    Laut Ankündigung sollte der {@inheritDoc} nun endlich in den DocBlock-Kommentaren auch für Konstanten und Klassenvariablen funktionieren. In meinen Tests mit Netbeans 17 funktioniert {@inheritDoc} im Prinzip überhaupt nicht.
  • PHP 8.2 Support: Beim Anlegen eines neuen PHP-Projektes steht nun bei der Sprachauswahl “PHP 8.2” zur Verfügung.
  • PHP 8.2 Support: nullfalse, und true stehen jetzt als eigenständige Typen zur Verfügung

    Auf den ersten Blick erscheinen diese Typen wenig sinnvoll. Sie helfen jedoch noch stärker zu typisieren. Z. B. wenn eine Funktion nur true oder null zurückgibt, ist ?true besser als Type-Hint geeignet als ?bool
  • PHP 8.2 Support: Readonly werden nun unterstützt
  • PHP 8.2 Support: Verwenden von Eigenschaften eines Enums in const Ausdrücken

    Bisher konnte man in Const-Ausdrücken innerhalb eines enums nicht die Eigenschaften des Enums verwenden – bzw. hat Netbeans dies als Syntaxfehler gewertet:

Mit Netbeans 17 wurde dieser Fehler behoben:

  • PHP 8.2 Support: In Traits können nun Konstanten definiert werden
  • PHP 8.2 Support: Disjunctive Normal Form Types können nun verwendet werden

    Disjunctive Normal Form Types ermöglichen es, eine Kombination aus verschiedenen Klassen und Interfaces für die Typdefinition einer Variablen zu verwenden. Netbeans 16 konnte damit noch nicht umgehen:

Netbeans 17 hat im Bereich der Disjunctive Normal Form Types etwas dazugelernt:

  • Ungültige Funktionsnamen in Enums werden nun zuverlässiger erkannt
  • Der boolean-Typ wurde entfernt

René Pöpperl

Seit 2010 arbeite ich als Softwareentwickler. Mein hauptsächlichen Interessen liegen in gut durchdachtem UI-Design und hoher Code-Qualität.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Consent Management Platform von Real Cookie Banner