Ich arbeite an einem kleinen Tool als Spielzeugprojekt, um den Unterschied zwischen zwei Verzeichnissen aufzuzeigen und zu zeigen, welche Dateien / Verzeichnisse hinzugefügt, entfernt, geändert usw. wurden.
Ich habe versucht, diese Änderungen einfach als 'ChangeItem'-Objekte darzustellen, ohne zu unterscheiden, ob es sich um eine Datei oder ein Verzeichnis handelt. Dies führte jedoch zu vielen Problemen, z. B. wie man sie in einem Baum anzeigt, wie man weiß, wer die Eltern eines Kindes sind usw. Und es war auch sehr unintuitiv.
Ich habe dann die Änderungen zwischen Verzeichnisänderungen und Dateiänderungen aufgeteilt. Das machte es sofort sehr einfach zu codieren und zu verstehen, was los war. Jetzt ist es viel einfacher, alle Dateien in einem Verzeichnis usw. auszuwählen.
Meine Frage ist, wie kann man wissen, ob man Abstraktion verwendet oder spezifischer in ihrem Code wird? Wie können Sie feststellen, ob Sie zu viel oder zu wenig Abstraktion haben?