Computer Hardware Forum - TweakPC

Computer Hardware Forum - TweakPC (https://www.tweakpc.de/forum/)
-   Programmiersprachen (https://www.tweakpc.de/forum/programmiersprachen/)
-   -   1. Schritt ins C++ Programmieren!! Tipps usw........ (https://www.tweakpc.de/forum/programmiersprachen/20485-1-schritt-ins-c-programmieren-tipps.html)

Stuttgarter17 16.11.2004 17:19

1. Schritt ins C++ Programmieren!! Tipps usw........
 
HI

Ich möchte programmieren lernen da mein wunschberuf Informatiker ist!!!

Habe gehört das am besten C++ ist!

ALso ich brauche tipps wie z.b.

a) Sollte ich lieber mit C anfangen bevor ich gleich an C++ gehe??
b) Wie lerne ich es am besten?? ( mit büchern, .............. wie habt ihr es am besten gelernt? )
c) welches Programmier programm empfehlt ihr für den Einstieg?
d) Allgemeine Tipps von euch noch?

Wisst ihr wo man das programm Java Sun-One vielleicht bekommt im web? Weil das nächste jahr möchte ich ins ITG gehen und ich habe ein Freund der dort ist, er hat mir gesagt das die dort mit dem Prog. arbeiten!
Möchte mich halt gut vorbereiten!! :D 8)

Thanks

redfalcon 16.11.2004 17:21

Ist das deine erste Programmiersprache? Wenn ja haste keinen leichten Einstieg gewählt...Fang lieber erstmal mit HTML (Ja, ich weiss,ist keine Programmiersprache) oder Java an.

Gast 16.11.2004 17:24

Kennst doch dann sicherlich Java sun one??

redfalcon 16.11.2004 17:30

Ich kenn Java, ob Java Sun One das gleiche ist weiss ich nicht. Für Java brauchste auf jeden Fall ein Java-SDK und nen Editor, da kann cih dir den "Java-Edit" Empfehlen.

Stuttgarter17 16.11.2004 17:35

und bekomme ich das alles auch irgendwo im web?
Wie funktionert das Prog.? muss ich einfach ins editor eigeben oder ??? Gibt es auch Erklärungen (buch)??

Jlagreen 16.11.2004 17:44

also ich behaupte mal, dass man als Informatiker dasselbe können muss wie jeder Ingenieur auch:

1. Problem analysieren und abstrahieren
2. Informationen suchen und per Morphologischen Kasten (ne Art Brainstorming) Lösungen suchen
3. Bewertung der Lösung und Entscheidung für EINE
4. Entwurf dieser Lösung
5. abschliessende Bewertung und Umsetzung

gut ist etwas stark ausführlich, nur würde ich das Programmieren hier auf Punkt 5 begrenzen, da es sonst nicht gebraucht wird und kannst mir glauben, denn ich kenne einige Informatik-Studenten und Programmieren erwähnen die nicht, da diese Fächer für sie ziemlich leicht sind :wink:

worauf ich hinaus will ist, dass es eigentlich vollkommen egal ist mit welcher Sprache du anfängst zu Programmieren, es kann auch das uralte QBASIC sein, oder wie wir grad in der µC-Vorlesung (Mikrocontroller :lol: ) Assembler einsetzen, entscheidend ist vielmehr, dass du lernst wie man ein Problem "richtig anpackt", bsp. weiss ein KFz-Mechaniker wie man Autos repariert, aber er kennt nicht jedes Auto oder? :wink:

zu dem ist C/C++ nicht gerade die einfachste Sprache, klar sie wird eben am häufigsten eingesetzt, da sie recht effizient ist, aber Sprachen wie Pascal oder Java sind meiner Meinung nach zum Lernen des "Programmierens" wesentlich besser geeignet

abschliessend noch Antworten zu deinen Fragen:

1. wenn dann bitte gleich C++ mit Klassenprogrammierung, da der Umstieg von C auf C++ für viele Probleme bereitet

