Wie lange hast du programmiert, bis du in deinem Code Schönheit und Mächtigkeit zu sehen begonnen hast?
8 Stimmen
5 Antworten
Sauberer Code bzw. saubere Architektur macht deinen Code lesbarer und wartbarer.
In diesem Zuge darf auch gerne auf Kommentare verzichtet werden - es sei denn, diese Kommentare dienen einem rechtlichen Zweck. Wenn jemand behauptet, er schreibe einen guten Code und nutzt Kommentare, dann ist der Code nicht gut.
Was würde dir besser gefallen?
import re
class PasswordValidator:
def __init__(self, password):
self.password = password
def __validate_password(self):
pattern = r"^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$"
result = re.match(pattern, self.password)
return result.group()
def validate(self):
try:
self.__validate_password()
print("Password is valid!")
except AttributeError:
print("Password validation failed.")
o_validator = PasswordValidator("aTest1337!")
o_validator.validate()
oder
class PasswordValidator:
def __init__(self, password):
self.password = password
def __validate_password_length(self):
...
def __validate_upper_case(self):
...
def __validate_lower_case(self):
...
def __validate_digits(self):
...
def __validate_special_chars(self):
...
def validate(self):
try:
self.__validate_password_length(self):
self.__validate_upper_case(self):
self.__validate_lower_case(self):
self.__validate_digits(self):
self.__validate_special_chars(self):
except AttributeError:
print("Password validation failed.")
o_validator = PasswordValidator("aTest1337!")
o_validator.validate()
An dieser Stelle ist Geschmack und Erfahrung ausschlaggebend. Würdest du wissen, was hier passiert? Oder wären doch Kommentare notwendig?
"Schönheit und Mächtigkeit" haben mich noch nie interessiert.
Ich schreibe Code so, dass er tut was er soll und ich schreibe ihn so, dass ich ihn nach ein paar Jahren noch lesen kann. Besonders bei einer häufiger benutzen Klasse ist das sehr wichtig, da dürfen dann auch Kommentarzeilen nicht fehlen, besonders an Stellen, die nicht selbsterklärend sind. Daneben füge ich Kommentarzeilen als eine Art Überschriften ein ("Hier beginnt blablabla")
Aber wir sind auf der Arbeit und nicht bei einem Beauty-Contest.
Mir war, ist da Effizienz, Anwenderfreundlichkeit und Nutzen am wichtigsten, und Wartbarkeit. Das hat m. E. wenig mir Schönheit und Mächtigkeit zu tun.
Das ist ein fortlaufender Prozess ohne Ende. ;-)
Ich habe mit Python angefangen und schon von
anfang an Zeilenumbrüche gemacht. Dann habe ich mit C weiter gemacht und dann zb anstatt
int main {
}
habe ich so gemacht:
int main
{
}
Aber bei mir spielt auch immer die schönheit vom Code ne Rolle.
Und danach kamen auch andere Sprachen underanderen C# und JS
bis du in deinem Code Schönheit und Mächtigkeit zu sehen begonnen hast
Das ist noch nicht passiert 🤣
Mir war, ist da Effizienz, Anwenderfreundlichkeit und Nutzen am wichtigsten, und Wartbarkeit. Das hat m. E. wenig mir Schönheit und Mächtigkeit zu tun
Sollte eigentlich als Antwort nicht als Kommi hier rein. Kaffee wirkt noch nicht... ;-)
Das sind nicht meine Worte, sie sind von Eric Raymond)) Ich denke er meinte mit Mächtigkeit Effizienz
Wie stehst du zu Kommentaren?