PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Proggen


xXx
2002-12-25, 19:32:06
Hallo Leute.
Wurde bestimmt schon oft gefragt, aber ich wag es trotzdem mal.

Wie lerne ich richtiges Programmieren?
Kenn mich natürlich etwas in HTML aus, hab auch schon ein paar Sachen gemacht. Dann hab ich mich an Javascript gesetzt ein ganzes Buch durchgearbeitet, ein kleines Quiz mit JS und HTML gemacht.
Mit Mediator, falls das jemand kennt auch schon kleinere Sachen programmiert. Mediator ist zwar kein richtiges Programmier Programm, aber geht schon in diese Richtung. Mit mediator kann man präsentationen erstellen, wie mit Powerpoint, nur halt etwas komplizierter mit variablen usw.

Was sollte ich als nächstes machen? Ich will in Richtung C gehen.
welche programmier Sprache würdet ihr mir empfehlen? Und was für ein Projekt sollte ich mit dieser Sprache als erstes machen?

Exxtreme
2002-12-25, 19:59:54
Also als Sprache ist C++ oder Delphi zu empfehlen. Beide Sprachen sind verdammt mächtig. Das A und O ist aber ein sehr gutes Lehrbuch. Ohne dieses brauchst du gar nicht anfangen.

Und welches Projekt du anfangen sollst...?

Keine Ahnung. :D

xXx
2002-12-25, 20:19:42
Buch? Internet?
warum nicht ein toturial aus dem netz?

Exxtreme
2002-12-25, 20:47:41
Tutorials sind gut wenn man schon ein halbwegs fortgeschrittener Coder ist. Für den Anfang sind Bücher meist besser da doch verständlicher und genauer beschrieben.

Stone2001
2002-12-25, 21:45:14
Wenn es hier gerade soviele Threads zu Thema: Programmieren lernen gibt, kann ich meine Frage auch mal kurz hier stellen, es ist wahrscheinlich auch für den Threaderöffner von Interesse!
Welche Entwicklungsumgebung ist für den Anfänger empfehlenswert?
Ich hab jetzt mal zum einen Bloodshed drauf (von Zeckensack empfohlen), damit kann man einfach Beispiele Programme coden, compilieren und ausführen, soblad ich aber mehrere Dateien zu linken versuche, bekomme ich auch dort nur Fehlermeldungen!
Und zum anderen hab ich grad Borland's CBuilder installiert, ist zwar später (wenn man etwas weiter fortgeschritten ist) ganz brauchbar, aber um Beispielprogramme aus den Büchern zu coden fast unbrauchbar! (Für mich zumindest)

wowbagger
2002-12-25, 22:23:59
wie siehts mit visual c/c++ aus?

Exxtreme
2002-12-25, 22:40:32
Originally posted by wowbagger
wie siehts mit visual c/c++ aus?
Meiner Meinung nach hat diese IDE einen sehr guten Debugger dafür aber eine sehr schlechte Klassenbibliothek.

Ansonsten ist das Teil OK wenn man mit dieser Klassenbibliothek leben kann.

Ich persönlich bevorzuge den C++-Builder von Borland. Der Debugger ist nicht das Wahre dafür ist die Klassenbibliothek so ziemlich das Beste, was mir unter die Finger gekommen ist.

Exxtreme
2002-12-25, 23:04:39
Originally posted by Stone2001

Welche Entwicklungsumgebung ist für den Anfänger empfehlenswert?

Also ich empfehle den C++-Builder von Borland. Der Vorteil ist IMHO die sauber aufgebaute und durchdachte Klassenbibliothek. Auch die Benutzerführung der IDE ist IMHO sehr intuitiv aufgebaut. Man bekommt in sehr kurzer Zeit brauchbare Ergebnisse was der Motivation sehr dienlich ist. Wer mit Pascal Erfahrungen hat, der sollte sich Delphi anschauen. Es ist dem C++-Builder sehr ähnlich und hat die gleiche Klassenbibliothek.