2. in dem du dir eine Aufgabe stellst und versuchst diese zu Lösen (bei mir war es ein Taschenrechner, den ich ihn Delphi/Pascal programmiert habe), in den Büchern kannst du nach möglichen Lösungen suchen, aber *richtig* Programmieren lernen ist für nen Einsteiger damit schwer

3. das ist eigentlich egal, wenn es konsolenbasiert ist, kannst du eigentlich jeden C++-Compiler verwenden, bei Windows verwende ich persönlich Visual Studio C++ (6.0 oder .NET)

4. siehe oben 8)

PS:
habe viel geredet, bin aber kein Informatik-, sondern Mechatronik-Student, was aber nicht heißt, dass ich ned weiss wie man Infromatik schreibt :twisted:

redfalcon 16.11.2004 17:53

[quote=Stuttgarter17]und bekomme ich das alles auch irgendwo im web?
Wie funktionert das Prog.? muss ich einfach ins editor eigeben oder ??? Gibt es auch Erklärungen (buch)??[/quote]

Kriegst du alles im Web, google einfach mal danach. Dann gibst du halt den Code in den Editor ein. Gratis (JA, legale!) E-Books zu Java und Co gibts [url=http://www.galileocomputing.de/katalog/openbook]hier[/url]. "Java ist eine Insel" soll garnet so schlecht sein.

Stuttgarter17 16.11.2004 17:57

ich habe schon mal mit c++ builder 1 ein fenster programmiert!!! ´Da war es ja einfach ein fesnter zu programmieren weil ich den Programm nur abgeschriben habe!! Aber nacher habe ich dann nicht mehr kapiert wie ich das Fenster schreiben soll also ohne diesem vorgeschriebenem programm!

Können die Programmierer eigentlich alles auswendig mit dem programm schreiben oder ist das falsch was ich denke??? Also das programmiere einfach z.b. wenn sie eine Aufgabe bekommen den Programm auswendig schreiben können? oder braucht man wirklich solche vorgeschrieben Programme?

War jetzt schwer gerade das was ich gedachte habe auszudrücken hoffe ihr habt des kapiert was ich gemeint hab! :D :? :P

Stuttgarter17 16.11.2004 18:00

[quote=redfalcon][quote=Stuttgarter17]und bekomme ich das alles auch irgendwo im web?
Wie funktionert das Prog.? muss ich einfach ins editor eigeben oder ??? Gibt es auch Erklärungen (buch)??[/quote]

Kriegst du alles im Web, google einfach mal danach. Dann gibst du halt den Code in den Editor ein. Gratis (JA, legale!) E-Books zu Java und Co gibts [url=http://www.galileocomputing.de/katalog/openbook]hier[/url]. "Java ist eine Insel" soll garnet so schlecht sein.[/quote]

Da gibt es jetzt 2 von en programm die du meinst mit der insel!!
In der BEschreibung stand drin das es ganz gut für Einsteiger mit Programmierkenntniss geeignet sei! leider habe ich noch keine Kenntnise!

redfalcon 16.11.2004 18:04

Nimm das obere (Programmieren für die Java 2-Plattform in der Version 1.5/5 (Tiger-Release). Ist die aktuellere Version.

Jlagreen 16.11.2004 18:04

[quote=Stuttgarter17]
Können die Programmierer eigentlich alles auswendig mit dem programm schreiben oder ist das falsch was ich denke??? Also das programmiere einfach z.b. wenn sie eine Aufgabe bekommen den Programm auswendig schreiben können? oder braucht man wirklich solche vorgeschrieben Programme?[/quote]

wäre schön, wenn ich alle C++-Funktionen und die MFC-Klassen *auswendig* kennen würde :wink:

ein Programmierer hat ein Problem, das es zu Lösen gilt, also überlegt er sich die *allgemeine* Lösung (zb. Speichern einer Datei, da gibts nänmlich einiges was allgemein immer gilt) und sucht sich dann ne Programmiersprache aus (hängt von vielen Faktoren ab, wie eingesetztes System usw.) und versucht dann herauszufinden wie man die *allgemeine* Lösung in der gewählten Programmiersprache umsetzen kann, das kann man bsp. übers Web, Referenzbücher oder *anderen* Programmieren erfahren 8)

Abschreiben ist OK und zu Beginn wirst du das wohl häufiger machen, nur solltest du möglichst bald verstehen, was du da abschreibst, deswegen ist ja wohl das Abschreiben in der Schule sinnlos oder :wink:

Stuttgarter17 16.11.2004 18:06

auf jedenfall!

Ist eigentlich die Reihenfolge im schreiben eines Programms egal?? in den Zeilen? ob eine zeile vorher oder nacher???

Jlagreen 16.11.2004 18:12

verstehe nicht ganz die Frage, aber sage mal lieber trotzdem *NEIN*

zumindest werden die Befehle Zeile für Zeile kompiliert und abgearbeitet, da sollten die schon in der richtigen Reihenfolge stehen, wenn der gewünschte Effekt auftreten soll :wink:

tele 16.11.2004 18:14

Jlagreen

ich muss sagen - tolle erklärung besser hätte ich es als informatiker aus dem Stehgreif net erklären können

und ich muss sagen - mit C++ gleich einzusteigen? hmm bezweifel ich ob das so gut ist.

meiner meinung nach is es schon okay wenn man sich erstmal die prozeduralen sprachen wie pascal oder C reinzieht um ein wenigh gefühl dafür zu haben.

Objektorientierung an sich ist auch meist das, was man in Büchern und Onlie tutorials gerade NICHT lernt - weil die authoren dieser komsciherweise alles in die main() funktion bei C++ und die klasse die die main() beinhaltet bei java packen (seeehr objektorientiert)


und ich kann auch nicht alles was ich mache (hauptsächlich java) ausm kopf - wozu auch - bei java gibt es eine sehr gute Referenz von Sun die immer beim proggen daneben liegt.

Aber die Konzepte der Sprache und der Programmierart solte man schon drauf haben (z.b. das man dynamischen polymorphismus net für ne krankheit hätl :lol: :wink:)

Stuttgarter17 16.11.2004 18:16

also habe gerade ein buch im web gefunden zum einstieg ins programmieren das progr. heißt C++ für Kids (bin aber kein kind, denk mal das es besser für den einstieg ist!)
Objektorientierte Programmiereung für Einsteiger!

Kennt ihr das Progr?
Ist das zu empfehlen?

Was heißt den dynamischen polymorphismus

Jlagreen 16.11.2004 18:21

ah ein AI'03 :), bin ein IME'03, schade nur, dass nicht in Mannheim und ned in Stuttgart :|, sonst könnte man sich ja mal in der Mensa treffen :wink: *

[quote=telepornos]
Objektorientierung an sich ist auch meist das, was man in Büchern und Onlie tutorials gerade NICHT lernt - weil die authoren dieser komsciherweise alles in die main() funktion bei C++ und die klasse die die main() beinhaltet bei java packen (seeehr objektorientiert)
[/quote]

*dick unterschreib*

kurios in unserem Kurs war, dass für sehr viele C einfach "grauenhaft" war, aber C++ sehr einfach zu verstehen und daher auch im C-Kurs der Schnitt bei 3,2 und beim C++-Kurs 1,8

----
*
AI = BA-Student für Angewandte Informatik
IME = BA-Student für Mechatronik

tele 16.11.2004 19:11

hm AI03 bezeiht sich eher auf AI03N-M und das ist ne IBM bezeichnung für ne ausbildungsgruppe

komischerweise aber für einen AI Studiengang an der BA :wink:

meine eigentliche BA bezeichnung ist jetzt TCS03 (weil irgendsoeintrottel halt meinte internationale müsse man neu bennen)

egal wir schweifen vom topic ab

das mit dem c könnte daran liegen, dass OO wirklichkeitsnäher und dadurchvielleicht freundlicher ist - um diese ansicht aber sofort zu bekommen bedarfes wirklich professioneller einführung

Stuttgarter17 16.11.2004 19:21

teleporno habe dir eine pn anfrage geschickt aber hast net darauf geantwortet vieleicht antwortest du ja im thread darauf!

Du bist ja ein Informatiker hast du gesagt!

Kannst du mir vielleicht sagen was dein alltägliches leben bei der arbeit ist?
Also was machst du und was für aufgaben hast du??

Mir ist es nämlich lieber wenn mir einer antwortet der in dieser arbeit tätig ist und nicht solche informations vom Arbeitsamt!

Mr. Puzzy Marty 17.11.2004 18:20

[quote=telepornos]
kurios in unserem Kurs war, dass für sehr viele C einfach "grauenhaft" war, aber C++ sehr einfach zu verstehen[/quote]

Komisch. Bei mir ist es genau andersherum.^^
Ich mag Objekte nicht sonderlich.

@Stuttgarter. Du solltest dir vielleicht erstmal klar werden was du denn programmieren willst. Der Begriff Informatiker umfasst sehr viele themengebiete.

Willst du später mal Anwendungen entwickeln? Für Windows? Für Linux oder was anderes?
Willst du vielleicht eher Hardware programmieren oder doch eher Sockets(kurz und realtiv falsch: Internetfähige Programme),...

Dafür solltest du mal im Web suchen oder es dir selber überlegen. Wenn du das grob weisst, dann ist vorerst wohl eher egal was du lernst, hauptsache die Sprache hat ein bischen Bezug zu deinem Wunschgebiet.

Auch solltest du dir keinen allzu schweren Anfang aussuchen. war für mcih zwar kein Problem(nein bin kein Übermensch, aber hatte eine sehr starke Motivierung von außerhalb die ich jetzt nicht unbedingt erwähnen will)

Bei Anwendugen für private user empfiehlt sich wohl Java und C++. Bei Java würde ich mir einmal Eclipse anschauen. Ist eine ziemlich geile IDE.

Wenn du Hardwareprogrammierung bevorzugst solltest du dir hauptsächlich C und Assembler anschauen.

Für logische Sachen wie KI hauptsächlich Prolog.

Wenn du dir jetzt gar nicht einig wirst, dann ist es auch nicht so schlimm. Lerne Java einigermaßen und dann wirst du auch soweit sein selbst zu entscheiden was du machen willst. Beim studieren musst du sowieso fast alles lernen, bzw. versuchen oder damit arbeiten.

grüße

Stuttgarter17 17.11.2004 20:35

möchte später programme bzw games programmieren bei EA :o :lol: 8) oder so!!!

Was meint du mit einer Eclipse?? bzw. ist es ein spez. progr.?


Was ist es den was du nicht erwähnen möchtest?? Was soll dir den von ausen geholfen haben?? Aliens :) :wink: ?

