[JAVA] Für Sie, die von nun an der Leiter des Entwicklungsteams werden - Mindeststandardisierung -

Einführung

Basierend auf dem, was ich bisher gelehrt und gelernt habe Ich habe versucht zusammenzufassen, was ich mit der Standardisierung des Teams zufrieden war (oder hätte tun sollen).

Ich habe einige allgemeine Regeln darüber geschrieben, welche Regeln benötigt werden, um das Team zusammenzustellen. Ich hoffe, dass diejenigen, die Führer und Mitglieder sein werden, denken, dass dies genutzt werden kann. Wenn Sie so etwas wie "Ich habe so etwas gemacht" haben, würde ich gerne von Ihnen hören.

Detailliertes Design

Konstruktionsdokumente sind wahrscheinlich der Außenwelt ausgesetzt. Bemühen Sie sich daher, Unschärfen in Bezug auf das Erscheinungsbild zu vermeiden. Angenommen, Sie haben eine Vorlage erstellt und diese basierend darauf erstellt. Wenn Sie der Meinung sind, dass die Vorlage nicht zu Ihrem Projekt passt, sollten Sie sie auch regelmäßig überprüfen.

Die Einzelheiten sind wie folgt.

Vereinheitlichung des Beschreibungsinhalts

Wenn der Inhalt nicht zwischen den Designdokumenten vereinheitlicht wird, hängt dies direkt mit der Schwierigkeit des Lesens zusammen.

Wenn die Regeln jedoch tendenziell festgelegt sind, gibt es eine Verarbeitung, die im aktuellen Entwurfsdokument nicht ausgedrückt werden kann. Ein gewisses Maß an Vielseitigkeit ist erforderlich.

Als Lösung ist es effektiv, die sich wiederholende Verarbeitung zu formatieren. Formatieren Sie im Allgemeinen die folgenden schnittstellenbezogenen Teile und Prozesse. ・ DB-Zugriff ・ Lesen / Schreiben von Dateien ・ API-Aufruf ·Schleife · Ast

Darüber hinaus ist das Folgende eine Liste von Inhalten, die vereinheitlicht werden sollten, was oft vergessen wird. Es ist in Ordnung, aber ich habe das Gefühl, dass die Keime für Konflikte innerhalb des Teams von diesem Ort kommen. .. ..

Inhalt Beispiel
Beschreibung der gleichen Bedeutung ・ Registrieren Sie sich in der DB
・ 〇〇 auf den Tisch legen
・ Registrieren 〇〇 in der Tabelle
⇒ Ich denke, der Boden ist der beste, wenn es darum geht, so konkret wie möglich und näher am Designdokument zu schreiben.
Allzweckwörter DAO- und Util-Klassenmethoden"API"Einheitlich angerufen
⇒ Da die Möglichkeit einer Erkennungsdiskrepanz besteht, lassen Sie uns vereinheitlichen, wenn ein Problem vorliegt.
Klassenname / Methodenname Gemischte japanische und englische Namen
ex)
Japanischer Name:Registrierung von Mitgliedsinformationen
englischer Name:registerCustomerInfo
⇒ Wenn dies nicht einheitlich ist, ist kein Refactoring möglich. .. ..

Komponentenaufteilungsrichtlinie

Berücksichtigen Sie die Merkmale der verwendeten Sprache und denken Sie über die Komponententeilung nach (in welcher Einheit die Klasse erstellt wird). Beispielsweise basiert Java auf der Objektorientierung.

Die Grundidee der Objektorientierung ist Kapselung, Vererbung und Polymorphismus. Wenn wir es mit einer Sache (Klasse) in der realen Welt vergleichen, werden wir uns vorstellen, welche Art von Informationen es hat (Eigenschaft) und welche Art von Verhalten (Methode) es tun wird, und es teilen.

Die Programme, die Sie tatsächlich erstellen, sind jedoch alles, was nicht mit realen Objekten verglichen werden kann. Wenn zum Beispiel der größte Teil der Verarbeitung darin besteht, die empfangenen Daten zu verarbeiten und in der Datenbank zu registrieren, werden nur Variationen wie die externe Zusammenarbeit hinzugefügt. Ich glaube, ich bin verzweifelt: "Ist das nicht wirklich der Fall?"

Konzentrieren wir uns daher einmal auf die Daten. Die Daten werden in einer Tabelle gespeichert und bei Bedarf abgerufen. Die Tabelle ist normalisiert und hat ein logisches und physisches Design.

** Es ist am besten, eine Klasse um diese logisch unterteilte Tabelle zu erstellen. ** **.

Kurz gesagt, stellen Sie sich das als ein Fenster (Ding) vor, das sich auf diese Daten spezialisiert hat. Dieses Beispiel gilt nicht in allen Fällen. Ich denke, dass eine korrekte Funktionsplatzierung eine aktive Methodenplatzierung ermöglicht.