Für Anfänger ungeeignet halte ich Microsofts Visual C++. Man wird IMHO vor allem anfangs keine grosse Freude mit dieser IDE haben gerade wegen der IMHO unübersichtlichen und sehr unintuitiven Klassenbibliothek. Die Benutzerführung an sich ist IMHO auch nicht schlecht und vor allem der Debugger lässt kaum Wünsche offen bei der Fehlersuche.

Zeckensacks Liebling, die Bloodshed-IDE ist von der Benutzerführung sehr stark an VC++ angelehnt, bringt aber selber AFAIK keine Klassenbibliothek mit, sodaß man entweder mit dem Win32-API programmieren muss, was IMHO für Anfänger absolut nicht zu empfehlen ist oder man besorgt sich eine Klassenbibliothek und bindet diese in die Projekte ein.


Diese 3 IDEs setzen aber schon einige Kenntnisse voraus. Man sollte schon eine while-Schleife schreiben können ohne im Handbuch nachschauen zu müssen. Auch das Verständnis für Pointer sollte da sein.

Wenn diese Voraussetzungen nicht erfüllt sind, dann sollte man sich IMHO erstmal mit der Sprache C oder Pascal beschäftigen und diese erstmal verstehen lernen.

Stone2001
2002-12-25, 23:57:00
Originally posted by Exxtreme
Also ich empfehle den C++-Builder von Borland.

Welche Version davon?
Bei Borland gibt es zur Zeit nur 6.0 in der Enterprise Trial Version (hab ich zur Zeit drauf, läuft aber in 58 Tagen aus) oder reicht für den Anfang der Compiler in Version 5.5!
(Ich hätt halt schon gern ne komplette Entwicklungsumgebung, sonst muß ich es wie mit Java machen (Editor + JDK)

Wuzel
2002-12-26, 00:20:00
Originally posted by Exxtreme



Für Anfänger ungeeignet halte ich Microsofts Visual C++. Man wird IMHO vor allem anfangs keine grosse Freude mit dieser IDE haben gerade wegen der IMHO unübersichtlichen und sehr unintuitiven Klassenbibliothek. Die Benutzerführung an sich ist IMHO auch nicht schlecht und vor allem der Debugger lässt kaum Wünsche offen bei der Fehlersuche.



Hmm, eins vorneweg, ich bin auf die Jungs in Redmond nicht gut zu sprechen ...

Aber In Bezug Auf Visual Studio Net ... Respekt, das hamm see sauber hingelegt.

Ich denke du sprichst mehr von der/die/das Mfc ( wieso weshalb warum ... :D )
Nun darüber streiten sich die Geister.
Meine Meinung :
Willst du C++ auf windows mit allem drumm und drann, kommst schlecht drann vorbei.
Mit C und C++ gemisch kommt man vorbei, auch wenn man einige wraper schreiben/organisieren muss.
Dies ist im 'gehobeneren' Umfeld aber ein nicht hinehmbares Teil.
Und ich spreche in aller deutlichkeit von 'richtigen' win progs, auf C++ Basis mit Com/Atl/Net/ drum und drann.

Hmm, und der compilierer hat zugelegt, Intel hat schliesslich geholfen ;)
In VC 6 war der alles andere als zu gebrauchen bei Ansi C ++, in der net Version konnte ich kaum ( ausser die üblichen kleinen wehwehchen , kein Compi ist 100% ! Ansi kompatibel ) irgendwelche 'Ärgernisse' entdecken.

Also wer reines Windows progen betreibt ist mit dieser IDE ( oder wie die dat jetzt auch immer nennen mögen ) zur Zeit am besten beraten.

zeckensack
2002-12-26, 00:57:26
Originally posted by Exxtreme
Zeckensacks Liebling, die Bloodshed-IDE ist von der Benutzerführung sehr stark an VC++ angelehnt, bringt aber selber AFAIK keine Klassenbibliothek mit, sodaß man entweder mit dem Win32-API programmieren muss, was IMHO für Anfänger absolut nicht zu empfehlen ist oder man besorgt sich eine Klassenbibliothek und bindet diese in die Projekte ein.Gaynau ;)