Mr. Puzzy Marty 17.11.2004 21:18

Ja das ist sozusagen eine graphische Anwendung, die dir vielerlei Funktionen und kleiner Programme zur Verfügung stellen.
Vielleicht hast du ja schonmal was von Visual C++ von MS gehört. Sowas ist das, nur für Java.
Kurz: Ein Programm mit dem du deine Java-Programme schreiben/entwickeln kannst und dies sehr komfortabel und [u][i]kostenlos[/i][/u]

Für Spiele solltest du auf jeden Fall C++ beherrschen. Trotzdem bist du mit Java wohl vorerst sehr gut dran. Du lernst nicht umsonst, da es ja auch Objektorientiert ist und es bietet dir einen guten Einstieg in die objektorientierte Programmierung.

Und wer weiss. Vielleicht ist Java bis nach deinem Studium schon so weit, dass es auch für Spiele taugt. Momentan ist es einfach noch zu langsam, aber es hat eine sehr große Community, die Java sehr schnell weiterentwickeln.

grüße

tele 17.11.2004 23:22

[quote=Mr. Puzzy Marty]
Willst du vielleicht eher Hardware programmieren oder doch eher Sockets(kurz und realtiv falsch: Internetfähige Programme),...
[/quote]

nicht nur relativ, sondern komplett falsch


