Entwicklung - Codestandards/Qualität

Hallo zusammen

Nun habe also auch ich begonnen, in PP zu programmieren. Siehe dazu auch folgenden Link ins Forum.

Ich finde zwar in Github Hinweise, dass man sich folgende Komponenten installieren solle:

  • infinitest
  • ResourceBundle Editor
  • SonarLint
  • Eclipse Checkstyle Plug-in

Aber wie werden die dann für PP konfiguriert?

Gibt es installierbare Settings für

  • Compiler warnings?
  • Codestyle (Umbrüche, Einrückungen etc.)?
1 Like

Aber wie werden die dann für PP konfiguriert?

  • infinitest

An sich erkennt infinitest alle JUnit Testfälle in den Projekten und führt die automatisch bei jeder Änderung aus. Mehr als installieren muss man bei dem Plug-in nichts.

Das funktioniert für PP in fast allen Fällen - einige Klassen habe ich per Filter ausgeschlossen. Allerdings wird bei den “neuen” PDF Importern nicht erkannt, wenn sich die JSON Definition von Testfall oder Importer verändert.

  • ResourceBundle Editor

Mit dem ResourceBundle Editor editiere (und formatiere) ich den i18n property Dateien. Installieren, per Rechtsklick und “Öffnen mit” Datei öffnen.

  • SonarLint

Über Sonarcloud lasse ich im Build ein paar Metriken laufen. Wenn ich eine Datei anfassen, versuche ich auch immer ein paar “Issues” zu beheben. Das passt aber nicht immer. Mit dem SonarLint Plug-in werden die selben Checks auf der geöffnete Datei ausgeführt (ich glaube über die eingecheckte preferences weiß SonarLint welches Projekt das auf dem Server ist).

  • Eclipse Checkstyle Plug-in

Konfiguration ist ebenfalls eingecheckt und sollte vom Plug-in direkt genutzt werden. Ehrlich gesagt schaue ich da aktuell nicht aktiv drauf.

Gibt es installierbare Settings für

  • Compiler warnings?
  • Codestyle (Umbrüche, Einrückungen etc.)?

Im Github Repository sind auch die Eclipse .project Dateien eingecheckt. Über diese Projekt-Einstellungen für Compiler Warnings und auch die Code Formatierung vorgegeben.

Ich persönlich mache noch folgende Einstellungen:

Java → Editor → Save Actions → Perform the selected actions on save
[x] Format source code
[x] Organize imports

Irgendwie muss man sich da mit SonarCloud verbinden, d.h. das ist wohl, was Du mit den eingecheckten Preferences meintest. Allerdings verbindet das dann nicht, und ich werde auf die Schnelle auch nicht gerade schlau, was ich da tun müsste.

Muss ich da ein binding zu meinem eigenen Projekt auf github machen, oder zu “buchen-github” verbinden? Habe mich ein bisschen umgeschaut, aber verstehe es nicht gerade.