Stone2001,
Mein 'Liebling' ist DevCC noch nicht, aber ich arbeite daran :)

Der Schwerpunkt bei meiner Empfehlung lag auf 'kostenlos' :bäh:
Wer nicht gerne raubkopiert, oder verkrüppelte Studentenversionen kauft (für immer noch ziemlich fürstliche Preise, IMO), der erhält mit DevCC eine wirklich gute freie Alternative zu MSVC. Der Schwerpunkt liegt allerdings dort nicht auf RAD-Features (soll heißen MFC oder VCL, WYSIWYG-Fenstereditor, etc), sondern auf einer soliden Projektverwaltung und flexiblem Editor, also primär auf dem Schreiben und Verwalten von Code.

Ich find's klasse, und die Jungs und Mädels haben es IMO verdient, daß man ihnen mal eine Chance gibt :)

PS: wer etwas Delphi-artiges (diesmal inklusive Dialog-Editor und so) braucht, der kann sich ja mal DevPascal (http://www.bloodshed.net/devpascal.html) ansehen. DevCC wurde angeblich komplett in DevPascal geschrieben.

Vedek Bareil
2002-12-26, 21:39:43
Originally posted by Exxtreme
Zeckensacks Liebling, die Bloodshed-IDE ist von der Benutzerführung sehr stark an VC++ angelehnt, bringt aber selber AFAIK keine Klassenbibliothek mit, sodaß man entweder mit dem Win32-API programmieren muss, was IMHO für Anfänger absolut nicht zu empfehlen ist oder man besorgt sich eine Klassenbibliothek und bindet diese in die Projekte ein.Hm... ich kenne VC++ nicht, und ich kenn auch diesen Borland Builder nicht. Aber ich kenne Delphi und DevC++.
Einer der wesentlichen Unterschiede zwischen der Windows-Programmierung mit Delphi und der mit DevC++ ist ja folgender:
In der Delphi-IDE habe ich eine Vorschau des Programmfensters, eine Komponentenpalette, aus der heraus ich z.B. Schaltflächen oder Texteingabezeilen in das Vorschaufenster einfügen kann, und einen Objektinspektor, in dem ich Eigenschaften des Programmfensters und der eingefügten Komponenten verändern kann.
In DevC++ gibt es das alles nicht. Dort muß ich alles "von Hand" im Quelltext in der WinMain-Funktion oder in der Window-Prozedur eintragen. Naja gut, so ganz stimmt das nicht: wenn ich ein neues Projekt erstelle und angebe, daß es ein Windows-Programm werden soll, erzeugt DevC++ eine Standard-WinMain und eine Standard-Window-Prozedur für mich. Wenn ich aber Komponenten einfügen oder Eigenschaften des Programmfensters ändern will, muß ich das von Hand programmieren. Und dazu erstmal wissen wie es geht.

Nun kenne ich wie gesagt VC++ nicht. Aber nach allem was ich gehört habe, ist das eher im Stil von Delphi gehalten, also auch mit Vorschaufenster, Komponentenpalette usw. Demnach wäre aber die Benutzerführung ganz anders als bei Dev. Oder geht in VC++ vielleicht beides?

Was mit bei Delphi eigentlich negativ auffällt, weil es für den Unkundigen irritierend ist, ist die sehr enge Verknüpfung von Windows-Programmierung und objektorientierter Programmierung:
Das Programm ist ein Objekt, der Klasse TApplication. Das Programmfenster (oder wenn es mehrere sind, jedes Programmfenster) ist ein Objekt der Klasse TForm. Schaltflächen u.ä. sind Eigenschaften des Programmfenster-Objektes. Ereignisbehandlungsroutinen für von Schaltflächen ausgelösten Ereignisse sind Methoden des Programmfenster-Objektes. Ereignisse gehören ebenso zu Objekten wie Eigenschaften und Methoden. Aufrufe von Windows-Funktionen sind als Methoden von dem Programm angehörenden Objekten "getarnt".
Auf diese Weise gelangt man zu einer ganz falschen Vorstellung darüber, was objektortientierte Programmierung wie auch Windows-Programmierung ausmacht.
Und in dieser Hinsicht finde ich C++ besser, weil da eben Windows-Programmierung und OOP stärker getrennt sind und beide dadurch transparenter werden.

Und eine Frage noch: was ist eigentlich eine Klassenbibliothek? Ist das eine Sammlung von *.h-Dateien, die Klassendeklarationen enthalten? :)