sockets sind eine konkardinierung aus Protkoll, ip adresse und port.

mit einem Socket kann man einen dienst auf einem bestimmten Systemgenau ansteuern, insofern es sich um den TCP/IP oder UDP/IP protkoll-stack handelt

bsp: [url]http://192.168.0.1:80[/url]

würde den webserver auf 192.168.0.1, auf dme port 80 ansteuern

was du meinst, ist ien programm, welches Sockets BENUTZT.

[quote=Mr. Puzzy Marty]
Dafür solltest du mal im Web suchen oder es dir selber überlegen. Wenn du das grob weisst, dann ist vorerst wohl eher egal was du lernst, hauptsache die Sprache hat ein bischen Bezug zu deinem Wunschgebiet.

Auch solltest du dir keinen allzu schweren Anfang aussuchen. war für mcih zwar kein Problem(nein bin kein Übermensch, aber hatte eine sehr starke Motivierung von außerhalb die ich jetzt nicht unbedingt erwähnen will)

Bei Anwendugen für private user empfiehlt sich wohl Java und C++. Bei Java würde ich mir einmal Eclipse anschauen. Ist eine ziemlich geile IDE.
[/quote]

wer mit java anfängt und sich als erstes Eclipse anschaut,dem ist imho nciht mehr zu helfen, bzw. ist der aufm holzweg - Java erfordert grundkenntnisse in OOP - vor allen was ist überhaupt Objhektorientierung - sonst gibt es ganz schnell einen schlechten java progger mehr

