Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Evolutionäre Programmierung - programmiert auch Ihr evolutionär? (https://www.delphipraxis.net/165412-evolutionaere-programmierung-programmiert-auch-ihr-evolutionaer.html)

Valle 30. Dez 2011 15:16

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Zitat:

Zitat von Furtbichler (Beitrag 1143722)
Zitat:

Wenn die Lösung funktioniert dann ist sie richtig.
Eingestellt würdest Du von mir mit dieser Einstellung nicht. Kurze Frage: Was passiert, wenn die Eingangsbedingungen etwas verändert werden? Dann knallt dir deine 'Lösung' u.U. und unvorhersagbar um die Ohren. Wenn das dann in einer Produktivumgebung passiert, dann ....

Ich habe mir schon gedacht dass du genau diesen Satz aus dem Kontext reißen wirst. ;-) Ich schrieb ja dazu: Wenn der Verdacht besteht, dass da mehr dahinter steckt, dann ist so ein Lösungsweg natürlich nicht in Ordnung. Genau von diesen veränderbaren Eingangbedingungen habe ich gesprochen. Und ich rede von derartig banalen Kleinigkeiten, dass es einfach ist, zu erkennen, ob man solche Bedingungen möglich sind.

Mit dem von dir angegebenen Beispiel bin ich mir allerdings mittlerweile recht sicher, dass du noch nicht wirklich verstanden hast, von welcher Art von Problemchen ich spreche.

Zitat:

Zitat von Furtbichler (Beitrag 1143722)
Eben nicht. Das "schnell" hat nix mit Qualität zu tun und das "korrekt" nicht mit dem, was Du hier beschrieben hast.

Denkst du dabei eigentlich nur an Programmiersprachen an sich, oder auch an Sachen wie HTML und CSS? In unserer Firma bin ich als Webentwickler eingestellt und habe deswegen (neben dem Backend natürlich) sehr viel mit HTML zutun. Das ist auch ein prima Beispiel für die beschriebene Art von Problemlösung. Hast du schon mal versucht eine inhaltlich voll gepackte Seite mit viel JavaScript und modernen Design auf allen halbwegs noch verwendeten Browsern zum Laufen zu kriegen? Ich möchte den sehen der hier nicht 'rumfummelt'.

Zitat:

Zitat von Furtbichler (Beitrag 1143722)
Ich kann deine Haltung verstehen, früher war ich auch so. Aber es ist unprofessionell. Schlicht und ergreifend. Und sehr teuer. Auf lange Sicht.

Meine Meinung.

Und ich verstehe deine, auch wenn ich (falls du mich doch richtig verstanden hast) anderer Meinung bin. Es ist schwer zu beschreiben welche Situationen das sind. Leider fällt mir auch kein praktisches Beispiel ein - und selbst wenn: Es ist schwer so etwas nachzuvollziehen. Möglicherweise fällt mir dieser Thread in der nächsten Situation mal wieder ein.

Dass du mich nicht falsch verstehst. Eine genaue Planung und detailliertes Verständnis von dem was man macht ist sehr wichtig beim Programmieren. Ich bin durchaus in der Lage zu entscheiden, wann ich wie zu arbeiten habe. Klar, Fehler macht jeder, aber wenn ich 'rumprobiere', dann bin ich sicher dass es zu diesem Zeitpunkt akzeptabel ist.

@bernerbaer: Deine Erklärung gefällt mir auch sehr gut! :)

Liebe Grüße,
Valentin

Sailor 30. Dez 2011 16:15

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Keine Ahnung, wie man ein Zitat einstellt, ich beziehe mich auf das hier:

Und ich rede von derartig banalen Kleinigkeiten, dass es einfach ist, zu erkennen, ob man solche Bedingungen möglich sind.

In unserem Beruf gibt es sowas nicht. Wenn Du eine M3-Schraube, mit der das Typenschild an einem Motor befestigt ist, rausdrehst, läuft der Motor klaglos weiter. Wenn Du aber ein '<' gegen ein '>' tauschst, kann das gesamte System seinen Geist aufgeben. In den CACM gab es vor einiger Zeit mal Lobpreisungen von "good enough" Programmen. Ich hätte gern gewußt, was der Autor sagen würde, hätte man ihm für sein gutes Geld ein "good enough" Auto angedreht. Wenn da jemand am Abend am Computer zu seinem Vergnügen rumprogrammiert, bitte schön. Aber von jemandem, der seine Erzeugnisse verkauft, kann man gute Arbeit verlangen.

Und das Schönste ist wohl das hier:

Hast du schon mal versucht eine inhaltlich voll gepackte Seite mit viel JavaScript und modernen Design auf allen halbwegs noch verwendeten Browsern zum Laufen zu kriegen?

Schon mal dran gedacht, daß diese Browser vielleicht "evolutionär" enstanden sind?

Delphi-Laie 30. Dez 2011 16:26

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Zitat:

Zitat von Sailor (Beitrag 1143753)
Keine Ahnung, wie man ein Zitat einstellt

Rechts unten auf die Schaltfläche ("Button") des Beitrages klicken, den (oder aus dem) man zitieren möchte.

Valle 30. Dez 2011 16:41

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Zitat:

Zitat von Sailor (Beitrag 1143753)
Schon mal dran gedacht, daß diese Browser vielleicht "evolutionär" enstanden sind?

Ähm. Eigentlich ist mir das herzlich egal wie die entstanden sind. Tatsache ist, dass Altlasten und Abwärtskompatibilität einen Großteil der heutigen Probleme in dieser Technik ausmachen. Mangelhafte Spezifikationen und Standards sowie Microsofts Gier immer einen eigenen Brei kochen zu müssen führten dann letztendlich dazu, dass HTML und CSS heute keinen Spaß mehr machen. [/meinung]