Einzug

Der Einzug ist das Grundgerüst der Spezifikation, aber ich denke, Sie können es bis zu einem gewissen Grad mögen.

Wenn es jedoch tiefer als das folgende Einrückungsbeispiel ist, wird empfohlen, den Prozess aufgrund der Lesbarkeit (oder anderer Probleme) zu überprüfen. Durch die Festlegung, dass Zweige und Schleifen abgesenkt werden sollen. Es wird mit dem Programm übereinstimmen.

Beispiel einrücken


1.
___1).
______(1).
_________➀.
____________a.
_______________a).
__________________(a).

(Thema) Wenn ein neuer Mitarbeiter eintrifft, weisen Sie ihn an, den Vorgang anhand der Hauptartikelnummer zu schreiben. Durch Überprüfen jeder Artikelnummer können Sie die Titel in derselben Artikelnummer wie die Überarbeitung vereinheitlichen.

TODO Lassen Sie uns entscheiden, wo das TODO verlassen werden soll. Wenn dies nicht zuerst entschieden wird, können Mitglieder vergessen, TODO zu verlassen. Wenn es möglich ist, den Inhalt von TODO zusammenzufassen, ist es auch eine gute Idee, den Code für TODO zu nummerieren und zu verwalten. Dies hat den Vorteil, dass TODO aus derselben Ursache mechanisch angefahren werden kann.

Implementierung

** Entschlüsseln Sie den Code, den ich jahrzehntelang geschrieben habe ... **

Ich erinnere mich definitiv nicht an dieses w Wenn Sie sich nicht erinnern können, erstellen wir einen Mechanismus, an den Sie sich nicht erinnern müssen!

Lesen Sie lesbare Codes und Entwurfsmuster. Erstellen Sie Regeln, die intelligente Implementierungen für jede Sprache erzwingen (gut lesbar, resistent gegen Änderungen, und das Verhalten jeder Funktion kann abgeleitet werden).

Das Folgende ist ein typisches Beispiel.

Namensregeln

Ich erinnere mich, dass ich darauf hingewiesen wurde, bis ich einen Tintenfisch hörte, der sagte: "Der Name ist wichtig." .. .. Machen wir aus den Grundinhalten Regeln!

** Anstatt auseinander zu fallen, ohne zu entscheiden, können Sie mit Refactoring auskommen, wenn Sie es vereinheitlichen! ** **.

1. Verben und Nomenklatur

Wenn Sie Methodennamen, Klassennamen und Variablennamen angeben, wird der Inhalt, den Sie wahrscheinlich verwenden, als Konvention definiert.

ex) Registrieren: registrieren Update: Update Registrierung: einfügen

2. Zeichenverbindung

Keine Bindestriche oder nicht.

ex) Konstante: Schlangenetui (und alle Großbuchstaben) ⇒ MAX_RANGE Variablenname / Methodenname / Klassenname: Kamelfall ⇒ getUserInfo URL / Dateiname: Wirbelsäulenfall ⇒ user-info

3. Ist der Hebon-Stil Englisch?

Ich denke, dass Japaner die Hebon-Methode anwenden können, um Tippfehler und Missbrauch zu vermeiden. In beiden Fällen ist das in Ordnung, aber es ist peinlich, einen Tippfehler im Hebon-Stil zu finden.

Es gibt WEB-Tools, also nutzen wir sie effektiv.

DRY-Prinzip (OAOO-Prinzip)

** Einmal geschrieben, schreibe nicht mehr (mach es zu einer Funktion!) ** Vielleicht ist das der Inhalt.

Entwicklungseditoren wie Eclipse können funktionieren (Refactor). Möglicherweise möchten Sie die Funktionalität des von Ihnen verwendeten Tools in gewissem Umfang untersuchen.

Funktionalisierung / Konstantisierung

Bitten Sie sie zu prüfen, ob der Prozess methodenspezifisch oder klassenspezifisch (oder anwendungsspezifisch) ist. Wenn Sie zuerst die Util-Klasse und die konstante Klasse erstellen, können Sie sich dem Durchhang nähern.

Selbst wenn es sich um eine für diesen Prozess eindeutige Funktion handelt, können Sie sie anweisen, auf der Ebene der großen / mittleren Artikelnummer des detaillierten Entwurfs einzurücken. (Das Überprüfen des Spaghetti-Codes ist sehr schwierig.)

Kommentar

Ich möchte die Einrückung der großen und mittleren Elementebene des detaillierten Designs vollständig einfügen.

Wichtig ist jedoch die Relevanz für das Detaildesign. Weisen Sie während der Überprüfung auf bedeutungslose Kommentare hin.

Prüfung

