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?