Wenn du aber schon so provokant danach fragst, ob genau solch schlechte Software wie die Browser durch evolutionäre Programmierung entstanden ist, dann denke ich hast auch du nicht verstanden was ich darunter verstehe. Hier wurden auf ganz anderen Ebenen Fehler gemacht.

Offensichtlich ist meine persönliche Interpretation des Begriffs der evolutionären Programmierung nicht wirklich für die Meisten hier gültig. Wahrscheinlich verstehe ich das im Gesamten nicht ganz so wie der TE es meinte. Möglicherweise solltet ihr meine Meinung dazu deswegen nicht allzu ernst nehmen. :gruebel:

Liebe Grüße,
Valentin

Furtbichler 30. Dez 2011 17:25

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Oh Gott, bitte nicht HTML + JavaScript + Browser ins Spiel bringen. Dann gebe ich mich geschlagen ;-)

Aber das sind ja nun mal "nichtdeterministische" Probleme. So wie der Umgang mit einer Frau. Da hilft auch nur "Versuch und Irrtum". ;-)

Ich kann mir übrigens keinen Profi- (oder Hobby-)programmierer vorstellen, der allen Ernstes behaupten würde, mit Rumfrickeln und Probieren schneller und besser ans Ziel zu kommen. Umgekehrt gilt aber auch, das man nicht jeden Pups analytisch herleiten und beweisen muss.

Valle 30. Dez 2011 17:37

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Zitat:

Zitat von Furtbichler (Beitrag 1143760)
Oh Gott, bitte nicht HTML + JavaScript + Browser ins Spiel bringen. Dann gebe ich mich geschlagen ;-)

Aber das sind ja nun mal "nichtdeterministische" Probleme. So wie der Umgang mit einer Frau. Da hilft auch nur "Versuch und Irrtum". ;-)

Nichtdeterministisch find ich klasse beschrieben! :lol:

Zitat:

Zitat von Furtbichler (Beitrag 1143760)
Ich kann mir übrigens keinen Profi- (oder Hobby-)programmierer vorstellen, der allen Ernstes behaupten würde, mit Rumfrickeln und Probieren schneller und besser ans Ziel zu kommen. Umgekehrt gilt aber auch, das man nicht jeden Pups analytisch herleiten und beweisen muss.

Man kann eben nicht immer einer Meinung sein.

Ich könnte mir auch vorstellen, dass diese Einstellung bei mir auch dadurch kommt, dass ich bisher nie in den Genuss einer schnellen Internetverbindung gekommen bin. Beispielsweise nachschauen in welcher Reihenfolge Parameter einer Funktion stehen, oder ob der zweite Parameter substr()-Funktion jetzt die Anzahl der folgenden Zeichen oder den Index des letzten Zeichen angibt. Sowas dauert hier viel länger als es einfach zu probieren. Ich denke das wäre ein Beispiel, welches gut zeigen müsste was ich meine.

Liebe Grüße,
Valentin

Namenloser 30. Dez 2011 17:40

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Zitat:

Zitat von Valle (Beitrag 1143762)
Ich könnte mir auch vorstellen, dass diese Einstellung bei mir auch dadurch kommt, dass ich bisher nie in den Genuss einer schnellen Internetverbindung gekommen bin. Beispielsweise nachschauen in welcher Reihenfolge Parameter einer Funktion stehen, oder ob der zweite Parameter substr()-Funktion jetzt die Anzahl der folgenden Zeichen oder den Index des letzten Zeichen angibt. Sowas dauert hier viel länger als es einfach zu probieren. Ich denke das wäre ein Beispiel, welches gut zeigen müsste was ich meine.

Naja, zum Glück hat ja jede gescheite IDE/jeder gescheite Editor heutzutage Code Completion...

Valle 30. Dez 2011 18:08

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Code Completion wird schwer bei Script- und Auszeichnungsprachen.
Und das ist nunmal mein Job.

Liebe Grüße,
Valentin

Namenloser 30. Dez 2011 22:16

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Also mit Netbeans klappte das bei mir bisher immer ganz gut – zumindest mit Ruby, PHP und Python. Aber selbst billige Editoren wie Notepad++ haben meist eine einfache Liste von Standardfunktionen (wie eben substr und Co.), die zwar nicht kontextsensitiv, aber dennoch einigermaßen brauchbar ist, wenn man schon weiß, welche Funktion man aufrufen will und nur die Parameterreihenfolge nachschauen will.

Furtbichler 31. Dez 2011 08:45

AW: Evolutionäre Programmierung - programmiert auch Ihr evolutionär?
 
Hi Valle,

Das Erarbeiten von Parameterreihenfolgen, oder allgemein 'wie etwas funktioniert' ist aber kein Programmieren, sondern eine Methodik, um sich Wissen anzueignen.

Bei zwei Parametern, bei denen nur ihre Reihenfolge relevant ist, gibt es ja nur 2 Möglichkeiten.

Allgemein gesehen kann ich bei Problemen mit abzählbar vielen Möglichkeiten diese durchprobieren und die Ergebnisse bewerten. Ich vergleiche jeweils erwartete mit tatsächlichen Ergebnissen. Das ist kein 'Rumprobieren', sondern wissenschaftlich fundierte Arbeit und vollständig.

Der Threadersteller meint aber etwas anderes.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:10 Uhr.
Seite 4 von 5   « Erste     234 5      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz