Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Faule Socke

Community-Fossil

  • »Faule Socke« ist der Autor dieses Themas

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

1

06.12.2006, 14:35

methoden, Funktionen, Prozeduren, Templates und Makros

Hi,

hier im Forum gab es mal eine Disskussion über die im titel gennanten dinge(mit unsigned long) und ich wollte jetzt mal bestätigt kriegen dass ich meine "Hausaufgaben" gemacht habe also fange ich mal an:

Methode: ist eine Funktion einer Klasse.

Prozedur: ist eine Funktion ohne Rückgabewert.

Funktion: Ja was soll man da sagen... ein Bestimmter code Teil den man während des Programmablaufes ausführen kann(das dürfte es in etwa treffen)(jeder weis ja was ne funktion ist)

Tempelates: hmm... eine "Funktionsschablone". Man kann zum Beispiel den typ des rückgabewertes manuell festlegen während man das Tempelate benutzt:

C-/C++-Quelltext

1
float test = testTemplate<float>(2, 3, 5);


Makros: Ein bestimmter Programmcode der VOR dem Compillieren vom Preprozessor noch an den entsprechenden stellen eingesetzt wird:

aus diesem:

C-/C++-Quelltext

1
2
3
4
5
6
7
#define TESTAUFRUF {test("test");}

int main()
{
//...

char c[] = TESTAUFRUF();
}


würde dann das hier werden:

C-/C++-Quelltext

1
2
3
4
int main
{
//...

char c[] = test("test");


So das wars auch schon!

Ich bitte um gute(und faire) kritik und bitte weist mich auf eventuelle fehler die ich gemacht habe hin!

EDIT: Ist mir grade so eingefallen: man könnte das ja in due tutorial "Section" machen wenn alles richtig ist damit auch die C++ anfänger sowas direkt erklärt kriegen!


mfg,

Faule Socke

Faule Socke

Community-Fossil

  • »Faule Socke« ist der Autor dieses Themas

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

2

06.12.2006, 15:18

Keiner schreibt zurück obwohl sich die leute diesen beitrag schon angesehen haben! könnt ihr net wenigstens sagen das ich richtig(oder falsch) lag damit ich die gewissheit habe das ihr noch mit mir redet....


mfg,

Faule Socke

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

3

06.12.2006, 15:22

Im Grund sind die Beschreibungen im Großen und Ganzen ok. Bei Templates fehlen evtl noch Klassentemplates.

grüße
@D13_Dreinig

Faule Socke

Community-Fossil

  • »Faule Socke« ist der Autor dieses Themas

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

4

06.12.2006, 15:40

Zitat von »"David_pb"«

Im Grund sind die Beschreibungen im Großen und Ganzen ok. Bei Templates fehlen evtl noch Klassentemplates.

grüße


Oh... was sind denn Klassentempelates? etwa Tempelates nur halt im Klassen?

Vielen Dank für das Feedback!

mfg,

Faule Socke

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

5

06.12.2006, 16:40

Es fehlen noch einige Dinge.

Methoden sind "Funktionen einer Klasse" - ist sehr oberflächlich. Warum wurde den der Name Methode statt Funktion eingeführt?

Templates hast du nicht verstanden, würd ich mal sagen.
(weil die innovativen Dinge nicht genannt wurden), lediglich "Funktionsschablone", es gibt aber auch Klassenschalblonen etc. Wozu brauch man das? Wo wird es genutzt? Referenz?



Außerdem reicht das für ein FAQ noch nicht. Es fehlen noch einige Entwurfsmuster (z.B. Singletons, etc.) evtl. auch mit Beispielen, so dass man es auch verwenden könnte. :roll:

rklaffehn

Treue Seele

Beiträge: 267

Wohnort: Braunschweig

  • Private Nachricht senden

6

06.12.2006, 16:57

Zitat von »"koschka"«

Es fehlen noch einige Dinge.

...

Außerdem reicht das für ein FAQ noch nicht. Es fehlen noch einige Entwurfsmuster (z.B. Singletons, etc.)


WAAAH! Das Simpleton Pattern hat wieder zugeschlagen... :) Warum erzählt nie jemand was über Besucher, Fassaden, Schnittstellen, Kompositionen, Fabriken, Adapter, Dekorierer, Beobachter, ... (ab der Hälfte hab ich dann aber auch ins Buch geschaut.)