Vedek Bareil
2002-12-26, 21:49:41
ach ja, um nochmal auf KR's Frage einzugehen: egal ob du Programmieren nun anhand eines Buches oder eines Online-Tutorials lernen willst, du solltest auf jeden Fall darauf achten, daß du nicht erst ewig lang mit Theorie zugeknallt wirst, sondern daß es möglichst schnell ans Programme schreiben geht. Denn gerade beim Programmieren gilt: Learning by doing.

Exxtreme
2002-12-26, 23:28:49
@ Vedek

Also ich habe schon mit VC++, C++Builder und DevCC programmiert und bin der Meinung, daß DevCC und VC++ sehr ähnlich sind. VC++ hat auch ein Modul, mit dem sich Dialoge basteln lassen, dieses aber bei Weitem nicht so komfortabel und ausgereift ist wie das vom C++-Builder (Delphi). Man muss in VC++ auch Vieles "zu Fuss" machen genauso wie bei DevCC. VC++ ist kein RAD-Werkzeug wie der C++-Builder (Delphi) sondern es geht eher Richtung Low-Level-Programmierung und sowas wie Komponenten gibt es nicht. Es werden ganz einfach die Klassen per Quelltext eingebunden und stehen dann zur Verügung, genauso wie beim DevCC.

Exxtreme
2002-12-26, 23:35:58
Originally posted by Wuzel

Willst du C++ auf windows mit allem drumm und drann, kommst schlecht drann vorbei.
Mit C und C++ gemisch kommt man vorbei, auch wenn man einige wraper schreiben/organisieren muss.
Dies ist im 'gehobeneren' Umfeld aber ein nicht hinehmbares Teil.
Und ich spreche in aller deutlichkeit von 'richtigen' win progs, auf C++ Basis mit Com/Atl/Net/ drum und drann.

Nene, auch die MFC deckt (decken?) nicht alles ab was in Windows möglich ist. Selbst Kruglinski (R.I.P.) schreibt in seinem Buch, daß man öfter einige direkte Win32-API-Aufrufe braucht. :)
Diese Klassenbibliothek deckt das Wichtigste ab aber bei Weitem nicht alles. Und genauso verhält sich es mit der VCL. Nur daß ich die Letztere für deutlich besser halte... aber Meinungen sind wie Arschlöcher. ;)

Demirug
2002-12-27, 00:39:50
Die VCL ist von dem was ich bisher gesehen habe (ist nicht viel) schon etwas besser als die MFC. Die MFC enthält inzwischen einfach zu viele Altlasten da ja immer noch eine sehr hohe kompatibilität zur MFC 1.0 gewahrt wurde.

Als man bei MS damals anfing eine C++ Klassenbibliothek über die Win32 zu bauen verfolgte man einen absoluten OOP ansatz der wirklich alles auf sehr hoher ebene abstrahieren sollte. Das Teil war auch schon fast fertig. Aber aufgrund der starken Abstraktion der Win32 war in der Bibliothek so viel Layercode erforderlich das es auf damaligen CPUs einfach zu langsam war als das auch nur ein Entwickler ernsthaft damit gearbeitet hätte. Deshalb ging man dann den anderen Weg und baute nur einen ganz dünnen Layer über die Win32 genannt MFC. Die ürsprüngliche Klassenbibliothek nannte sich übrigens "Application framework ???" kurz AFX (??? wurde niemals öffentlich gemacht). Teile davon haben aber denoch überlebt da in machen Teilen der MFC immer noch das kürzel AFX zu sehen ist. Langfristig möchte MS die MFC durch den .net Framework ablösen.

