Clean Code oder

NicoDeluxe

NicoDeluxe

Top Contributor
Hallo zusammen,
vermutlich ne saublöde Diskussion aber ich erwisch mich immer wieder, wie ich häßlichen Code produziere, mir aber denke - egal geht doch.

Folgendes super einfaches Beispiel:

So oder besser beide Icons in einer separaten Methode erstellen und zurückgeben lassen? Oder sagt ihr euch auch immer mal "egal" der Aufwand ist es jetzt nicht wert.

Macht Ihr Leerzeilen rein wo sinnvoll oder ohne? Leerzeilen machen es find ich unübersichtlicher.

1620470311392.png


1620470694982.png
 
Zuletzt bearbeitet:
J

Joreyk

Bekanntes Mitglied
versuch mal den MVC bzw ein anderes Model umzusetzen dann wirds automatisch schicker ; und Styling gehört in die CSS datei soweit wie möglich
 
kneitzel

kneitzel

Top Contributor
Also generell: So wie ich den Code am leserlichsten finde, so schreibe ich diesen. Das betrifft auch Leerzeilen.

Aber wenn Du eine Methode mit Leerzeilen in mehrere Blöcke teilst, dann scheint es so zu sein, dass da verschiedene Dinge gemacht werden, die sich unterscheiden. Da wäre dann die Frage, ob sich da nicht einfach eine Aufteilung in mehrere Methoden lohnen könnte.
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
So oder besser beide Icons in einer separaten Methode erstellen und zurückgeben lassen?

In den meisten Fällen: eine extra Methode; und in diesem Fall ganz besonders: in der Variante ohne Methode gibts einen Unterschied zwischen beiden Buttons, vermutlich bedingt durch Copy-Paste ;)

Macht Ihr Leerzeilen rein wo sinnvoll oder ohne? Leerzeilen machen es find ich unübersichtlicher.
Ich nutze ziemlich exzessiv Leerzeichen, deinen Code fänd ich in beiden deinen Codes "zu dicht". In der buttonWithIcon hätte ich eher noch so 2, 3 Leerzeichen untergebracht – und in Folge davon wird's dann oft auf mehrere Methoden aufgeteilt. Die meisten Leerzeilen gibts daher auch auf Klassen-Ebene, da ist generell zwischen allen Elementen ein Leerzeichen und zwischen "Gruppen" zwei Leerzeichen.




versuch mal den MVC bzw ein anderes Model umzusetzen dann wirds automatisch schicker ; und Styling gehört in die CSS datei soweit wie möglich
Hast du grad MVC kennen gelernt, dass du das in jedem Post unterbringen musst, egal ob's passt? ;)

In dem Code sieht man nur den "V"-Part aus MVC, da gibts nichts, was man noch ins Model umsetzen könnte, und CSS bietet sich auch nur in den wenigsten Fällen an.
 
L

LimDul

Top Contributor
Ich würde auch den Code in eine Methode auslagern, weil mich springt da direkt doppelter Code (gleiche Style, gleiche Größen etc.). Der Aufwand das in eine Methode zu extrahieren ist minimal, dafür hab ich es einheitlich und lesbar. Insbesondere, wenn man mal in Zukunft sagt "Oh ich brauche noch einen weiteren Style oder oh, die Größe muss doch 24x24px sein" - dann muss man genau eine Stelle ändern und nicht zwei oder noch mehr.

Bzgl. Leerzeieln. Ich bin ein Freund davon, ich finde sie machen den Code übersichtlicher, weil sie in zusammenhängende Blöcke gruppieren. Wo ich sie in der Regel immer verwende:

Unit-Tests.
Die sehe bei mir meist so aus:
Java:
@Test
public void testMethod_Beschreibung() {
baueDatenZusammen;

fuehreZuTestendenCodeAus();

diverseAsserts();
}
Das heißt, ich hab die Teilung: Testdatenaufbau - Leerzeile - zu testender Code - Leerzeile - Asserts.

