Magic Literal: Unterschied zwischen den Versionen

Aus Programmieren-Wiki
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
{{Weiterlesen
|Themen=Abstrakt, Visual Studio Code
}}
{{Baustelle}}
{{Baustelle}}
{{Bewertungsrichtlinie
{{Bewertungsrichtlinie
Zeile 11: Zeile 14:
|kategorie=Programmierstil
|kategorie=Programmierstil
}}
}}
{{Weiterlesen}}

Version vom 23. Januar 2024, 13:50 Uhr

Wenn du diese Seite interessant fandest, findest du hier noch mehr Seite(n) dazu:
AbstraktVisual Studio Code

🚧 Diese Seite befindet sich in Bearbeitung 🚧
🤓 Diese Seite ist eine Bewertungsrichtlinie, die ab Blatt 2 annotiert und ab Blatt 3 abgezogen wird. 🤓

Beschreibung

Wir reden von "Magic Numbers", wenn im Quellcode zahlen rumfliegen. Was heißt das? Konkret bedeutet das, dass eine Variable mit einem Wert deklariert wurde, der sich niemals ändern kann und wird - eine konkrete Zahl. Würde man jetzt etwas im Quellcode ändern wollen, was voraussetzt, dass wir überall im Program zum Beispiel nicht mehr durch 2, sondern durch 3 teilen sollen, müsste man das überall händisch ändern. Das kostet Zeit, Nerven und man stelle sich vor man findet nicht alle...Besser wäre also, Zahlen als Konstante/Variable zu deklarieren. Wenn wir diese Konstante/Variable jetzt ändern wie in unserem Beispiel, müssten wir nur einmal eine 2 durch eine 3 ersetzen, sodass das Program genau das macht, was wir wollen. Es ist also schneller und vor allem viel weniger Arbeit.Das gilt auch für Zeichenketten.Technisch gesehen sind "Magic Numbers" nicht auf Zahlen beschränkt. Auch Zeichenketten, die die o.g. Charakteristik erfüllen, sind "Magic Numbers" (oder dann eben "Magic Strings").


Negativbeispiel

final String password = "Test";
if (password.length() < 8) {    
System.err.println("Password too short, please choose a longer password!");
}

Positivbeispiel

final String password = "Test";final int minimalPasswordLength = 8;if (password.length() < minimalPasswordLength) {    System.err.println(PASSWORD_ERROR_MESSAGE);}