Was bedeutet "Komplexe ist besser als kompliziert" bedeuten?
In "The Zen of Python, by Tim Peters, der Satz "Komplex ist besser als kompliziert" verwirrt mich. Kann jemand noch eine genauere Erklärung oder ein Beispiel?
Du musst angemeldet sein, um einen Kommentar abzugeben.
wenn auch Komplex und kompliziert, die ähnlich klingen, Sie bedeuten nicht das gleiche in diesem Zusammenhang.
Den Zen-daher sagt: Es ist okay zu bauen sehr komplexe Anwendungen, solange die Notwendigkeit für Sie zumutbar ist.
Um ein Beispiel zu geben:
Code ist sehr einfach zu verstehen. Es ist nicht Komplex. Es ist jedoch kompliziert. Sie nicht brauchen, um manuell führen Sie die meisten der oben genannten Schritte.
Dieser code ist komplexer als das obige Beispiel. Aber: das wissen um die Dokumentation von xrange Sie können es verstehen, durch einen einzigen Blick. Viele Schritte sind versteckt hinter einer easy-to-use-Schnittstelle.
Als Prozesse, die wachsen wird größer, die Kluft zwischen kompliziert und Komplex wird breiter und breiter.
Eine Allgemeine Faustregel ist, Folgen die anderen Prinzipien des Zen of Python:
Falls es schwer zu erklären, ist es nicht eine gute Idee.
Wenn es leicht zu erklären, es könnte eine gute Idee sein.
Komplex: Nicht viel. In der Regel unvermeidlich.
Kompliziert: Schwer zu verstehen.
Ich mag dieses Zitat (Quelle):
und diese (Quelle):
Einige weitere Beiträge zu diesem:
ich habe nicht dieses Buch Lesen.
Komplex ist meiner Meinung nach eine Lösung, die vielleicht nicht leicht zu verstehen, aber ist geschrieben in einfach-und Logik-code.
kompliziert ist, eine Lösung könnte sein, die einfachen (oder Komplex), aber im code geschrieben, die nicht leicht zu verstehen, weil es keine Muster oder Logik drin und keine richtigen Metaphern und benennen.
Laut Pro-Python-third edition:
So Sie wie das Buch sagte, Sie brauchen, um Ihren code und Datei mehr organisiert, und die meisten verwenden readble Namen zur Definition von Variablen/Funktionen, wie Sie können.
Eigentlich die beste Antwort, die angenommen wird, ist eher zu beschreiben, die Ober-Herrschaft:
Einfach ist besser als Komplex.
Hier ist die snippet-Beispiel "Einfach ist besser als Komplex." aus dem Buch:
Offensichtlich, die zweite Zeile ist einfacher als die erste, und mehr einfach zu munipulate, und eher mit der "besten Antwort" Beispiel-code.
Komplizierte Systeme sind stark gekoppelt und daher zerbrechlich.
Komplexen Systemen aus einfachen teilen, die zusammen das erstellen von komplexen emergenten Verhalten. Während das emergente Verhalten kann noch eine Herausforderung sein, die einzelnen Teile isoliert, untersucht und ausgetestet. Einzelne Teile können entfernt und wiederverwendet werden.
Ich Kommentar mehr zu diesem Thema und geben Beispiele auf meinem blog
Für "kompliziert", das schwierige ist auf der Oberfläche. (Sie Beschreibung kompliziert ist.)
Für "Komplex", das schwierige ist unter dem Tisch. (Ein Auto ist Komplex.)
Nur, wie gezeigt, durch EinLama Beispiele.