Analog finde ich es gut, wenn man längere Stream-Verkettungen hat, die mit einer Leerzeile vom Rest abzusetzen, damit man sieht, wo die endet. Für mich sind Leerzeilen jeweils Trenner zwischen Schritten eines Algorithmus.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Fischkralle Beim Clean Coden an den Schnittstellen geschnitten. Allgemeine Java-Themen 10
K NetBeans Ordner bei 'Clean&Build' automatisch in dist Verzeichnis kopieren Allgemeine Java-Themen 0
N Regulären Ausdruck in normalen Java-Code umwandeln Allgemeine Java-Themen 12
Noahscript Aus einem byte Array Steuerungszeichen und Code bekommen und ersetzen Allgemeine Java-Themen 3
J Simple Date Format Alternativen bitte um Code Allgemeine Java-Themen 14
AGW in Java-Code plötzlich ein paar Wörter in Rot Allgemeine Java-Themen 2
L Best Practice Auslagerung von Code = Performance Optimierung? Allgemeine Java-Themen 4
H Precompilierten code ansehen Allgemeine Java-Themen 3
R Wo müsste ich im Code eine Änderung vornehmen? Allgemeine Java-Themen 6
L Ausgabe von in Echtzeit ausgeführten Code Allgemeine Java-Themen 9
Drachenbauer Wie kann ich die menge an code reduzieren? Allgemeine Java-Themen 28
Thallius Warum ist dieser Code OS abhängig? Allgemeine Java-Themen 10
S Code Erklärung Allgemeine Java-Themen 21
B Pausem im Code Allgemeine Java-Themen 2
T Java-Quiz Code Fehler Allgemeine Java-Themen 10
L Eclipse Java Code ausführen Allgemeine Java-Themen 18
F Java Code ausführen direkt nach Anmelden in Windows Allgemeine Java-Themen 2
F Code in Klassen bringen Allgemeine Java-Themen 4
S Gibt es eigentlich Java Source Code Interpreter..? Allgemeine Java-Themen 13
J JUnit - Auslassen von Code Allgemeine Java-Themen 25
F Klassen Spaghetti Code Vermeidung Allgemeine Java-Themen 16
C code oder Bibliotheken für 2-Center Problem Allgemeine Java-Themen 4
J Code Page characters darstellen Allgemeine Java-Themen 12
J wie sollte man sinnvoll seinen Code aufteilen Allgemeine Java-Themen 6
I Python Code in Java Code Allgemeine Java-Themen 9
M Java (GUI) Code verdoppeln oder anzeige mehrmals anzeigen? Allgemeine Java-Themen 8
N Wie öffne ich einen runtergeladadenen Code in IntelliJ Allgemeine Java-Themen 3
R Fehler im Code Allgemeine Java-Themen 1
R Fehler im Code Allgemeine Java-Themen 3
O Standard library nativer C code Allgemeine Java-Themen 1
R Wo ist mein Fehler in diesem Code Allgemeine Java-Themen 7
S Java Editor Bekomme bei der Code-Vervollständigung die Zeichen ​ Allgemeine Java-Themen 3
N Morse Code decoder Allgemeine Java-Themen 9
O Erste Schritte Benzinverbrauch Code Hilfe Allgemeine Java-Themen 3
S Eclipse exit code 805306369 Allgemeine Java-Themen 1
Pataraca Vererbung Code einbinden Allgemeine Java-Themen 3
Developer_X Website HTML Code von HTTPS URL laden Allgemeine Java-Themen 0
S Wie kann ich eine kleine Stelle in meinem Code mit multiplen Threads abarbeiten..? Allgemeine Java-Themen 20
S Code 'innerhalb' des synchronen Bereichs einer BlockingQueue ausfuehren..? Allgemeine Java-Themen 7
F Verständlichkeitsproblem bei Java Code?! Allgemeine Java-Themen 2
G Eclipse Eclipse: Unreachable code Allgemeine Java-Themen 16
P Java Android Code in IOS compilieren? Allgemeine Java-Themen 9
C Code vereinfachen Allgemeine Java-Themen 2
T Hilfe bei Code Allgemeine Java-Themen 3
R Java-Code für folgene Aufgabe? Allgemeine Java-Themen 8
Prafy Best Practice Code Refaktorisierung Allgemeine Java-Themen 7
WetWer Was bedeutet/macht ein Exit-Code Allgemeine Java-Themen 1
D Code für bereitgestellte Methoden Allgemeine Java-Themen 1
perlenfischer1984 HTML Code decodieren Allgemeine Java-Themen 2
C ASCII-Code in Java Allgemeine Java-Themen 1
J Java-Code in DLL packen Allgemeine Java-Themen 5
J LWJGL 3 Error Code 1282 Allgemeine Java-Themen 4
0 Code startet nicht (Keine Warnung/Fehlermeldung) Allgemeine Java-Themen 4
A Frage zu meinem Code Allgemeine Java-Themen 2
B Code generierung Velocity Templates Telosys Allgemeine Java-Themen 1
E Fehlermeldung vor dem Programm code Allgemeine Java-Themen 1
B JAVA - mehrere Clienten gleichzeitig starten. Nicht bei Code! Allgemeine Java-Themen 3
Fischkralle Ausführen von fremden Code Allgemeine Java-Themen 14
wolfgang63 Code snipped Software Allgemeine Java-Themen 1
L Eclipse Editieren des Code templates für Override methods Allgemeine Java-Themen 2
J Java code "plugin" fähig machen Allgemeine Java-Themen 4
alderwaran .jar Code Signing, User-Keystore und Fragen dazu Allgemeine Java-Themen 0
Thallius Wie verstecke ich meinen private Key am besten im Code? Allgemeine Java-Themen 10
A Thread: Code paralell ausführen in mehreren Instanzen Allgemeine Java-Themen 1
B NullPointerException - Aber kein Fehler im Code Allgemeine Java-Themen 4
N HTTP response code: 403 Allgemeine Java-Themen 3
D Code bitte mit 19 stelligen Zahlen kompatibel machen Allgemeine Java-Themen 5
D Java Compiler code referencen Allgemeine Java-Themen 0
B Fehler im Java-Code Allgemeine Java-Themen 4
A PHP-Code zu Java-Code Allgemeine Java-Themen 5
M Code läuft unter windows aber nicht unter Linux Allgemeine Java-Themen 6
X Was macht folgender Code!? Allgemeine Java-Themen 6
K Code zu einem Projekt entschluesseln Allgemeine Java-Themen 15
H Java Leistungssteigerung durch Code Anpassung Allgemeine Java-Themen 5
Fab1 Best Practice Vorgehensweise bestehenden Code/Programm verschönern Allgemeine Java-Themen 4
M Code optimieren Allgemeine Java-Themen 7
A jEditorPane Html Datei öffnen (code) Allgemeine Java-Themen 3
S EAN-Code Tabelle für CD's Allgemeine Java-Themen 2
T Code durch eigenes Frame pausieren (ähnlich JDialog) Allgemeine Java-Themen 4
J Erzeugung von Java-Code Allgemeine Java-Themen 2
A Source code analyze Allgemeine Java-Themen 8
N VB Code in Java verwenden Allgemeine Java-Themen 5
P Aktuellen HTML Code auslesen (von JS manipuliert) Allgemeine Java-Themen 3
M HTML-Code von Webseite über Browser oder Console auslesen?? Allgemeine Java-Themen 5
S QR-Code generator Allgemeine Java-Themen 2
M tree-based diff Algorithmus (Code-Vergleiche) Allgemeine Java-Themen 3
DaniSahne96 Threads Code funktioniert nicht wie er sollte Allgemeine Java-Themen 9
S Robuste Methode um Text von HTML code zu extrahieren..? Allgemeine Java-Themen 6
J Code ausführen bei JVM-Zerstörung Allgemeine Java-Themen 15
P HTTP Falscher Code per url.openStream() Allgemeine Java-Themen 4
P Code in Methode auslagern möglich? Allgemeine Java-Themen 9
C Gutes Code Design (3 Schichten Modell) Allgemeine Java-Themen 19
L php code in java ausführbar? Allgemeine Java-Themen 6
S Access Restrictions in Eclipse auf Code beschraenken (und nicht fuer Comments) Allgemeine Java-Themen 2
D Fehler im Java Code Allgemeine Java-Themen 22
Gossi Java Code in einer GUI eingeben und ausführen? Allgemeine Java-Themen 2
D Code später ausführen Allgemeine Java-Themen 8
J Code aufräumen Allgemeine Java-Themen 9
P JAVA Code in Dokumentation erklären Allgemeine Java-Themen 2
B Verwendung von Packages im Java Code Allgemeine Java-Themen 10

Ähnliche Java Themen


Oben