<type 'int'> mit <type 'bool'> addieren?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
lunar

@Leonidas: Schon klar, aber Du verstehst, worauf ich hinaus will: Klammern sind leicht vergessen, und unmittelbar ersichtlich ist der Fehler eben nicht.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

mutetella hat geschrieben:
lunar hat geschrieben:Ich persönlich würde die Verwendung einer eigenen Implementierung gegenüber einer Bibliothek immer kritisieren, ...
Wenn Freude und Stolz verflogen sind, werde ich also isleap() und monthrange() importieren. Bleibt für mich nur die Frage nach dem warum? Schießt man nicht mit Kanonen auf Spatzen, wenn man wegen 5 oder 6 Zeilen Programmcode auf eine externe Bibliothek zugreift? Bei einer built-in Funktion ist das ja überhaupt kein Thema, aber extra importieren?
Das bisschen Speicher was mehr verbraucht wird ist irrelevant gegenüber der notwendigen Dokumentation und den Tests die du ebenfalls nochmal schreiben musst. Mal abgesehen davon dass du damit auch mehr Code zu maintainen hast. Das mag jetzt nicht so schlimm klingen aber die LOC für die Tests sind üblicherweise mehr als man für die Implementation gebraucht hat, zumindest ist dass Gegenteil ein guter Indikator dafür dass etwas schief gelaufen ist.

Insgesamt machst du dir also unnötig viel Arbeit für die du auch noch die Verantwortung tragen musst wenn etwas schief geht.
lunar

@DasIch: Wenn was schiefgeht, trägt man selbst immer die Verantwortung. Den Kunden interessiert es meist wenig, ob der Fehler in der Bibliothek liegt oder im eigenen Quelltext.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

DasIch hat geschrieben:Insgesamt machst du dir also unnötig viel Arbeit für die du auch noch die Verantwortung tragen musst wenn etwas schief geht.
lunar hat es schon gesagt dem Kunden oder auch nur Anwender des Scriptes ist egal wo der Fehler liegt, die verantwortung trägst du trotzdem.
Sicher bedeutet "unnötig viel Arbeit", aber "wenn etwas schief geht" und weißt du wenigsten warum, weil du dich ja mit dem Thema schon auseinander gesetzt hast.

Da in diesem Fall er es schon geschrieben hat, ist das doch sehr praktisch.
Ich ziehe zwar auch schon fertige Libs vor, aber in so einem Fall ist doch einfach nur eine Geschmackssache welches man Nutzt.
(Vorausgesetzt natürlich es Funktioniert :D)
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
lunar

@Xynon1: „Geschmackssache“ ist es mithin am wenigsten, den die übrigen, von DasIch angeführten Punkte sprechen noch immer gegen eine eigene Implementierung. Man muss diesen Quelltext mithin zusätzlich testen und dokumentieren, während diese Arbeit bei einer Bibliothek von anderen übernommen.

Für Fehler im eigenen Programm ist man zwar in jedem Fall verantwortlich, doch bei einer etablierten Bibliothek ist davon auszugehen, dass diese korrekt funktioniert, so dass man zumindest für diesen Teil gar nicht erst in der Verlegenheit kommen mag, Verantwortung für Fehler zu übernehmen.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Das gleiche Argument kann man auf den gesamten Stack anwenden. Behebt ihr auch Bugs im Interpreter? Betriebssystem? Hardware? Wobei man muss ja nicht so tief gehen, ein Modul in der stdlib welches in C implementiert ist zu fixen ist schon problematisch genug, speziell bei Sachen die in Python schwierig zu implementieren oder zu langsam wären.

Irgendwo muss man eine Grenze ziehen und in einem solchen Fall ping ich lieber den Maintainer an oder wer immer zuständig ist und schilder mein Problem oder schreib ein Bugreport und wenn ich die Zeit hab kann ich auch selbst noch einen Patch schreiben.

Klar eventuell muss ich immernoch monkey patchen oder eine modifizierte Version der Abhänigkeit mitliefern aber ich kann nicht alles wissen und konzentriere mich lieber auf dass was relevant ist um weiter zu kommen.
lunar

@DasIch: Ob ich Fehler im Interpreter behebe, ist völlig unerheblich. Wer gegenüber Deinem Kunden für diese Fehler verantwortlich ist, zählt, und das sind eben im Regelfall nicht die Entwickler des Interpreters.
Antworten