@Faule Socke:

Definition von Methode, Prozedur und Funktion: im Kern richtig aber im praktischen Leben ohne Belang, weil mehr oder weniger das Selbe. Das gilt natürlich nicht, wenn man sich eher theoretisch mit der Materie befasst, da sind gut definierte Begriffe wieder wichtig.

Templates: ... naja ... "Schablone" ist das einzige, was da richtig ist. Es fehlt eigentlich fast alles von Templates. Aber der Versuch Templates in drei Sätzen zu erklären ist auch sehr mutig. Mit Templates kann man sehr viel mehr anstellen als du auch nur andeutest.

Makro: so wie du das benutzt schlicht falsch, weil du bei der Ersetzung die "{ }" vergessen hast. Erkenntnis, dass es einen Präprozessor gibt: gut! Sonst sind Makros eher ein Hilfsmittel um sich Tipparbeit zu sparen oder zur Compile-Zeit mehr Einfluss auf den erzeugten Code zu haben. Ich sage da nur ASCII vs. UNICODE oder DEBUG vs. RELEASE.

Gruss,
Rainer
God is real... unless declared integer.
http://www.boincstats.com/signature/user_967277_banner.gif

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

7

06.12.2006, 16:59

Bin voll dafür! 8)

Singletons sind aber einfacher, unhd Fabriken braucht man ja nicht in jeder Sprache..... aber adapter etc. wären ja doch schonmal interessant, besonders bein dem entwurf eines Frameworks (Engine etc.)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

8

07.12.2006, 09:18

Zitat von »"koschka"«

Bin voll dafür! 8)

Singletons sind aber einfacher, unhd Fabriken braucht man ja nicht in jeder Sprache..... aber adapter etc. wären ja doch schonmal interessant, besonders bein dem entwurf eines Frameworks (Engine etc.)


Singletons können durchaus komplexer werden wie ein Factory Pattern. Desweiteren weiß ich nich genau wie du Entwurfsmuster mit Funktionen, Methoden, Prozeduren, Templates und Macros, anhand diesem Thread, in konkreten Zusammenhang bringst.
Würd mich sehr interessieren! :)

grüße
@D13_Dreinig

rklaffehn

Treue Seele

Beiträge: 267

Wohnort: Braunschweig

  • Private Nachricht senden

9

07.12.2006, 12:17

Das kommt, weil ich einen Kommentar zu koschkas Kommentar abgeben habe. Immer wenn jemand meint, er müsse mal ein Pattern sagen, sagt er Simpleton, pardon, Singleton ;).

Deswegen sollten andere und interessantere Pattern auch mal erwähnt werden. Ein Singleton, der kompliziert ist, den gibt es einfach nicht. Simpleton eben :D.

Und als Tutorial oder FAQ taugt die Definition von Funktion, Methode und Prozedur nichts, weil diese Definitionen eben im praktischen Leben kaum relevanz haben. Dort will ich eine Aufgabe erledigen und da ist es erstmal egal, ob ich dazu eine Methode, eine Funktion oder eine Prozedur benutze, weil diese sich eher im theoretischen Bereich unterscheiden.

Ganz ehrlich müsste ich jetzt auch erst nachschlagen, wie die Biester genau definiert sind. In meinem ganzen Software-Leben habe ich die Definition noch kein einziges Mal gebraucht.

Pattern hingegen sind wichtiger, weil sie Interaktionen von Objekten (selbst in nicht-OO Sprachen) erklären. Vieleicht muss ich doch mal mein Buch auspacken und ein paar Pattern für die Spieleprogrammierung aufarbeiten.

Bis denne,
Rainer
God is real... unless declared integer.
http://www.boincstats.com/signature/user_967277_banner.gif

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

10

07.12.2006, 12:29

Zitat von »"rklaffehn"«


Deswegen sollten andere und interessantere Pattern auch mal erwähnt werden. Ein Singleton, der kompliziert ist, den gibt es einfach nicht. Simpleton eben :D.


Falsch, Singletons gibt in vielen Ausführungen. Steuerung der Lebensdauer, Phoenixsingleton, Meyersingleton etc... Das kann durchaus etwas komplexer werden.

Aber ein FAQ über Designpatterns wär doch ganz nett, gerade um diese manchen Hobbycodern näher zu bringen! :)

grüße
@D13_Dreinig

Werbeanzeige