WinFuture-Forum.de: [Empfehlung] Wie kann ICH am besten weiter lernen? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 2 Seiten +
  • 1
  • 2

[Empfehlung] Wie kann ICH am besten weiter lernen?


#1 Mitglied ist offline   flymia 

  • Gruppe: aktive Mitglieder
  • Beiträge: 119
  • Beigetreten: 25. Dezember 11
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Köln

geschrieben 09. April 2013 - 16:07

Hallo Forum,

jaaaa...ich weiss. Diese Frage gibt es schon oft auf jeglichen Webseiten. Jedoch möchte ich eine persöhnliche Antwort bei der Frage:

Wie kann ich am besten Programmiersprachen lernen?

Zu mir:
Ich bin jung. Also noch unter 18. Ich habe bereits einige ganz kleine Anwendungen unter Visual Basic geschrieben (Catch-Me-If-You-Can Spiel (mit Buttons), Registrierungsformular mit Variablen, usw.), hab aber dennoch (so fühle ich es) wenig Ahnung. Also Wenn mir einer sagen würde: Schreib ein Programm das Text automatisch formatiert (ich weiss, blödes Beispiel). Ausserdem habe ich eine YouTube Reihe gesehen, wie man mit C# und XNA Framework ein 3D Spiel erstellt und nachprogrammiert. Diese Videos sind zwar interessant aber verstehen tuh ich von dem Code kein bisschen. Z.B.: Wieso macht der Tutor diese Klasse nun Public oder was ist "Vector3".

Meine Ziele:
-Ich möchte eine Programmiersprache lernen. (Entweder Java oder C++)
-Ich möchte selbständig KOMPLEXE Software entwickeln. Z.b. zusammen im Team mit Freunden ein kleines Spiel (2D)

Bereich:
-Spieleprogrammierung
-Anwendungsprogrammierung (K.A. wie man das nennt, also normale Programme)

Also wieder meine Frage: Wie fang ich am besten an?
1.Nur Tutorial Videos bringt anscheinend nicht, weil ich nicht wirklich denke, das man da was richtig lernen kann.
2.Einen Kurs belegen? (VHS, etc.)
3.Buch lesen (Java ist auch eine Insel, etc. (Hab ich übrigens))
4. Eure Vorschläge?

Falls ihr noch Fragen habt: Einfach fragen. Währe nett wenn ihr mir helfen könntet.

LG Marc
Euer WinFuture-Fan flymia!
Eingefügtes Bild
0

Anzeige



#2 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 09. April 2013 - 16:26

Programmiersprachen sind auch nur Mittel zum Zweck. Was Du brauchst, ist eher Lektüre in Richtung "Wie setze ich ein Problem auf dem Rechner um?"

Müßte da allerdings grad etwas passen, was konkrete Lektüre angeht. Denke aber, auf TechNet sollte sich da eine ganze Menge finden lassen.


Aber Programmiersprachen selber sind da Dein kleinstes Problem. Eher eine gute Vorstellung, was Aktion X letztlich für ein Resultat Y ergibt und WARUM, damit Du das auch anwenden kannst.

Banalstes Beispiel: Brüche. Warum ist 2/5 auf dem PC nicht berechenbar?
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#3 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 12. April 2013 - 00:51

Wenn du bereits ein Buch hast, dann nehm das. Java ist sehr verbreitet und damit kannst du viel anfangen (Android Apps, Linux/Windows Tools). Die Sprache ist nicht so schwer und wenn man eine Sprache relativ gut kennen gelernt hat, lernen sich andere Dinge in dem Bereich leichter. Ruhig mal die Sprache gut lernen.

Such dir aber mal Übungsmöglichkeiten. Als ich C/C++ gelernt habe, hatte ich immer Übungsaufgaben gemacht. Das ist wichtig. Viel machen und basteln.

@RalphS: Bin da nicht ganz deiner Meinung. Die Sprache Java gut kennen zu lernen ist ein wichtiger Schritt. Wenn man sich näher damit beschäftigt kommt man automatisch mit weiteren Themen in Verbindung die dann auch viele Fragen klären. Zwangsläufig begegnet er Dingen wie Hibernate, ZACK schon haben wir ORM auf dem Tisch. Dann gibt es JUnit womit man wieder etwas neues kennen lernt. Diese Dinge dann zu kennen führt automatisch dazu bestimmte Fragen beantworten zu können. Ich sehe daher den theoretischen weg wie immer für den weniger nützlichen.

