* Wolfgang Weisselberg wrote on Sat, Jan 29, 2000 at 23:56 +0100:
Erhard Schwenk schrieb in 2,3K (60 Zeilen):
On 26-Jan-00 Wolfgang Weisselberg wrote:
Wer in Basic Spaghetti-Code produziert, tut dies mit Sicherheit auch in Perl.
Wer in Basic Spaghetti-Code produziert, tut dies mit Sicherheit in jeder anderen Sprache auch. Insofern stimme ich dir zu.
Merksatz: Diziplin muß vom Programmierer kommen.
- Weder lassen sich die Personen davon beeinflussen, gegen deren Handlungen sich die Regeln wenden, im Gegenteil, sie werden zu geschickten Winkeladvokaten
:) Nett formuliert.
- noch nuetzt es den Personen, die richtig handeln, auch sie muessen hunderte unsinniger Regeln lernen, die ihre Handlungen im Nebeneffekt einschraenken.
... und zum Kompott a) eine Diziplin aufzwingen, die b) nicht mal die beste sein muß!
tuen ... z.B. rm -rf / (Ja, ich habe das schonmal in voller Absicht getan.)
Ja, ich auch, es funktioniert, bloß shutdown ging danach nicht :)
Das ist eben ein Grund, warum Windows so schwach ist: es wird einem schwergemacht, sich in den eigenen Fuss zu schiessen, damit aber handelt man sich inkompatible DLLs ein, die
... aber wenn man sich mal in den Fuß schießen _muß_, weil da ein großes, klebriges, böses Geschwür dran ist, hat man verloren, genau!
Wer wirklich ernsthaft lernen will, Probleme zu lösen - und NUR darum geht es beim Programmieren im Endeffekt
Verwechselt Du Programmieren mit Softwareenigeering?!
Ich sehe kein grossartiges Problem darin, einen elektronischen Schmierzettel zu nehmen und die Gedanken in Form der Sprache niederzuschreiben.
Na, wenn man versucht, eine kleine Relationale Datenbank (z.B. 10 Entities, 10 Relationen) mit deutscher Sprach zu beschreiben, Gute Nacht. Dann doch lieber ein geeignetes Werkzeugz, z.B. ein ER-Diagramm...
Welche Sprache er dabei benutzt, ist im Prinzip völlig egal - wer eine Prozedurale Sprache kennt, kann innerhalb von Tagen auf jede andere umsteigen, das gleiche gilt für OO- und funktionale Sprachen.
Intercal? Moechte sehen, wie schnell du *diese* Sprache lernst. (http://sagan.earthspace.net/intercal/)
Kenn ich nicht, ist das wenigstens was prozedurales? Ich finde es jedenfalls interessant, ruhig mal andere Konzepte anzuschauen, wenn die Zeit vorhanden ist, z.B. sowas wie Prolog oder so. Im Prinzip sind ja doch schon alle prozeduralen Sprach sehr ähnlich, einige komfortabel, andere nicht, aber es ist doch irgentwie dasselbe, und etwa über den Tellerrand zu schauen, z.B. zu Prolog eben, ist sicher nicht verkehrt.
C(++) erzwingt dies nur zu einem gewissen Grad und erfordert sehr viel "Hardwarenahes" Fachwissen schon bei einfachen Aufgaben.
Komisch doch, dass soviel in C geschrieben ist ...
Irgentwie geht ihr da falsch ran, oder? Man wählt doch die Sprach nach der Aufgabe! Wenn ich ne Plattformunabhängige GUI brauche, gefällt mir vielleicht Java, brauch ich ein Parse-Programm, schmeiß ich vielleicht yacc an, oder nehme Perl, brauch ich was sehr sicheres, schau ich auf Ada, muß es vor allem schnell sein, dann gehts Richtung C, wenn mir das zu "doof" ist, C++ oder so... Will ich ein Problem anderer Art lösen, muß ich vielleicht auch mit Prolog fummeln... Sicher, ich kann ein Prologprogramm in C schreiben. Es soll auch andersherrum gehen (aber ich möchte es nicht probieren müssen :)). Die Frage ist nur, ob es Sinn macht. Es gibt jedenfalls keine "richtige Programiersprache" ohne konkretes Problem!
Perl, Basic und Smalltalk erzwingen diese Vorgehensweise gar nicht - mit dem Ergebnis, daß der Anfänger sich schon nach kurzer Zeit verrennt und dann seine eigenen Konstrukte nicht mehr versteht.
Und du glaubst, das sei mit Java oder Pascal anders? Ja, da kommt er nicht so weit, richtig? :-)
Bei Perl? Ich hab mir ein bißchen was dazu durchgelesen (namentlich das Camelbook :)), dann angefangen, ein Script zu bauen, weil das mit ner Shell und awk zu grausam war, und es lief dann ganz prima, als absoluter Perlanfänger. Oder meinst Du mit Anfänger Leute, die nicht programmieren können? Dann haben sie mit jeder Sprache verloren. Man muß programmieren lernen - UND mindestens eine Sprache.
Unter Beruecksichtigung deiner Behauptung von oben: "Welche Sprache er dabei benutzt, ist im Prinzip völlig egal", widersprichst du dir natuerlich. Du kannst in Perl sehr strukturiert schreiben. Aber du musst es nicht.
Das ist eben die Stärke von Perl. Wenn ich mir in den Fuß schießen muß - es gibt eben Ausnahmen - kann ich das sehr gut machen. Normalerweise sollte ich das nicht, und man macht es eigentlich nie, aber die Möglichkeit ist eben da. Und wenn man mal was krankes braucht (was dann in dem Zusammenhang nicht krank, sondern logisch ist), kann man es einfach machen, ohne 100 Seitenlange Hacks, die dann niemand mehr versteht!
So if you want to get it right, be ready to start over at least once [JB] .
Yepp, Die Entstehung eines Projekts/Programms (so mit Planung, Entwurf, Implementation, Test, Einsatz, Wartung) ist keine Squenz, sondern ein Zyklus, genau! Jedenfalls muß man da unterscheiden: Möchte jemand so programmieren lernen, das er fähig wird, ein Projekt in der Größe eines Mannjahres notfalls alleine durchzuziehen, oder möchte er seine täglichen Aufgaben etwas automatisieren... oki, Steffen -- Dieses Schreiben wurde maschinell erstellt, es trägt daher weder Unterschrift noch Siegel. --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com