Software für die Entwicklung
IntelliJ IDEA
Du programmierst mit Java? Dann kennst du natürlich die Eclipse IDE, die unter einer freien Lizenz verfügbar ist. Ich nutze Eclipse nun schon seit mehreren Jahren und habe mich ganz gut daran gewöhnt.Aber irgendwie stieß ich auf IntelliJ IDEA von der Firma Jetbrains, was dort als "Die intelligenteste Java IDE" bezeichnet wird, und bin dabei hängen geblieben. Diese Entwicklungsumgebung ist zunächst nicht wirklich kostenlos erhältlich, es gibt zwar eine kostenlose "Community Edition", aber sehr viele nützliche Features sind nur in der "Ultimate Edition" verfügbar. Wer jedoch wie wir ein Open-Source-Projekt betreibt, der bekommt die Ultimate Edition kostenlos! IntelliJ IDEA gibt es für Mac, Linux und Windows.
Als Eclipse-User muss man zu Beginn etwas umdenken: Der "Workspace" heißt hier "Project", "Projekte" sind hier "Module", auch die Tastaturkürzel sind anders. Natürlich kann man die konfigurieren, es wird sogar eine "Keymap" mitgeliefert, die das Verhalten von Eclipse nachstellt. Aber die Anwendung macht insgesamt einen sehr runden Eindruck, trotz der Umgewöhnung lernt man mit der Zeit die Benutzeroberfläche zu schätzen. Die tägliche Arbeit hinterlässt einen flüssigeren Eindruck, gerade die automatische Code-Completion ist wesentlich schneller als in Eclipse (und man muss gar keine Tastenkombination dafür betätigen, es wird einfach während des Tippens was vorgeschlagen). Auffällig (positiv) war aus meiner Sicht auch die fantastische Maven-Integration: Nie mehr "Update dependencies" und "Force update" mit minutenlangem Warten wie in Eclipse! IntelliJ verwaltet die Maven-Abhängigkeiten ziemlich zuverlässig automatisch.
Den guten Gesamteindruck von IntelliJ macht das folgende Zitat aus einer StackOverflow-Frage deutlich:
There is only one reason I use intellij and not eclipse: Usability
Whether it is debugging, refactoring, auto-completion.. Intellij is much easier to use with consistent key bindings, options available where you look for them etc. Feature-wise, it will be tough for intellij to catch up with Eclipse, as the latter has much more plugins available that intellij, and is easily extensible.
Wer bei Oregami mit entwickelt, kann unsere Lizenz verwenden! Bei Interesse einfach bei mir nachfragen.
Webstorm
Ebenfalls von Jetbrains stammt Webstorm, eine Entwicklungsumgebung speziell für Web-Anwendungen. Webstorm unterstützt viele gängige Web-Technologien wie Java Script (Auto-completion, Fehlererkennung, Refactoring) und insbesondere NodeJS, AngularJS, Gulp und natürlich CSS und HTML. Beeindruckend ist auch die integrierte Volltextsuche, die durch die Indizierung sehr schnell ist. Alle Details über die Features findet ihr auf der entsprechenden Produkt-Webseite. Wir verwenden es ebenfalls über die Open-Source-Lizenz. Und genau wie IntelliJ gibt es Webstorm für Mac, Linux und Windows.Auch hier gilt: wer bei uns mithelfen möchte, kann unsere Lizenz verwenden. Kontaktiert mich!
SourceTree
Unser kompletter Quellcode liegt bei GitHub. Wer auf dem eigenen Rechner Dateien während der Entwicklung modifiziert, muss die Änderungen anschließend in das entsprechende GitHub Repository senden. Während es immer möglich ist, mit GIT auf der Kommandozeile zu arbeiten, wünscht man sich natürlich lieber den Komfort einer Benutzeroberfläche. Und obwohl die meisten Entwicklungsumgebungen wie IntelliJ, Webstorm und Eclipse Features oder Erweiterungen enthalten, um mit GIT zu arbeiten, setze ich selber eine spezialisierte Anwendung für den Umgang mit GIT-Repositories ein: SourceTree von Atlassian. SourceTree unterstützt mit einer schicken Oberfläche alle notwendigen Basis- und Profi-Fähigkeiten von GIT. Und es ist noch dazu kostenlos verfügbar, man muss sich nach 30 Tagen lediglich registrieren. Leider wird SourceTree nur für Mac und Windows angeboten - eine Linux-Version sucht man vergeblich.Postman
Da unsere Server-Anwendung nach dem REST-Prinzip aufgebaut ist, kann man gewöhnliche HTTP-Anfragen mit dem Browser oder über die Kommandozeile mit Tools wie curl abschicken, um Informationen aus unserer Datenbank im JSON-Format zu erhalten. Aber das ist während der Entwicklung nicht wirklich praktisch, also machte ich mich auf die Suche nach einem Tool, das die Ausführung von REST-Anfragen vereinfacht. Und ich fand es: Postman, ein Plugin für den Chrome-Browser. Mit Postman kann man beliebige HTTP-Anfragen erstellen, durchführen und für eine spätere "Ein-Klick-Ausführung" abspeichern. Dinge wie einzelne HTTP-Header, Basic- und OAuth-Authentifizierung und URL-Parameter können bequem über die Oberfläche eingestellt werden. Typische Header-Kombinationen können sogar als "Presets" gespeichert werden, um sie bei ähnlichen Anfragen wiederzuverwenden. Postman kann kostenlos heruntergeladen werden, für 10$ gibt es eine erweiterte Version, mit der man dann z.B. Sammlungen von Anfragen in einem Rutsch abspielen und die Ergebnisse überprüfen kann. Ein recht neues Feature ist die Erweiterung Newman, mit der man über die Kommandozeile und auch in Build-Jobs (z.B. in Jenkins) Postman-Abfragen durchführen kann.Software für unsere Webseite
JIRA
Obwohl wir bisher noch gar keine Bugs in unserer Software managen, haben wir von Anfang an JIRA auf unserem Server installiert. Einer der Gründe dafür ist, dass JIRA eben nicht nur ein Bug-Tracker ist, sondern vielmehr ein allgemeines Issue-Tracking-System, dass auch für die Projektplanung eingesetzt werden kann. So haben wir zum Beispiel angefangen, eine Feature-Sammlung für unsere Spieledatenbank zu erfassen.JIRA ist eines der vielen Entwickler-Tools der Firma Atlassian. Für Open-Source-Projekte wie Oregami stellt dieses Unternehmen seine Anwendungen unter einer speziellen Lizenz kostenlos zur Verfügung.
Keine Kommentare:
Kommentar veröffentlichen