Was nun Borland angeht so ist die VCL ja inzwischen der 3 "Versuch" einer C++ Klassenbibliothek. Auf OWL folgte OWL 2 und dann die VCL. Alle 3 Bibliotheken sind leider nicht kompatibel. Für den Übergang von OWL nach OWL 2 wurde zwar ein Tool zur Verfügung gestellt aber das hat nie richtig funktioniert. Diese Geschichte hat uns (die Firma für die ich arbeite) damals in die Hände von MS und der MFC getrieben als der wechsel zur 32 Bit umgebung erforderlich war.

Vedek Bareil
2002-12-27, 01:10:27
Originally posted by Stone2001
Bei Borland gibt es zur Zeit nur 6.0 in der Enterprise Trial Version (hab ich zur Zeit drauf, läuft aber in 58 Tagen aus) wo hast du die denn her? Ich hab mal auf der Seite von Borland geguckt, dort kann man die zwar bestellen, aber die liefern nur in die USA :(

Xmas
2002-12-27, 01:22:12
Originally posted by Vedek Bareil
wo hast du die denn her? Ich hab mal auf der Seite von Borland geguckt, dort kann man die zwar bestellen, aber die liefern nur in die USA :(
Du musst dich bei Borland registrieren, dann kannst du AFAIK die Enterprise Trial-Version downloaden.

Stone2001
2002-12-27, 12:08:20
Originally posted by Xmas
Du musst dich bei Borland registrieren, dann kannst du AFAIK die Enterprise Trial-Version downloaden.
Nicht ganz! ;) Die Enterprise Trial-Version kannste z. B. hier downloaden: http://www.borland.de/products/downloads/download_cbuilder.html#
Den Freischalt-Code allerdings, den bekommst du nur, wenn du dich registierst!

Xmas
2002-12-27, 14:00:13
Originally posted by Stone2001

Nicht ganz! ;) Die Enterprise Trial-Version kannste z. B. hier downloaden: http://www.borland.de/products/downloads/download_cbuilder.html#
Den Freischalt-Code allerdings, den bekommst du nur, wenn du dich registierst!
Hast du schon mal versucht auf einen der Links draufzuklicken? Dann kommt ein Login-Fenster... ;)

Stone2001
2002-12-27, 14:04:26
Originally posted by Xmas

Hast du schon mal versucht auf einen der Links draufzuklicken? Dann kommt ein Login-Fenster... ;)
öhhh, ja?
Also bei mir öffnet sich dann nen Fenster, in dem es dann Links zum Download der Trial-Version geht!
Probier einfach mal diesen Link: ftp://ftpd.borland.com/download/bcppbuilder/BorlandCBuilder6EvaluationDeutsch.exe vielleicht gehts damit! ;)

P.S.: Kann vielleicht auch sein, dass das Fenster bei mir nicht mehr kommt, da ich die ganze Prozedur schon hinter mir habe! ;)

Xmas
2002-12-27, 14:15:50
Originally posted by Stone2001

öhhh, ja?
Also bei mir öffnet sich dann nen Fenster, in dem es dann Links zum Download der Trial-Version geht!
Probier einfach mal diesen Link: ftp://ftpd.borland.com/download/bcppbuilder/BorlandCBuilder6EvaluationDeutsch.exe vielleicht gehts damit! ;)

P.S.: Kann vielleicht auch sein, dass das Fenster bei mir nicht mehr kommt, da ich die ganze Prozedur schon hinter mir habe! ;)
Wahrscheinlich ;)
Der FTP-Link funktioniert.