Das alte Denken



  • Lernen heisst aber auch sich neuen Ideen öffnen und sie zumindest zu verstehen. Sicher, ich muß OOP nicht gut finden, mich aber grundsätzlich davor zu verschließen ist falsch.

    Darum geht's doch eigentlich, und nich darum irgendwelche aufgeschnappten Schlagworte bzw. das was dahinter einzuführen.

    Wer am Ball bleibt und nicht bloß an "wie komme ich von 1 nach 2" denkt macht sich das Leben einfacher!



  • loks schrieb:

    Um Profi zu werden muß man bereit sein zu Lernen... Lernen heisst aber auch sich neuen Ideen öffnen und sie zumindest zu verstehen. Sicher, ich muß OOP nicht gut finden, mich aber grundsätzlich davor zu verschließen ist falsch.

    aber ein profi sollte auch profi genug sein um bei den meisten revolutionen die aufkommen objektiv zu sehen was sie sind und nicht nur auf die marketing abteilungen zu hoeren und alles zu glauben.
    Ich seh nur zu oft dass viele sich sowas hingeben, weil sie glauben dass sie pleotzlich besseren code schreiben wuerden, weil irgendwas neues ihnen die moeglichkeiten nimmt und sie somit weniger moeglichkeiten haben fehler zu machen.
    Code und Programqualitaet haengt weniger davon ab ob man oop oder nicht benutzt, man sollte ein gutes design haben. danach sucht man sich das werkzeug aus, mit dem man persoenlich das beste resultat erzielt.

    btw. ich halte OOP irgendwie schon fuer oldschool, data driven design FTW 😉



  • rapso schrieb:

    aber ein profi sollte auch profi genug sein um bei den meisten revolutionen die aufkommen objektiv zu sehen was sie sind und nicht nur auf die marketing abteilungen zu hoeren und alles zu glauben.

    Objektiv beurteilen und nicht alles zu glauben ist richtig. Einige handeln aber eher nach dem Grundsatz "garnichts glauben und alles abblocken"



  • rapso schrieb:

    loks schrieb:

    Um Profi zu werden muß man bereit sein zu Lernen... Lernen heisst aber auch sich neuen Ideen öffnen und sie zumindest zu verstehen. Sicher, ich muß OOP nicht gut finden, mich aber grundsätzlich davor zu verschließen ist falsch.

    aber ein profi sollte auch profi genug sein um bei den meisten revolutionen die aufkommen objektiv zu sehen was sie sind und nicht nur auf die marketing abteilungen zu hoeren und alles zu glauben.
    Ich seh nur zu oft dass viele sich sowas hingeben, weil sie glauben dass sie pleotzlich besseren code schreiben wuerden, weil irgendwas neues ihnen die moeglichkeiten nimmt und sie somit weniger moeglichkeiten haben fehler zu machen.
    Code und Programqualitaet haengt weniger davon ab ob man oop oder nicht benutzt, man sollte ein gutes design haben. danach sucht man sich das werkzeug aus, mit dem man persoenlich das beste resultat erzielt.

    btw. ich halte OOP irgendwie schon fuer oldschool, data driven design FTW 😉

    So ein bißchen gehst du auch in die Abblockrichtung 😃

    Übrigens sind mittlerweile Case-Tools ftw. Am Anfang war ich auch total skeptisch. Aber: offen für neues sein und mittlerweile nervt es mich schon wenn ich selber ne Headerdatei anlegen muss und dann ifndef dann define blablabla.



  • pumuckl schrieb:

    Einige handeln aber eher nach dem Grundsatz "garnichts glauben und alles abblocken"

    glauben ist eher was für theisten. beim proggen hat man's in so fern einfacher, als das man sich selbst davon überzeugen kann, ob gewisse konzepte passen oder nicht.
    🙂



  • rapso schrieb:

    loks schrieb:

    Um Profi zu werden muß man bereit sein zu Lernen... Lernen heisst aber auch sich neuen Ideen öffnen und sie zumindest zu verstehen. Sicher, ich muß OOP nicht gut finden, mich aber grundsätzlich davor zu verschließen ist falsch.

    aber ein profi sollte auch profi genug sein um bei den meisten revolutionen die aufkommen objektiv zu sehen was sie sind und nicht nur auf die marketing abteilungen zu hoeren und alles zu glauben.
    Ich seh nur zu oft dass viele sich sowas hingeben, weil sie glauben dass sie pleotzlich besseren code schreiben wuerden, weil irgendwas neues ihnen die moeglichkeiten nimmt und sie somit weniger moeglichkeiten haben fehler zu machen.
    Code und Programqualitaet haengt weniger davon ab ob man oop oder nicht benutzt, man sollte ein gutes design haben. danach sucht man sich das werkzeug aus, mit dem man persoenlich das beste resultat erzielt.

    btw. ich halte OOP irgendwie schon fuer oldschool, data driven design FTW 😉

    is Data-driven design nicht eine design methode für oop? ^^



  • Also meine Erfahrung ist, daß die anderen nicht immer erkennen, daß ich doch alles besser weiß. Sie wollen es einfach nicht glauben und sind oft der Meinung, sie wüssten irgendetwas besser als ich. 😃



  • newschooler schrieb:

    So ein bißchen gehst du auch in die Abblockrichtung 😃

    wie meinen?

    PRIEST schrieb:

    is Data-driven design nicht eine design methode für oop? ^^

    nein, ganz sicher nicht. OOP steht fuer klassendesign. DDS ist eben das gegenteil, du sparst dir ein oft overengineertes design von klassenhierarchieen, abhaengigkeiten und pattern wie diese verknuepft sind und interagieren.

    beispiel: kleines RTS

    du hast im oop vielleicht diese hierarchy

    basis-objekt
     - gebaeude
       - bauegebuaede
       - verteidigungsgebaeude
     - fahrzeuge
       - ernter
       - kampffahrzeuge
    

    irgendwann denkt man sich, dass viele der dinge von fahrzeugen gleich sind und versucht objetke mit komposing zu generieren, also

    basis-object
      - gebaeude
      - fahrzeug
    

    dabei erhalten diese

    -bau
      -ernt
      -waffen
    

    als objekte uebergeben.

    nun willst du aber dass der ernter auch schiessen kann, also entweder mit zwei elementen komposen oder ein std::vector?.... naja, kannst auch wieder loeschen, der gamedesigner hat sich doch dagegen entschieden.

    data driven hast du:
    -objekt

    beim instanzieren davon uebergibst du ein xml, daraus zieht es sich alles rein was der gamedesigner wollte (nein, du hast nichts mehr damit zu tun neue objekte anzulegen).
    aus der xml liest sich jedes objekt raus wie schnell es sich bewegen kann, bauhof.speed =0
    tank.speed = ...
    ach, du willst dass ein objekt mitten beim spiel zum gebaeude wird, weil es altererie ist? gerne, artelerie.speed=0;artelerie.firepower=...

    man muss nur die balance finden zwischen datandriven und spezialisierung.



  • rapso schrieb:

    OOP steht fuer klassendesign.

    OOP Steht für Object Orientated Design.

    Das hat primär absolut gar nichts mit Klassen zu tuen. Klassen unterstützen lediglich OOP, sie machen es aber nicht aus...

    rapso schrieb:

    artelerie.speed=0;artelerie.firepower=...

    Sieht für mich aber unheimlich nach OOP aus... Nur weil die Objektdefinition vom Code ins Xml verlagert wird verliert es doch nicht den Objekt status? Artelerie ist doch immer noch ein Objekt, speed ein Attribute usw.



  • loks schrieb:

    rapso schrieb:

    OOP steht fuer klassendesign.

    OOP Steht für Object Orientated Design.

    Das hat primär absolut gar nichts mit Klassen zu tuen. Klassen unterstützen lediglich OOP, sie machen es aber nicht aus...

    objekte an sich kannst du sonst in c mittels structs haben.. mit klassen erst verbindest du daten und funktionalitaet, sowie reduzierung von redundanz mittels vererbung usw. OOP ist weniger ein technisches mittel, sondern eine designphilosophy die mit klassen eine art der realisierung findet. deswegen schliessen sich klassen und DDS auch nicht aus, denn mit klassen kann man auch wunderbar DDS verwirklichen. aber mit den moeglichkeiten die dir c bietet waere das ebenfalls sauber und einfach moeglich.

    rapso schrieb:

    artelerie.speed=0;artelerie.firepower=...

    Sieht für mich aber unheimlich nach OOP aus... Nur weil die Objektdefinition vom Code ins Xml verlagert wird verliert es doch nicht den Objekt status? Artelerie ist doch immer noch ein Objekt, speed ein Attribute usw.

    OOP primitivster art, quasi ne struct. das objektverhalten wird nicht vom typen entschieden, sondern anhand der daten. Im einfachstem fall koenntest du als ein gebaeude selektieren und einen marschbefehl geben, das wuerde sich dann nen pfad raussuchen und tatsaechlich mit speed 0 loslaufen.



  • rapso, hast du evtl ein paar gute Links oder noch mehr Erklärungen zu Data-Driven Design? Der Wiki-Artikel ist mehr als mager, Google spuckt zwar viel aus aber da muss man ganz schön viel aussortieren. Und es hört sich interessant an 🙂



  • ~fricky schrieb:

    ...glauben ist eher was für theisten....

    Na - da hat aber einer das mit den Ober- und Untermengen noch nicht ganz durchschaut. :p 😉 😃
    (und zudem noch Homophone verwechselt)

    Gruß,

    Simon2.



  • loks schrieb:

    rapso schrieb:

    OOP steht fuer klassendesign.

    OOP Steht für Object Orientated Design.

    Das hat primär absolut gar nichts mit Klassen zu tuen. Klassen unterstützen lediglich OOP, sie machen es aber nicht aus...

    Um das mal zu ergänzen: Statt Klassen zu instanziieren kann man auch Prototypen clonen, in einigen Sprachen wird OOP so realisiert (in JavaScript AFAIK), da gibts dann keine Klassen in dem Sinne.

    BTW, OOP heißt natürlich Object Oriented Programming

    Zu Data-Driven-Design: Klingt nach Greenspun's Tenth Rule, mal wieder 😉



  • Simon2 schrieb:

    Homophone

    was ist denn das? latein-griechisch für 'menschliches geräusch'. bestimmt hast du dir das wort gerade selbst ausgedacht.
    🙂



  • ~fricky schrieb:

    was ist denn das? latein-griechisch für 'menschliches geräusch'. bestimmt hast du dir das wort gerade selbst ausgedacht.

    Oder 'gleich klingend' auf griechisch-griechisch 🙄



  • Bashar schrieb:

    Oder 'gleich klingend' auf griechisch-griechisch

    ich hab's vorher noch nie gehört, ehrlich.
    🙂



  • Das glaub ich dir sofort.



  • ~fricky schrieb:

    Bashar schrieb:

    Oder 'gleich klingend' auf griechisch-griechisch

    ich hab's vorher noch nie gehört, ehrlich.
    🙂

    😮 😮
    Also das gehört eigentlich zu meinem aktiven Wortschatz ... und ich bin bestimmt kein Fremdwortfreak ... äh Xenolinguist ;).

    "Bank" und "Bank" sind z.B. Homophone (oder "Heide" oder ...).
    und "glauben(dass)" und "glauben(an)" eben auch.

    Gruß,

    Simon2.



  • Simon2 schrieb:

    Also das gehört eigentlich zu meinem aktiven Wortschatz ... und ich bin bestimmt kein Fremdwortfreak

    das wollt' ich dir auch nicht unterstellen.

    Simon2 schrieb:

    und "glauben(dass)" und "glauben(an)" eben auch.

    hat aber beides nicht viel mit gewissheit zu tun.
    aber was wolltest du mir eigentlich sagen? oder hat dich nur mein schlechtes deutsch gestört?
    🙂



  • ~fricky schrieb:

    ...

    Simon2 schrieb:

    und "glauben(dass)" und "glauben(an)" eben auch.

    hat aber beides nicht viel mit gewissheit zu tun....

    Doch.
    "Glauben an" drückt die "Hingabe"/"Übernahme von"/"Wahrnehmung" (und damit genau diese "Gewissheit") aus. Mit "glauben an" wird der persönliche weltanschauliche "Basissatz" bezeichnet, aufgrund dessen man die Welt interpretiert - und jeder Mensch hat (wenn auch jeweil einen eigenen).
    Hierzulande ist z.B. der "Glaube an die Demokratie" relativ weit verbreitet...(oder an die "Marktwirtschaft" oder "die Wissenschaft" oder ...).

    Dass ich das angesprochen habe, liegt natürlich weniger an Dir als an mir. Vielleicht kennst Du das: Es gibt so ein paar Dinge, die einem immer wieder begegnen und einen zunehmend nerven. Bei Manchen sind es nicht gesetzte Blinker, das Wort "Triologie", der Begriff "Amerika", wo "USA" gemeint ist, das Verwenden (oder Weglassen) der weiblichen Form bei Berufsbezeichungen, .... viele Menschen haben solche "Reizthemen".
    Bei mir ist es eben diese Verwechslung/Vermischung.

    Oder kurz gesagt: Marotte von mir. 😃

    Gruß,

    Simon2.


Anmelden zum Antworten