Grüße
XD
0

#4 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 12. April 2013 - 01:11

Und ich stimme Dir da nicht so ganz zu :wink:

Klar ist JAVA einfach, und man kann viel damit machen. Aber OO ist (mE) zum Lernen weniger gut geeignet, weil man da ja nichts umdenken muß, sondern einfach seine Planung "umschreibt". Außerdem frißt JAVA unnötig viel Ressourcen, man braucht eine JRE, etc pp.

Aber so eine Grundsatzdiskussion führt natürlich zu nichts, da müssen wir glaub ich nicht mit anfangen. :wink:

Auf jeden Fall gehe ich soweit mit, daß Theorie ohne Praxis nichts bringt. Ich denk halt nur, daß man ein gewisses Grundverständnis haben muß... und das leitet sich nicht aus Programmiersprachen her (egal welcher).
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#5 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 12. April 2013 - 08:24

Was meinst du mit "umdenken"? Was muss man bei nicht-OO "umdenken", wo man bei OO einfach "umschreibt"? OO ist ein wunderbares Konzept, dass sehr wichtig ist und eines der ersten Dinge ist, die man beim Programmieren verstanden haben sollte. Das Thema Ressourcen finde ich zunächst nicht wichtig. Für Spiele-Programmierung könnte aber C++ sicher die bessere Wahl sein.

Das Grundverständnis leitet sich zwar nicht aus Programmiersprachen her, jedoch ist es leichter diese zu verstehen, wenn man ein wenig Programmieren kann.
0

#6 Mitglied ist offline   Lastwebpage 

  • Gruppe: aktive Mitglieder
  • Beiträge: 516
  • Beigetreten: 26. Dezember 07
  • Reputation: 46

geschrieben 12. April 2013 - 12:31

Wenn du nur so programmieren willst und bis auf Visual Basic wenige Ahnung hast, würde ich mir zuerst intensiv die Frage stellen ob Java, C++, C# wirklich die richtige Wahl ist um das weiter zu vertiefen.

a) Sehr vieles ist heute nun mal Web-Basiert. (Nein, nicht Webseiten mit einem Java Applet :D )

b) C# vs. VB.net ja es gibt schon Unterschiede, nur irgendwie, naja, wenn du eh unter Windows programmierst, hmmh, nein nicht wirklich. Da muss man schon etwas länger suchen bis man etwas findet was nur in C# geht. Auf der anderen Seite, viele Sachen unter Windows laufen nur unter VB. Z.B. MS Office Makros, Scripts etc. Nein, wenn ich VB.NET gut könnte, würde ich eher da die Kenntnisse vertiefen bevor ich C# oder Java anfange. Unter Linux und MacOS sieht das aber wieder anders aus.

c)Viel hilft viel. Such mal mit Google irgendein allgemeines, also nicht sprachspezifisches, Forum über Programmierung. Es ist durchaus eine berechtigte Frage ob man einer unter den Vielen der 95% sein möchte oder dann doch lieber ein Experte bei den 5%. Wobei das in Sachen "Anfängerhilfe" bei den 5% natürlich eventuell ein Problem ist.

Was ich heutzutage lernen würde?
Unter Windows auf jeden Fall VB und dann noch eine von den 5%.
Welche genau? Tja, das kann ich die nicht so 100% beantworten. Z.B. gab mal eine Zeit wo ich mich wesentlich intensiver mit Jabber/XMPP (ein offenes Instant-Messaging und andere Dienste Protokoll) beschäftigt habe als Heute, da habe ich mir den "Exoten" Erlang mal näher angeschaut, ich bin da aber nicht intensiver eingestiegen wegen Jabber selber.
0

#7 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 12. April 2013 - 12:45

Als unter Windows wäre ich für C#. Das ist die von Microsoft derzeit am meisten (auch intern) verwendete Sprache. Viele viele Tutorials über WPF (worauf Windows inzwischen basiert) sind meistens in C# geschrieben. Klar gibt es converter etc., aber ich behaupte es ist einfacher mit C# unterwegs zu sein. Auch wenn man dann mal auf Java/C++ übergehen will.
0

#8 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 12. April 2013 - 15:39

