Bronzegraf
Guest
Davon mal abgesehen machen deine Codebeispiele eh nicht dasselbe.
Solchen Code sollte man tunlichst (zumindest in C, Pascal ist recht selbsterklärend) kommentieren. Sonst weiß ja niemand mehr, was du dabei wieder geraucht hast.Original geschrieben von Morag
Was willst du denn für einen Kommentar an einem allgemeinen Beispiel?
![]()
Assembler ist selbsterklärender. Auch wenn man es nicht kann.Original geschrieben von [UEP]Xyz
c ist genauso selbsterklaerend, man muss es nur koennen.
Original geschrieben von Atheist
Solchen Code sollte man tunlichst (zumindest in C, Pascal ist recht selbsterklärend) kommentieren. Sonst weiß ja niemand mehr, was du dabei wieder geraucht hast.
.
Original geschrieben von [UEP]Xyz
denn jemand der keine ahnung davon hat muss/soll es auch nicht verstehen (der wird pascal imho auch nur schwer verstehen).


Doch, ich habe sie sehr wohl verstanden.Original geschrieben von Morag
@company: Du hast Idee OO nicht verstanden. Dann hilft dir auch nicht wenn du weißt wie es implementiert ist.
Original geschrieben von The_Company
Und dann noch mal einen grossen Dank an die Person, die Zuweisungen in einen If Befehl packt, damit jeder beim überfliegen des Codes denkt, das sei ein "==", denn welcher Depp macht sowas schon in nem if. Zum in den Fuss schiessen ist C halt unschlagbar, selbst für Leute, die damit angeben wollen...
Original geschrieben von The_Company
Doch, ich habe sie sehr wohl verstanden.
Ich sagte nur (extra nochmal für Dich):
OOP ist ein Programmierparadigma, dass in eigentlich jeder gängigen Sprache funktioniert. In C auf jeden Fall.
Original geschrieben von The_Company
- alles ist möglich, kein "Sorry, die Variable ist private" oder son Mist
Doch, seine Beispiele machen dasgleiche, zumindest wenn foo ein unsigned Integer-Typ ist.Original geschrieben von Bronzegraf
Davon mal abgesehen machen deine Codebeispiele eh nicht dasselbe.

Ich wei nicht, was du da treibst, aber ich hatte noch nie Probleme mit lokalen Variablen.Original geschrieben von The_Company
Der Unterschied ist, dass Kapselung den Programmierer zum Idioten erklärt, weil es ihm etwas verbietet während meine Methode dem Programmierer Verantwortung überträgt.
Aber es gibt halt Leute, für die braucht man das.
Es ist manchmal aber viel besser, dem Programmierer nicht unbedingt Zugang zu _allen_ Daten zu geben. Denn wenn er, ermutigt durch seine "Rechte", irgendwelche Werte auf unerwünschte Art und Weise ändert, können ziemlich lästige Seiteneffekte auftreten. Deshalb bevorzuge ich getter/setter - Methoden, die halt nur nach Prüfung Änderungen zulassen.Original geschrieben von The_Company
Code Kapselung ist der grösste Mist aller Zeiten, aber das ist meine persönliche Meinung. Ich bevorzuge es den kompletten Code public zu machen und "/* private */" daneben zu schreiben. Hat den gleichen Effekt, nur man kommt ran, wenn mans haben muss.
Du kannst auch lokale Variablen durch wildes Pointerschießen überall verwenden. Nur solltest du das nur tun, wenn nötig.Original geschrieben von The_Company
Das wäre ungefähr so, als würden alle Autos automatisch nur die Höchstgeschwindigkeit fahren, die auf der Strasse erlaubt ist.
Das ist absolut in Ordnung. Zumindest solange bis Dein kleiner Bruder blutüberströmt die Treppe runtergefallen ist und Dein PKW nur mit 30 in Richtung Krankenhaus fährt.
.Genau das sag ich ja. Aber es sollte möglich sein, damit ichs tun kann, wenns nötig istOriginal geschrieben von Atheist
Du kannst auch lokale Variablen durch wildes Pointerschießen überall verwenden. Nur solltest du das nur tun, wenn nötig.

Mir ist das Konzept von Klassen durchaus bekannt, die gibt es schließlich auch in FPC. Nur ist der Unterschied zu lokalen Variablen marginal und der Grund das sie Privat sind meist ein guter.Original geschrieben von Imperator
Es geht aber nicht um lokale Variablen (sondern um Klassen; private, protected Variablen und Funktionen darin). Lern was über C++ , bevor du weiter deine "Weisheiten" verbreitest, oder geh zurück zu deinem Pascal und sei damit glücklich.
Original geschrieben von The_Company
Code Kapselung ist der grösste Mist aller Zeiten, aber das ist meine persönliche Meinung. Ich bevorzuge es den kompletten Code public zu machen und "/* private */" daneben zu schreiben. Hat den gleichen Effekt, nur man kommt ran, wenn mans haben muss.
Der Unterschied ist, dass Kapselung den Programmierer zum Idioten erklärt, weil es ihm etwas verbietet während meine Methode dem Programmierer Verantwortung überträgt.
Aber es gibt halt Leute, für die braucht man das.
Und ich habe sehr wohl OOP begriffen, ich bin nur kein blinder Bewunderer von dem ganzen Mist (s.o.).

Original geschrieben von The_Company
Was zieht er sich denn rein, wenn nicht entweder Doku oder Source?
Abgesehen davon steht über diese "private" Variablen ausser im Source nirgendwo was geschrieben (schliesslich sind sie nicht öffentlich), also muss er schon im Source wühlen um überhaupt zu wissen, dass es sie gibt.![]()
Reicht das Multimediaframework für GNOME (aka "DirectShow in besser") als ausreichend grosses Projekt?Original geschrieben von Morag
Und bei großen Projekten wirst du froh sein, wenns ne Doku gibt. Koestritzer hat recht, das gilt nicht fuer deine eigenen Miniprojekte an denen du aleine schreibst und wo die sourcen noch bequem auf eine Diskette passen.
Und wenn du was schreibst wo es auf Effizienz ankommt, dann machst du das eh nicht in einer OO Umgebung.
Das machst du dann uU nicht mal mehr in plain C weils nicht effizient genug ist.
Original geschrieben von Koestritzer
die performanceeinbußen durch oop sind fast lächerlich, die liegen im bereich von 4-5%, also eigentlich uninteressant.
ich sag nich das du alles mit oop machen musst, aber es hat duchaus seinen sinn und gerade bei grösseren sachen hab ichs zu schätzen gelernt.
performance kriegste zum bleistift indem du die kritischen stellen per inlineassembler progst, viel schneller wirds dann auch nicht mehr.
