Marc Santhoff <M.Santhoff(at)t-online.de> wrote:
> Am Fr, den 14.05.2004 schrieb Oliver Fromme um 21:22:
> [...]
> > Wahrscheinlich arbeiten wir dann wohl auf sehr unterschied-
> > lichen Leveln. Ich spreche jedenfalls von typischen Anwen-
> > dungen aller Art, wie sie auf Desktops und Servern laufen.
> > Ich kann mir dort kaum Situationen vorstellen, in denen man
> > ausschließlich mit C weiterkäme. Außer natürlich, wenn man
> > mit bestehendem Code (sprich: Altlasten) arbeiten muß und
> > nicht alles neu schreiben möchte.
>
> Schade, daß die "profiling tools" gegen moderne Software nicht mehr
> ankommen. Bei diversen Lagen verschiedener Strukturschichten etc. ist ja
> auch kaum Kraut gegen Ressourcenverbrauch gewachsen.
(Sorry, das wird jetzt total off-topic, aber ich muß mich
darüber einfach mal auslassen ...)
Gute Programmiersprachen (bzw. deren Entwicklungssysteme)
haben durchaus auch gute Profiler-Möglichkeiten. Das Pro-
blem ist, daß viele sie nicht nutzen, sei es aus Faulheit,
Unwissenheit, oder dem (Irr-)Glauben, es würde nicht viel
nützen.
Unter demselben Problem leiden aber auch ebenso viele C-
Programme. Schau Dir mal den ganzen Mist auf Freshmeat,
Sourceforge & Co. an und schätz mal, wieviele von denen
überhaupt jemals im Leben einen Profiler aus der Nähe ge-
sehen haben. :-)
Ebenso, wie viele (Möchtegern-)Programmierer eine natür-
liche Scheu vor Debuggern haben, was mir völlig unver-
ständlich ist. Da werden Sourcen in mühevoller Handarbeit
mit printf() o.ä. gespickt, anstatt mal eben im Debugger
durch die fraglichen Aufrufe zu steppen -- was nicht nur
bequemer, sondern auch aufschlußreicher und sicherer ist.
Und Core-dumps? Igitt, die werden gleich gelöscht, oder
man schaltet sie mit »ulimit -c 0« gleich ganz ab. Oder
noch besser: Man fängt im Programm SIGSEGV ab, damit bloß
kein Core-file generiert wird. Daß solche Core-dumps die
beste Hilfe beim Debuggen sind, dringt bei vielen nicht
ins Bewußtsein durch.
Aber viel erschreckender ist, wie fragil viele dieser Pro-
gramme sind. Sinnvolle Testmaßnahmen gibt es offenbar
nicht, die Begriffe »Unit-tests«, »Assertions« usw. sind
unbekannt. Ist ja auch peinlich, wenn ein Programm plötz-
lich mit der Meldung »assertion failed« stirbt -- lieber
mit falschen Daten weiterrechen, um möglichst viel Schaden
anzurichten. :-)
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co KG, Oettingenstr. 2, 80538 München Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. "Being really good at C++ is like being really good at using rocks to sharpen sticks." -- Thant Tessman To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Mon 17 May 2004 - 15:53:46 CEST