Was man bei OO nicht umdenken muß? Ist die Frage ernst gemeint? :unsure:

- Objekt-orientiert != Prozedural != Funktional != Imperativ.

Planst Du ein Programm, ist das IMMER objektorientiert: Hier habe ich einen Programmteil, dort habe ich einen Programmteil, so und so und so müssen die lt. Spezifikation miteinander kommunizieren können.

Das kannst Du in OO einfach so abschreiben.

In C nicht.

In VB auch nicht.

In C++ diskutieren wir lieber nicht, das kann man durchaus OO verstehen.


Dazu kommt natürlich noch, daß OO mit Abstand den *ineffizientesten* Maschinencode liefert. *schüttel* Da ist alles andere schneller. Sogar Interpreter.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#9 Mitglied ist offline   flymia 

  • Gruppe: aktive Mitglieder
  • Beiträge: 119
  • Beigetreten: 25. Dezember 11
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Köln

geschrieben 12. April 2013 - 21:44

Also:

Ich denke ich entscheide mich für C#. Da C# ja mit Java sehr viel ähnlich hat (so wird es gesagt), werde ich, sobald ich dann C# einigermaßen kann auf Java umsteigen bzw. anfangen mich mit Java intensiver zu beschäftigen.

Ich belege bald einen Kurs über C++. Dann kann ich in die Sprache auch mal "reinschnuppern" :D
Wie ich dann C# lerne....das wird dann die andere Frage sein. Ich bin nicht davon überzeugt nur durch YouTube-Tutorials eine Programmiersprache zu lernen, wie es die meisten immer sagen. Auch von einem Buch bin ich nicht wirklich überzeugt. ABER WIE DANN? :D
Wie habt ihr Programmiersprachen gelernt?
Euer WinFuture-Fan flymia!
Eingefügtes Bild
0

#10 Mitglied ist offline   Holger_N 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.111
  • Beigetreten: 11. September 10
  • Reputation: 458
  • Geschlecht:Männlich

geschrieben 12. April 2013 - 23:16

Für mich sieht es fast zu aus, als weißt du noch nicht ganz genau, wo du hin willst. Ich will das mal verbildlichen. Die Frage ist hier gerade "Wie werde ich ein guter Musiker?" Der eine will möglichst viele Instrumente beherrschen, ihm reicht aber eine Musikrichtung. Der Nächste will nur ein Instrument spielen, das aber perfekt.
Man kann sich eine Gitarre kaufen und trainiert mit Youtube-Anleitungen sämtliche Spieltechniken bis man ein richtiger Virtuose ist aber wenn man in einem richtigen Orchester mitspielen will, sollte man vielleicht mit musiktheoretischen Grundlagen anfangen und auch die eine oder andere Note lernen.
Da ist ja keine Methode grundsätzlich richtig oder falsch, sie muß einfach nur zum Ziel passen.

Dieser Beitrag wurde von Holger_N bearbeitet: 12. April 2013 - 23:45

Bauernregel: Regnets mächtig im April, passiert irgendwas, was sich auf April reimt.
0

#11 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 12. April 2013 - 23:36

Kauf dir doch video2brain :) Sehr bequemer EInstieg. Mehr aber auch nicht.
Ich finde C# für den EInstieg auf nicht schlecht. Ist sehr easy die Sprache. Ich mein Java hat auch seine Vorteile. Da kommts dann auch auf die Platform an und wo du hin willst. Aber C# ist keine schlecht Entscheidung wenn du auf jeden Fall Windows bzw. Microsoft orientiert was machen willst.

@RalphS: Ich glaube wir haben hier ganz unterschiedliche Kriterien was für den TS sinnvoll ist. Hier geht es nicht um Compiler-Fragen und Optimierungstheorien. Da gibt es so viele Diskussionen zu dem Thema von Java bis Assembler. Das ist absolut nicht das Thema hier.

Ich sehe weiterhin kein Umdenken, es kommt schlichtweg auf die herangehensweise an und was man überhaupt machen will. So mancher IT-Systemadministrator hat so seine Schwierigkeiten OO zu denken. Alles eine Frage der Übund und wo man angefangen hat.
0

#12 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 13. April 2013 - 02:19

Sag ich doch, daß es für OO kein Umdenken gibt <_< Das ist ja der Witz. ;)