[quote=Mr. Puzzy Marty]
Wenn du Hardwareprogrammierung bevorzugst solltest du dir hauptsächlich C und Assembler anschauen.

Für logische Sachen wie KI hauptsächlich Prolog.
[/quote]
prolog? das is jetzt nicht dein ernst oder? ich miene klar- is lustig - aber damit anzufangen- freiwillig ist in etwa genauso toll wie toilette zu putzen

[quote=Mr. Puzzy Marty]
Wenn du dir jetzt gar nicht einig wirst, dann ist es auch nicht so schlimm. Lerne Java einigermaßen und dann wirst du auch soweit sein selbst zu entscheiden was du machen willst. Beim studieren musst du sowieso fast alles lernen, bzw. versuchen oder damit arbeiten.
grüße[/quote]

nö - beim studieren musste net alles lernen - sondern du musst die konzepte verstehen und anwenden können und das ist auch der grund, wo die meisten bücher versagen und tutorials sowieso, denn dann wirds zum code-kopieren

Mr. Puzzy Marty 18.11.2004 12:43

Oh Gott! Tut mir leid habe ziemliche Mist geschrieben, das stimmt, aber da haben sich auch schon andere foren beschwert(wegen gestern war wohl nicht ganz bei der Sache).

Ich meinte natürlich nicht Sockets Programmieren sondern wie du bereits gesagt hast ein Programm welches sockets benutzt.
Ich kenne mich da zwar auch nicht so genau aus, aber unter Linux habe ich schon 1-2 Mal mit welchen gearbeitet.

Zu Eclipse: Ich halte es für sehr gelungen und ich habe auch nie behauptet, dass man alle Funktionen benutzen muss. Ist doch wie bei VC++. Es ist ja nicht zwingend erforderlich MFC zu benutzen oder verstehe ich dich da bezüglich Java falsch?

Zu KI:
:roll: Was ich meinte war Python(war gestern wohl echt daneben). habe schon öfters gehört es soll sich prima für KIs sein. Ich habe mich bei meiner Auflistung der Gebiete aber auch nicht darauf bezogen mit was er anfangen sollte, sondern wollte nur einen ganz kurzen überblick geben.

Zum Studium:

Also die 2-3 Leute die ich kenne und momentan studieren, sagen sie werden wohl so ziemlich alles an bekannteren Sprachen durchnehmen.
Natürlich nicht komplett beherrschen oder auch nur verstehen, aber halt durchnehmen. Ich habe Suttgarter jetzt so verstanden, dass er sich möglichst gut aufs Studium vorbereiten will...

MfG

Stuttgarter17 18.11.2004 14:56

nicht nur das ich mich darauf vorbereiten will sondern,
ich will versuche wenn z.b. wenn mir einer sagt das er ein programm bzw. game nach seinen vorstellungen hat und ich dann beim programmieren keine probleme bekomme!

Kurz gesagt möchte das Prinzip lernen!! Weil ich habe ein fenster programmiert und nur den editor code kopiert, aber wirklich kapiert habe ich nicht wie es funktioniert oder wie ich ein fenster programmieren soll ohne diesen vorgeschrieben code............
Möchte deswegen leren wie ich ein code ohne probleme schreiben könnte .......................

Ich möchte auf jeden fall später mit C++ perfekt arbeiten.
Empfehlt mir einfach bücher bzw sonsitges die für den anfang simple sind.

Denke mal das Java am anfang leichter ist zu lernen als C++. Aber wenn ich java nehmen wir mal an dann kann und C++ lernen möchte, war es dan überhaupt noch sinnvoll das ich java gelernt habe?? Ob es mir hilft besser in C++ einzusteigen............?

Mr. Puzzy Marty 18.11.2004 15:35

Auf jeden Fall!
Du lernst eine Sprache eigentlich nie umsonst, sie kann dir immer nützlich sein!
Natürlich wäre es effektiver, jetzt gleich C++ zu lernen, aber der Weg ist auf jeden Fall schwerer, bzw nicht schwerer zu erlenen, aber C++ ist in der Anwendung schwerer als z.b Java.
Und wenn du wirklich programmieren willst, dann wird es nicht bei einer Sprache bleiben, sondern mind. wohl noch eine neben C++ geben. Ansonsten wird es auch langweilig.

Im Übrigen. Es ist kein Pappentstil ein Spiel zu programmieren(also ein einigermaßen anspruchvolles). Das wirst du wohl auch nicht alleine schaffen können. An einem guten Spiel arbeiten meist mehrere teams, aber das wirst du alles noch selbst herausfinden.

Am besten fängst du jetzt einfach mal mit irgend einer Sprache an,(Beim überlegen nach der richtigen Sprache verliert man für meinen Geschmakc zu viel Zeit) von mir aus auch C++, aber du darfst ja nicht den Mut verlieren!

Besorge dir ein gutes Buch und ein paar Tutorials über c++.
Eigne dir die Grundlage an und was wichtig ist, mache immer die Übungsaufgabe. Ich hatte einige Zeit lang das Problem, dass ich immer dachte ich könnte das eben behandelte und hatte zum Schluss hin keine Praxis.
Wenn du die Grundlagen drauf hast, dann überlege dir vielleicht mal ein Programm, dass du ganz nützlich finden könntest, aber was kleines. Es darf ruhig anspruchsvoll sein, jedoch nicht so, dass du gar nicht weisst wie man es lösen könnte.
Su setzt dich dann ran und versucht das Programm zu schreiben. Immer wenn du nicht weiterkomsmt liest du im Buch das entsprechende nach, googlest ne Runde oder fragst hier nach.
Ich finde, dass ist der effektivste weg zu lernen. es wird nicht langweilig da man immer ein ziel hat, man prägt sich sachen besser ein, weil man die Praxis hat und zum Schluss kommt vielleicht was nützliches dabei raus auf das man auch noch stolz sein kann. Irgendwann fängts dann wieder mit dem sturen lesen an, wenn du wirklich große Probleme be ewas hast, aber bis du soweit bist wirst du das dann alles selbst managen.

Wie gesagt, so würde ich es machen, bzw. so habe ich es unter anderem gemacht.
Wenn jmd gar nicht mit einverstanden ist, dann kann er es ja posten, aber nicht vergessen, dass es halt nur meine Meinung ist

greets


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:46 Uhr.

Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.