Die Phase ist so wichtig, dass es auch zuerst den Worttest gibt. Wenn der Standpunkt schwankt, wird es auch schwierig, die Vollständigkeit zu überprüfen.

im Grunde genommen ** Weiße Box für den Codeteil, den ich geschrieben habe ** ** Blackbox zum Aufrufen von Komponenten ** Wird die Grundlage für das Denken nach der Phase wie UT und IT sein.

Wenn Sie über die freie Kapazität verfügen, erstellen Sie Testdaten für jede Tabelle, die alle Datenvariationen abdeckt. Es ist auch ein wirksames Mittel, die Daten von einem Geschäftsexperten erstellen zu lassen.

Rezension

Selbstüberprüfung

Lassen Sie uns ein Selbstprüfungsblatt erstellen. Wenn Sie die Regeln, die Sie diesmal erstellt haben, auf das Scheckblatt setzen, sparen Sie viel Nacharbeit.

Gegenprobe

** Der Inhalt der Überprüfungsangabe ist nahezu identisch. ** **. Auch die Fehler, die jemand gemacht hat, werden von jemand anderem gemacht. Stellen Sie sicher, dass Sie das Ganze teilen und einige Maßnahmen ergreifen (Werkzeuge usw.).

Selbst wenn die Angabe nur in einem bestimmten Prozess vorhanden ist und die Nacharbeit groß ist, können Sie sie auf das Selbstprüfblatt schreiben.

Andere

Bevor Sie mit der eigentlichen Arbeit beginnen, müssen Sie Aufgaben loswerden, die Sie vergessen oder einfach verschoben haben.

Fassen Sie die erforderlichen Materialien zusammen

** Bei der Suche nach dem Ort habe ich nicht verstanden, warum ich das Material haben wollte. .. .. ** **.

Ist das nicht passiert? (Ich war W) Erstellen Sie eine Sammlung von Links zu Ihrer Framework- und Bibliotheksdokumentation.

Es ist auch eine gute Idee, den Mindestinhalt, den Sie für Neulinge lesen sollten, farblich zu kennzeichnen. (Ich bin sicher, dass es später nützlich sein wird.)

Erstellen Sie einen Ordner

Lassen Sie uns in MECE und Zeitreihen identifizieren und einen Ordner erstellen, der in Zukunft im Voraus verwendet wird. (Es ist schwer später zu machen.)

.
├─00_Verbreitet
│  ├─
│  │
│  └─
├─01_Detailliertes Design
├─02_Implementierung
├─03_UT
└─04_IT

Erstellen Sie eine Umgebung für den Informationsaustausch

** Ich denke, es ist das Wichtigste, was ich bisher vorgestellt habe. ** **.

Wenn Sie ein schönes Werkzeug haben, verwenden Sie es gegen eine Gebühr! Erstellen Sie zur Erinnerung nicht mehrere Tools für den Informationsaustausch. Stellen Sie sich einen Mechanismus vor, der eine zentrale Verwaltung unabhängig von der Informationsquelle per E-Mail ermöglicht.

Wir empfehlen außerdem, dass Sie Ihren freigegebenen Inhalten einen beschreibenden Titel geben.

Zusammenfassung

Damit die Mitglieder ihr volles Potenzial entfalten können, müssen sie klare Ziele zeigen und wie viel Diskretion sie tun sollten. Daher ist das Erstellen von Regeln zur Bestimmung des Ermessensspielraums einer Aufgabe ein sehr wichtiger Prozess.

Auch die Fehler der Mitglieder sind in erster Linie auf den Mechanismus zurückzuführen. Der Führer, der eine solche Regel nicht aufgestellt hat, ist verantwortlich.

Deshalb sind die Regeln wahnsinnig wichtig.

Es klingt sehr schwer zu formulieren, aber die Idee ist einfach. Stellen Sie sicher, dass die Regeln Ihnen Folgendes geben: ** · Sei einfach ** ** ・ Quantitativ sein **

Wenn Sie dies berücksichtigen, werden Sie nicht weit von der Straße entfernt sein!

Recommended Posts

Für Sie, die von nun an der Leiter des Entwicklungsteams werden - Mindeststandardisierung -
Berechnen Sie das Alter ab dem Geburtstag mit 4 Zeilen Swift ~ Wie alt sind Sie jetzt? Für dich, der ~ wurde
Wenn Sie die Java-Entwicklungsumgebung von Eclipse aus ändern möchten
Für Sie, die beklagen, dass die Konvertierung von JODConverter + LibreOffice langsam ist
Von der Einführung des Geräts bis zur Erstellung der Benutzertabelle
[Java] Plattformen zur Auswahl für die Java-Entwicklung ab sofort (2020)
Ich werde den Unterschied zwischen der Entwicklung von Android-Anwendungen und der Entwicklung von iOS-Anwendungen aus der Sicht von iOS-Ingenieuren erläutern