Java-Entwickler suchen oft nach Möglichkeiten, Java-Code schneller zu schreiben und die Programmierung zu vereinfachen. Derzeit kommen immer effizientere Programmiertools auf den Markt. Hier ist also eine Liste der Tools, die die meisten Entwickler verwendet haben, derzeit verwenden oder definitiv in Zukunft verwenden werden. Diese Liste umfasst integrierte Entwicklungsumgebungen, Integrationstools, Test- und Qualitätstools usw.
1. Integrierte Entwicklungsumgebung
Eclipse ist die bekannteste und am weitesten verbreitete integrierte Java-Entwicklungsumgebung (IDE). , was es Entwicklern ermöglicht, Sprachunterstützung und andere Funktionen in jedem Standardpaket zu kombinieren, und der Eclipse Marketplace verfügt über viele benutzerdefinierte und Erweiterungs-Plug-Ins.
IntelliJ ist bei Entwicklern „begehrt“ und sogar beliebter als Eclipse, mit kostenlosen und professionellen Versionen. [IntelliJ](http://www.javacodegeeks.com/tutorials/java-tutorials/core-java-tutorials/#IntelliJ IDEA) bietet Framework-spezifische Codierungsunterstützung und produktivitätssteigernde Funktionen für viele Java EE-Frameworks sind Bereitstellungstools für die meisten Anwendungsserver.
NetBeans gehört ebenfalls zur IDE-Kategorie und ermöglicht Entwicklern die schnelle und einfache Entwicklung von Desktop-Anwendungen, mobilen Anwendungen und Webanwendungen. NetBeans ist kostenlos und Open Source und verfügt über eine globale Community von Benutzern und Entwicklern.
JDeveloper ist eine kostenlose integrierte Entwicklungsumgebung von Oracle. Sie bietet eine vollständige End-to-End-Entwicklung für Oracle Fusion-Middleware und Fusion-Anwendungsprodukte und unterstützt den gesamten Entwicklungslebenszyklus . .
2. Testen
JUnit ist ein Java-Sprach-Unit-Test-Framework zum Schreiben und Ausführen wiederholbarer Tests. Es stellt Behauptungen zum Testen der erwarteten Ergebnisse, Testvorrichtungen für gemeinsam genutzte gemeinsame Testdaten und Testläufer zum Ausführen von Tests bereit. Sie können sich hier das JUnit-Tutorial ansehen.
TestNG wurde von JUnit inspiriert entwickelt, verfügt aber auch über einige neue Funktionen, sodass TestNG relativ gesehen leistungsfähiger und einfacher zu verwenden ist, z. B. Anmerkungen (Annotationen), flexible Testkonfigurationen, datengesteuerte Tests und Parameterunterstützung sowie ein leistungsstarkes Ausführungsmodell. Es deckt Unit-Tests, Funktions-, End-to-End- und Integrationstests ab und unterstützt verschiedene Tools und Plug-Ins (Eclipse, IDEA, Maven usw.). Spezifische Inhalte finden Sie in den Artikeln zur Verwendung von Maven Failsafe und TestNG für Unit-Tests bzw. Integrationstests.
Mockito ist ein Mocking-Framework, das Entwicklern hilft, schöne Tests mit einer prägnanten API zu schreiben. Seine Tests sind sehr gut lesbar und erzeugen eindeutige Validierungsfehler. Mit Mockito können Sie die Interaktion auch nach der Ausführung abfragen. Mocks sind transparent, sodass sich Entwickler auf das Testen ausgewählter Verhaltensweisen konzentrieren können. Weitere Informationen finden Sie in den entsprechenden Artikeln zu Mockito.
Arquillian ist eine Java- und JVM-Testplattform, die sich hauptsächlich auf Integration und Funktionstests konzentriert. Es macht Unit-Tests überflüssig und konzentriert sich auf die Interaktion von Programmcode in einer echten Echtzeitumgebung. Arquillian ist mit einem Container-Lebenszyklusmanagement und einer typischen Testkuration zum Testen ausgestattet.
3. Integration
Apache Maven ist ein sehr bekanntes Software-Projektmanagement- und Integrationstool. Basierend auf dem Konzept des Project Object Model (POM) verwaltet das Informationszentrum die Konstruktion, Berichterstattung und Dokumentation des Projekts. Maven bietet ein einheitliches Build-System, Projektinformationen und Anleitungen zu bewährten Entwicklungspraktiken und unterstützt die transparente Migration neuer Funktionen.
Gradle ist ein automatisiertes Open-Source-Build-System. Gradle kann automatisch eine Vielzahl von Softwarepaketen oder anderen Arten von Projekten erstellen, testen, veröffentlichen und bereitstellen, beispielsweise die Generierung statischer Websites. Gradle kombiniert die Leistungsfähigkeit und Flexibilität von Ant mit dem Abhängigkeitsmanagement und den Konventionen von Maven, um eine effiziente Methode zum Erstellen zu schaffen.
Apache Ant ist ein Open-Source-Apache-Projekt, das unter der Apache-Softwarelizenz veröffentlicht wird. Es besteht aus einer Vielzahl integrierter Aufgaben, die es Entwicklern ermöglichen, Java-Anwendungen zu schreiben, zusammenzustellen, zu testen und auszuführen. Es zeichnet sich durch hohe Flexibilität aus und schränkt die Codierungskonventionen oder das Verzeichnislayout von Java-Projekten nicht stark ein.
Apache Ivy ist ein beliebtes Abhängigkeitsmanagement-Tool, das sich auf Flexibilität und Einfachheit konzentriert. Es ist ein Unterprojekt des Apache Ant-Projekts und Ivy wird zum Auflösen von Projektabhängigkeiten verwendet. Externe XML-Dateien definieren Projektabhängigkeiten und listen die zum Erstellen des Projekts erforderlichen Ressourcen auf. Anschließend lädt Ivy Ressourcen aus dem Artefakt-Repository herunter, das über eine gute Flexibilität und Konfigurierbarkeit verfügt. Apache Ivy ist in Apache Apache Ant integriert, sodass die Vorteile des Abhängigkeitsmanagements von Apache Maven auch in die Apache Ant-Build-Datei integriert werden, was Entwicklern, die Apache Ant bereits verwenden und nicht auf Apache Maven migrieren möchten, Komfort bietet.
4. Anwendungsserver
Apache Tomcat ist ein Open-Source-Webserver und Servlet-Container, der von der Apache-Software entwickelt wurde Von ASF entwickelte Stiftung. Es implementiert mehrere Java EE-Spezifikationen, darunter Java Servlet, JavaServer Pages (JSP), Java EL und WebSocket, und stellt eine HTTP-Webserverumgebung bereit, die Java-Code ausführen kann. Um mehr zu erfahren, klicken Sie bitte.
WildFly, früher JBoss AS oder Jboss, ist ein von Jboss entwickelter Anwendungsserver, der jetzt von Red Hat entwickelt und gewartet wird. Es ist in Java geschrieben und implementiert die Spezifikationen der Java Platform und Enterprise Edition (Java EE). WildFly ist ein kostenloses Open-Source-Tool, das auf mehreren Plattformen läuft.
GlassFish ist ein Open-Source-Anwendungsserverprojekt, das von der Java EE-Plattform von Sun Microsystems gestartet wurde und jetzt von der Oracle Corporation gesponsert wird. Die unterstützte Version heißt Oracle GlassFish Application Server. GlassFish ist freie Software, die unter zwei Lizenzen für freie Software zugelassen ist: der Common Development and Distribution License (CDDL) und der GNU General Public License (GPL).
Oracle WebLogic Server ist ein derzeit von Oracle entwickelter Java EE-Anwendungsserver. Er wird zum Erstellen und Bereitstellen von Java EE-Unternehmensanwendungen verwendet und unterstützt reduzierte Betriebskosten, verbesserte Leistung und verbesserte Leistung Neue Funktionen wie Skalierbarkeit und Unterstützung für Oracle Application Portfolio.
5. Webanwendungstests
Apache JMeter ist ein Open-Source-Apache-Projekt, das eigentlich ein Last- basierte Funktionstests und Leistungstests von Java-Anwendungen. Es wurde ursprünglich für die Verwendung mit Webanwendungen entwickelt, wurde jedoch jetzt um andere Testfunktionen erweitert. Es kann die statische und dynamische Ressourcenleistung testen, eine oder mehrere Serverlasten simulieren, um deren Stärke zu testen, oder die Gesamtleistung unter verschiedenen Lasttypen analysieren. Weitere Details zu Jmeter finden Sie hier.
SoapUI ist eine kostenlose Open-Source-Lösung für plattformübergreifende Funktionstests. Es bietet eine grafische Benutzeroberfläche und unternehmenstaugliche Funktionen, die die Erstellung und Ausführung automatisierter Funktions-, Regressions-, Compliance- und Lasttests ermöglichen. SoapUI bietet eine vollständige Testabdeckung in einer Testumgebung und unterstützt alle Standardprotokolle und -technologien.
6. Qualitätsanalyse
SonarQube ist eine Open-Source-Plattform, die sich in der Welt des Code-Qualitätsmanagementsystems etabliert hat Ein führendes Unternehmen, das für seine kontinuierliche Überprüfung der Codequalität bekannt ist. Neben Java unterstützt es auch die meisten Sprachen und kann für die Android-Entwicklung verwendet werden. Es integriert die meisten kontinuierlichen Integrationstools. SonarQube generiert Berichte für doppelten Code, Codierungsstandards, Komponententests, Codeabdeckung, komplexen Code, potenzielle Fehler, Kommentare, Design und Architektur.
FindBugs ist ebenfalls ein Open-Source-Tool, das unter der Lesser GNU Public-Lizenz veröffentlicht wird. Es läuft auf Java-Bytecode statt auf Quellcode und kann potenzielle Fehler wie Nullzeigerverweise, unendliche rekursive Schleifen, falsche Verwendung von Java-Bibliotheken und Deadlocks identifizieren und deren Schweregrad bestimmen. Gleichzeitig kann es auch als Plug-In für Eclipse, NetBeans und IntelliJ IDEA verwendet werden. Sie können sich auf das FindBugs Eclipse-Beispiel beziehen.
PMD ist ein Quellcode-Analysator. Es erkennt häufige Programmierfehler wie nicht verwendete Variablen, leere Catch-Blöcke, unnötige Objekterstellung und mehr. Es unterstützt die meisten Sprachen, einschließlich Java, sowie CPD- und Copy-Paste-Detektoren.
Checkstyle ist ein Entwicklungstool, das Programmierern dabei helfen kann, beim Schreiben von Java-Code die Codierungsstandards einzuhalten und die Java-Codeprüfung automatisch zu starten. Es ist hochgradig konfigurierbar und kann nahezu jeden Codierungsstandard unterstützen.
7. Versionskontrolle
Apache Subversion ist ein bekanntes SVN-Tool und eine Softwareversion und Versionskontrolle System, veröffentlicht unter einer Open-Source-Lizenz. Derzeit wird es als Projekt der Apache Software Foundation entwickelt und ist Teil einer globalen Community von Entwicklern und Benutzern.
Git ist ein kostenloses und quelloffenes verteiltes Versionskontrollsystem, das die Geschwindigkeit und Effizienz großer und kleiner Transaktionen verbessern kann. Im Vergleich zu anderen Konfigurationsmanagement-Tools zeichnet sich Git durch die Bereitstellung kostengünstiger lokaler Zweigstellen, praktischer Staging-Bereiche und mehrerer Workflows aus. Jedes Git-Arbeitsverzeichnis ist ein vollständiges Versions-Repository mit vollständigem Verlauf und vollständigen Versionsverfolgungsfunktionen, unabhängigem Netzwerkzugriff oder zentralem Server. Sie können weitere Git-Artikel anzeigen.
8. Kontinuierliche Integration
Jenkins ist eine preisgekrönte Anwendung, die doppelte Arbeit überwacht, von der Einrichtung eines Softwareprojekt in einen Job umwandeln, der von cron ausgeführt wird. Seine Grundfunktion besteht darin, Softwareprojekte kontinuierlich zu erstellen und zu testen, wodurch es für Entwickler einfacher wird, Änderungen in das Projekt zu integrieren und für Benutzer, neue Builds leichter zu erhalten. Jenkins kann auch die Ausführung extern ausgeführter Aufgaben, wie etwa Cron-Jobs, überwachen, selbst wenn diese auf einem Remote-Computer ausgeführt werden.
Apache Continuum ist ein kontinuierlicher Integrationsserver auf Unternehmensebene. Zu den Funktionen gehören automatisierte Builds, Release-Management, rollenbasiertes Berechtigungsmanagement und die Integration mit anderen gängigen Build-Tools und Quellcode-Verwaltungssystemen.
Hudson ist ein in Java geschriebenes Continuous-Integration-Tool (CI), das auf einem Anwendungsserver ausgeführt wird. Es unterstützt verschiedene SCM-Tools wie Subversion, Git und kann Apache Ant- und Apache Maven-Projekte sowie beliebige Shell-Skripte und Windows-Batch-Befehle ausführen. Es überwacht die Ausführung sich wiederholender Aufgaben, z. B. das Erstellen eines Softwareprojekts oder von Cron ausgeführte Jobs.
9. Java-Anwendungsanalyse
YourKit Java Analyzer ist der Technologieführer bei der Entwicklung der innovativsten intelligenten Tools zur Analyse von Java-Anwendungen. Sie können YourKit-Lösungen sowohl für die CPU- als auch für die Speicheranalyse verwenden und große Anwendungen mit maximaler Produktivität und ohne Overhead analysieren. Gleichzeitig verfügt Java Analyzer auch über mehrere neu vorgeschlagene Analyseinnovationen, die ihm bei professionellen Java-Entwicklern in verschiedenen großen und kleinen Unternehmen wohlverdiente Popularität eingebracht haben.
JProfiler ist ein kommerziell lizenziertes Java-Profiling-Tool, das sich sehr effektiv bei der Analyse von Leistungsengpässen, Speicherlecks, CPU-Auslastung und der Lösung von Threading-Problemen eignet. Es unterstützt die Ausführung auf demselben Computer oder Führen Sie eine Analyse auf einem Remote-Computer durch. Benutzer können eine visuelle Darstellung der gesamten aktiven Bytes, Instanzen, Threads, Klassen und Garbage-Collector-Aktivitäten sehen. Es kann als eigenständige Anwendung oder als Plug-in für die Eclipse-Softwareentwicklungsumgebung verwendet werden.
10. Code-Coverage-Tool
JaCoco ist ein Open-Source-Toolkit zum Messen und Berichten der Java-Code-Coverage. Es steht unter der Eclipse Public License und ist derzeit das einzige Tool zur Bytecode-Abdeckung, das Java 8 unterstützt.
Clover ist ein kommerzielles Code-Coverage-Tool, das Indikatoren bereitstellt, die es Programmierern ermöglichen, Programmierung und Tests besser in Einklang zu bringen. Es läuft unter einer IDE oder Ihrem kontinuierlichen Integrationssystem und enthält Testoptimierungen, die das Testen beschleunigen.
11. Fehlerverfolgung
JIRA ist ein Tracking-Tool, das Teams bei der Planung und Entwicklung hervorragender Produkte unterstützt. Tausende Teams entscheiden sich für JIRA, um Probleme zu erfassen und zu organisieren, Arbeit zuzuweisen und Teamaktivitäten zu verfolgen. Es handelt sich um ein kostenpflichtiges Tool, es gibt jedoch eine 7-tägige kostenlose Testversion.
Trac ist ein vollständiges Wiki- und Issue-Tracking-System, das für Softwareentwicklungsprojekte entwickelt wurde und Web-Softwareprojekte auf einfachste Weise verwaltet. Es kann Entwicklern auch dabei helfen, hervorragende Software zu schreiben, indem es Schnittstellen zu Subversion und Git (oder anderen Versionskontrollsystemen) bereitstellt und Wikis und praktische Berichtsprogramme integriert. Mit Trac können Wikis Problembeschreibungen und Commit-Nachrichten markieren und außerdem Links und nahtlose Referenzen zwischen Fehlern, Aufgaben, Änderungen, Dateien und Seiten erstellen.
12. Dokumentgenerierungstool
Javadoc ist eine API, die von Oracle verwendet wird, um HTML-Format aus Java-Quellcode zu generieren Tool zur Dokumentenerstellung. IDE kann automatisch HTML-Code generieren. Viele Dateieditoren unterstützen Benutzer beim Generieren von Javadoc-Quellen und nutzen Javadoc-Informationen als interne Referenz für Programmierer. Javadoc bietet außerdem APIs zum Erstellen von Doclets und Taglets, sodass Sie die Struktur von Java-Anwendungen weiter analysieren können.
Dokument! Es integriert die generierte Dokumentation automatisch in Java-IDEs und kann auch Dokumentationsseiten für Bibliotheken, Namespaces, Klassen, Schnittstellen, Konstruktoren, Methoden, Eigenschaften und Felder generieren.
Das Obige ist eine Sammlung effizienter Java-Programmiertools. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!