Dauerbaustelle hat geschrieben:Versteh' ich nicht. Wie wäre es hiermit:
Naja, ist schwer zu erklären, ich finde es einfach irgendwie unleserlich und nicht so schön, wie bei Kunst.
Ich werde trotzdem auf den Rat von Dir hören und meine ästhetischen Bedürfnisse mal vergessen.
Dauerbaustelle hat geschrieben:Hm. Das scheint mir ein typischer Fall von "overengineered" zu sein. Die Möglichkeit, andere Vorwahlen etc zu nutzen, benutzt faktisch kein Mensch. Es nützt also genau nichts, sie drin zu haben. Etwas mal einzubauen, weil man es vielleicht möglicherweise irgendwann in ähnlicher Form gebrauchen könnte, ist sinnlos und aufwändig. Meiner Meinung nach ist Software dann perfekt, wenn man nix mehr wegnehmen (darin eingeschlossen: vereinfachen) kann -- alles so simpel wie irgendwie möglich, aber so kompliziert wie nötig.
Ähm... Ich weiß ja nicht, aber ich schätze, dass wenn das Programm jemand anders benutzt, der nicht zufällig im gleichen Kaff wohnt wie ich, dann hat er ein Problem.
Dauerbaustelle hat geschrieben:Ich würde die Einstellung der Vorwahlen höchstens in einer ganz einfachen Konfigurationsdatei anbieten, oder als Parameter der Contacts-Klasse machen.
Noch extra eine Konfigurations-Datei, das finde ich, ist overkill.
Als Parameter für die Contacts-Klasse macht das auch keinen Sinn, da das Modul nicht gleichzeitig an zwei verschiedenen Standorten geladen wird.
Vielleicht hast Du nicht ganz verstanden, was das mit den Vorwahlen soll:
Wenn Du mich anrufst, erhalte ich (über den Callmonitor) Deine komplette Nummer (mit Vorwahl), egal ob Du im selben Kaff wie ich oder in einem anderen wohnst.
Wenn ich Dich aber anrufe, dann kann ich, sofern Du im selben Kaff wie ich wohnst die Vorwahl wählen oder auch nicht.
Daher brauche ich die Vorwahl, da der Callmonitor die Nummer immer wie gewählt übermittelt und ich nicht extra 2 Einträge (mit und ohne Vorwahl) anlegen will.
Das macht die ganze Sache ja auch so kompliziert, 1 Nummer kann ich in 4 Nummern ausdrücken.
Dauerbaustelle hat geschrieben:Noch zwei Dinge: `__init__` hat noch immer Seiteneffekte, ich würde das `read` nicht innerhalb von `__init__` aufrufen, ist aber ne Geschmacksfrage denke ich.
Also ich meine schon, dass die Datenbank direkt beim erstellen gebaut werden muss, da das Objekt fest einer Datenbank zugeordnet ist.
Dauerbaustelle hat geschrieben:Vielleicht könnte man die Funktionalität auch zur Call-Klasse hinzufügen und dann z.B. `matches_filter(s)` nennen. Oder so ähnlich.
Dauerbaustelle hat geschrieben:Mehr brauchst du in der Datenstruktur erstmal nicht. Die Parsing-Sachen einfach in Funktionen reinstopfen, die haben nicht wirklich was mit der Datenstruktur eines Anrufs zu tun (bin mir da aber nicht 100% sicher
.
Passt nicht so gut zusammen
. - Außer Du hast mit Parsing-Sachen nur den Singular gemeint.
Vorher hatte ich das da drin, duration_as_hms gehört ja eigentlich auch dazu.