You are not logged in.

  • "german-winlite" started this thread

Posts: 18

Date of registration: Feb 8th 2010

Thanks: 14 / 1

  • Send private message

1

Wednesday, March 3rd 2010, 10:30pm

Warum programmieren Programmierer wie sie programieren?

Es wird unausgereifte vollgestopfte Software in Umlauf gebracht, und anschliessend beginnen so nach und nach die Fehlerbeseitigungen.
Schon klar, das Geldgier, Zeitdruck und weitere Faktoren eine Rolle spielen, aber es kommt ja nicht nur bei Software vor, dessen Programieren Gewinnorientiert sind.

Wenn ich z.B. an die einstigen Changelogs von MediaMonkey denke, wundere ich mich wie die Software vorher überhaupt laufen konnte.
Mir kommt es so vor, als würden manche Programmierer das Feld von hinten aufrollen, erst mal alles coden, und dann ausbessern.

Ich meine, ich verstehe es wirklich nicht - kann man denn nicht von Anfang an alles sauber zu Programieren, und erst nach und nach weitere Optionen hinzufügen.
Wiso wird denn so viel falscher Code geschrieben?

P.s.: Frage ist weder Lustig noch gehässig gemeint!

*dummdackelblickkopfkratz* *SCRATCH*

This post has been edited 1 times, last edit by "g-force" (Mar 3rd 2010, 10:37pm) with the following reason: Titel geändert


Posts: 1,793

Date of registration: Sep 23rd 2008

Thanks: 0 / 9

  • Send private message

2

Thursday, March 4th 2010, 1:41am

Da kann ich dir eher generell was zu antworten.
Um ein absolut fehlerfreies Produkt zu produzieren bräuchte man unangemessen hohen Mitteleinsatz, und damit würde sich das Produkt wirtschaftlich nicht rechnen. Also machen Firmen in der Regel ein möglichst gutes Produkt und merzen die letzten 2-3 Prozent Fehler dann nachträglich aus. Natürlich gibt es, gerade bei Software bestimmt auch solche, die die letzten 10% beim Kunden ausbessern, aber das hat dann mit dem Qualitätsanspruch der betreffenden Firma zu tun. Das ist bis zu einem gewissen Grad auch im Interesse des Kunden, da ja letztlich der Preis auch vom finanziellen Aufwand abhängt.
Bei nicht kommerzieller Software gilt das ganze erst recht, nur das da garantiert niemand die Zeit hat, alle möglichen Fehler vorher zu eliminieren. Und deine Idee mit nachträglich alle möglichen Features einzubauen funktioniert schonmal gar nicht, sofern die Software nicht von vornherein dafür ausgelegt wird. Beispiel, Mehrsprachigkeit. Wenn du da nicht am Anfang dran denkst, dann musst du später quasi alles neu Programieren um z.B. Sprachdateien einfügen zu können.

Grüße

Thomas
"Was zählt das Alter, außer die Jahre?"
"Auf der Suche nach sich selbst entdeckt man seine Eltern."
Thomas Mc Kie

This post has been edited 1 times, last edit by "Thomas Mc Kie" (Mar 4th 2010, 1:42am)


danker

thxMan

Posts: 1,692

Date of registration: May 15th 2009

Thanks: 0 / 23

  • Send private message

3

Thursday, March 4th 2010, 2:31am

Quoted

Wiso wird denn so viel falscher Code geschrieben?


Nun du programmierst selber nicht?

Stell dir vor du schreibst ein Buch und bei jeden Rechtschreib oder Gramatik Fehler würde die nächste Seite möglicherweise nicht lesbar sein. Selber bin ich kein rechtschreib Profi und ein fehlerfreies Buch ist ein Ding der Unmöglichkeit für mich. Ein Programmiersprache ist aber noch komplizierter da sobald nur ein Komma falsch ist schon nichts mehr funktionieren kann.
Also anders gesagt heutige Pgrogrammier Sprachen sind noch weit hinter gesprochener Sprache zurück und solange wir keine guten AIs oder Algoritmen haben welche selbständig nachvollziehen können was der Programmierer gemeint haben könnte, ...... wird es so weiter gehen wie bisher .... pre alpha - alpha- beta- RC- Final...... mit viel guten Willen Try and Eror dazwischen.
! form follows function -/- Funktion bestimmt Form ! *READING*
mein websenf :-D

yanu

V.I.P.

Posts: 49

Date of registration: Apr 1st 2010

Thanks: 0 / 7

  • Send private message

4

Tuesday, April 20th 2010, 3:20pm

Ich denke weiterhin können auch nicht alle erdenklichen Möglichkeiten eines Programmes vorab geplant werden.
Während ein Programm entsteht werden dabei so viele Variablen gesetzt oder verändert, dass man an gewissen Stellen einfach den Überblick verliert und nicht mehr 100% weiss, was genau an dieser stelle jede einzelne Kleinigkeit für einen Zustand hat. Es gibt grosse Konzerne welche Software programmieren und alle erdenklichen Fälle schon im Vorfeld versuchen zu klären. Nimm als Beispiel SAP, riesig oder? Die haben Teams die sich monatelang Gedanken drum machen sollen, was alles für Funktionen ein Programm haben muss, welche Erweiterungen es geben soll, wie Kompatibilitäten aussehen und und und, die Liste ist lang. Nach Monaten voller Überlegungen gibts dann ein Plan der vom Programmier-Team umgesetzt wird. Da hier die Jungs untereinander vielleicht nicht immer wissen, ob nicht ein Kollege bestimmte Ausdrücke in anderen Programmteilen auch schon einmal verwendet hat, pff is klar.
Das fertige Produkt kann es so ja nie geben. Für Single-Programmierer sieht das anders aus, die wissen was wo verwendet wurde. Allerdings kann man alleine nie den Überblick behalten und muss testen. Jede einzelne Möglichkeit muss getestet werden. Solche Tests macht nur niemand weil sie genauso lange dauern wie die eigentliche Arbeit des Erstellens.
somit kann sich ja jeder zusammenreimen, wie die Produkte später aussehen. Noch keine Software kam auf den Markt ohne spätere Fixxes. Unmöglich! Allerdings kann man hier eher an den angesprochen Qualitätsstandard appelieren anstatt an die Programmierer. Sofern besser geplant wird, kann auch besser umgesetzt werden und die Fehlerquote wäre deutlich geringer.
Ist somit Ansichtssache - prinzipiell hast Du aber Recht, es gibt zu viele Bananenprodukte die erst auf dem Markt reifen.

mfg