Holger hat ja im Wesentlichen schon alles gesagt. Letztlich läßt sich eine Frage "wie kann ICH das am besten lernen" (Betonung vom TO!) nicht beantworten; was das Beste für *einen selber* ist, muß man für sich selbst rausfinden.

Im Zusammenhang mit Programmiersprachen möcht ich nur noch anmerken: ich hab damals mit Pascal und HTML angefangen (lang isses her -_- ), das war alles recht einfach.

C# als PS hab ich auf der anderen Seite nie gelernt. Aber fünf Minuten angucken und ich hab da auch sicher drin programmieren können (okay, die erste Zeit mit Doku daneben). IntelliSense hat den Rest erledigt (wer kennt schon alle Klassen, Methoden und Eigenschaften auswendig).

Dieser Beitrag wurde von RalphS bearbeitet: 13. April 2013 - 02:21

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#13 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 13. April 2013 - 16:29

naja das seh ich wieder anders. ob java oder c#, man muss einige eigenheiten der sprachen kennen um hier von "sicherem" programmieren zu sprechen. linq z.B. lässt sich nicht einfach über angucken oder intellisense reden. gleiches gilt für lambda expressions. auch frameworks oder andere dinge (z.B. hibernate) für die sprachen gehören auch dazu. wenn man nur die syntax einer sprache kann, hat das mit sicherem coden nix zu tun. jedenfalls verstehe ich darunter professionelle sw-entwicklung.

ich hab doch gar nicht geschrieben, dass man für OO nicht umdenken muss. ich bin dabei geblieben: auch OO erfordert eine spezielle denkweise. jede herangehensweise ist nun mal anders. und it-admins denken eher prozedural als oo. so meine bisherige erfahrung. funktional denkt auch keiner. aber wer das von anfang an lernt, muss sich eher auf andere konzepte wieder einstellen.

ich denke die frage wie er am besten anfängt ist durchaus zu klären. niemand weiß am anfang wo er hin will. deshalb sind für mich auch weiterhin c# bzw. java die besten einstiegspunkte. beide sind populär (java evtl. etwas mehr) und damit überall zu gebrauchen. große communities und viel tutorials. letztendlich ist es eine frage der präferenz, ob man microsoft orientiert was machen will, oder eher linux/unabhängig. wobei wir hier websprachen völlig außen vor gelassen haben.

ich persönlich bleibe bei der empfehlung für c#. die entwicklungsumgebung ist für anfänger sehr leicht zu händeln.
0

#14 Mitglied ist offline   Kirill 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.590
  • Beigetreten: 04. Dezember 06
  • Reputation: 121
  • Geschlecht:Männlich
  • Wohnort:BT

geschrieben 09. Mai 2013 - 09:08

Ich kann man erzählen, wie ich am besten lerne.
1. Generische Programmierartikel im Newsletter von Codeproject
2. Generische Programmierartikel in den Codeproject-Artikeln
Beides hat den Zweck, dass man sieht, was überhaupt so geht. Wie man eine Gameloop aufbaut, beispielsweise.
3. Ein konkreter Einsatz
Ganz einfach: fang an. In der Regel weiß man am Anfang eines Projekts als Anfänger kaum, wie man was umsetzen kann. Aber das ist in Ordnung so. Einfach anfangen, danach weiß man mehr.
Most rethrashing{
DiskCache=AllocateMemory(GetTotalAmountOfAvailableMemory);}
0

#15 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 09. Mai 2013 - 09:23

Problem ist halt: eine Frage nach Schema "wie kann ICH am besten XXXX machen" läßt sich nicht beantworten. Das muß jeder für sich selber rausfinden.

* Lernt man am besten, wenn man die Theorie gut genug versteht?
* Oder ist man eher praktisch veranlagt (Learning by doing)?
* Gibt es da ein Konzept, was man besser versteht als andere?

Und so weiter. Wir können uns hier hinstellen und darüber sinnieren, was *einem selber* am ehesten liegt. Aber die Frage des TO beantworten wir damit leider nicht. :wink:


~ Beispielsweise schau ich mir grad die Microsoft Test Lab Guides an. Normal ist das ja eher nicht so mein Ding. Aber einfach mal an der Hand genommen zu werden um zu sehen, was es überhaupt erstmal zu sehen gibt, ist auch mal ganz nett, wie ich feststelle.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0