Wie der Titel schon sagt, sind wir wieder in Java.
Die Welt, die Sie sehen, ist völlig anders. Sie wissen nur, wann Sie stärker werden. Hat Java so funktioniert? ?? Nett.
Denken Sie bei der Einführung einer neuen Sprache für die Entwicklung von Webanwendungen an die Infrastruktur
Der Mechanismus bedeutet ↑.
Unterschied zwischen jungen und jetzt
Die Situation zum Zeitpunkt meiner Kindheit
- Java
--Lernen Sie die Programmierregeln des Projekts
- tomcat
- Verwendung der IDE
- Verwendung des Verbindungstools mit DB
- Wie man Git benutzt
- SQL
--Operationen wie Release
- Fehlerbehebung
- Inhouse-Terminologie
――Wie man mit Senioren umgeht
- So interagieren Sie mit Chat-Tools
- Gesamtwissen über HTTP und das Web
- Cross-Site-Scripting und sicherheitsrelevante Geschichten
- HTML
- JavaScript
- Websocket
--Authentifizierungsmethode
- LinuxOS
- Kenntnis der Obergrenze aufgrund der Spezifikationen des Server-Rechners
Es gab viele Dinge, an die ich mich erinnern musste, und ich hatte keine andere Wahl, als Controller und Dienste zu schreiben, ohne sie tief zu verstehen.
(Wenn Sie jetzt darüber nachdenken, wenn ein Veteran Sie in die Paarprogrammierung zieht, können Sie die Autobahn-Theorie verwenden, und die Wachstumsrate wird unterschiedlich sein.)
Vorerst habe ich mein Bestes gegeben, zum Beispiel technische Bücher in der Mittagspause gelesen.
Wenn ich jetzt darüber nachdenke, denke ich jedoch, dass das Niveau ziemlich niedrig war.
(Weil es ein Jungvogel ist, denke ich, dass es natürlich ist ...)
Derzeit ist die Beschreibung allgemein bekannt.
In diesem Zustand schreibe ich die guten und schlechten Punkte von Java, die ich wieder gesehen habe, einschließlich des Vergleichs mit Node.js.
Umgebung
- Java8
- Nginx
- Serie Tomometer 7
--Spring 4 Serie
- MongoDB 3.0-Serie
- MongoDB 3.6 Serie
- Maria DB 5.5 Serie
- RabbitMQ
- Redis3.0
- Redis4.0
- Die Hauptinfrastruktur ist ein Bare-Metal-Server in DC
- Websocket(WSS)
Guter Punkt
- Im Gegensatz zu Node.js ist es nicht asynchron ereignisgesteuert, sodass der Code leicht zu befolgen ist.
- Da es einen Typ gibt, besteht das Gefühl der Sicherheit, dass er relativ gut funktioniert, solange er kompiliert wird
――Java wird verwendet und ist tot, daher besteht ein Gefühl der Sicherheit.
――Wenn Sie dies tun möchten, können Sie eine asynchrone Verarbeitung schreiben
――Wenn Sie googeln, werden verschiedene Informationen angezeigt (die Menge ist zu hoch und es ist auch laut).
- Da MongoDB schemenlos ist, ist es sehr gut, das Schema mithilfe von Typen auf der Java-Seite definieren zu können.
schlechter Platz
- Das Kompilieren dauert einige Zeit
――Ich denke, es gibt eine Problemumgehung, aber im Moment des Projekts dauert es 2 Minuten und 30 Sekunden.
- Ohne IntelliJ IDEA (Integrated Development Environment) können Sie nicht entwickeln (ich möchte etwas dagegen tun ...)
- Im Fall von Node.js waren Vim und Visual Studio Code kostenlos
--Test (JUnit) ist schwieriger zu schreiben als Node.js Mocha
――Ich möchte explizit Vor- und Nachbearbeitung schreiben, habe aber keine andere Wahl, als sie im Test in einem Durcheinander zu schreiben.
- Spring macht die Implementierung schwierig (eine Situation, in der die Stapelverarbeitung nicht richtig geschrieben werden kann)
- Wenn Spring nur DI will, gibt es auch Google Juice
- SparkJava Ich denke, es ist einfach
-Ist es wegen des synchronen Typs? Ich weiß es nicht, aber es gibt überhaupt keine Aufführung
――In dieser Hinsicht ist es sehr wahrscheinlich, dass das aktuelle Projekt nicht ordnungsgemäß umgesetzt wird.
--Erstellen Sie eine Klasse auch für kurzlebige Objekte
--List und Map eignen sich für VO-Klassen, die nur in einem Anforderungspfad verwendet werden.
--Node.js scheint nur List und Map zu verwenden und war noch betriebsbereit.
――Wenn Sie eine testgetriebene Entwicklung durchführen können, bei der die Codierungsgeschwindigkeit im Vordergrund steht, können Sie sich für List und Map entscheiden.
- Getter, Setter Brauchst du es nicht?
- Vielleicht ist es Mavens Schuld, aber die Verzeichnisstruktur ist umständlich
―― Aufgrund von Anmerkungen fällt es Ihnen möglicherweise schwer, nicht zu verstehen, wie es funktioniert.
- Funktioniert es vor der Methode? Funktioniert es nach der Methode? Ich weiß es nicht, wenn ich die Implementierung sehe
――Ich denke nicht, dass Anmerkungen gut sind, weil Sie den Mechanismus nicht auf einen Blick verstehen können.
- Lombok Ich finde es gut
Zusammenfassung
Ich denke, dass das, was ich an einem schlechten Punkt geschrieben habe, je nach Implementierung überhaupt geändert werden kann.
Ich finde, dass Javas traditionelle Praktiken nur nervig sind.
Wäre es nicht interessant, eine Node.js-ähnliche Java-Entwicklung auszuprobieren? Ich denke.
(Ich glaube übrigens, es gab eine Person, die bei CyberAgent eine Node.js-ähnliche Entwicklung mit Play Framework durchgeführt hat.)
Um frühzeitig zurückzukehren, muss ich es schnell implementieren, damit ich eine Umgebung schaffen kann, in der dies möglich ist.