PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einstieg in C#


Dj-Atzy
2006-03-07, 07:16:19
Hallo,

Ich bin mal wieder verzweifelt:
Hab jetzt schon verschiedene Programmiersprache "gelernt" bzw. angefangen diese zu lernen.
Darunter gehören Delphi, Java und VB .NET.

Doch mit keiner war ich wirklich zu frieden - womöglich mangelnder Kentnisse meiner seits.

Nun bin ich bei C# angelangt und das ist ja anscheinend eine doch eher professionellere Sprache als VB und Delphi. Jetzt suche ich natürlich einen guten Einstieg und C#.

Aber jetzt kommt meine Frage:

Wie gehe ich das am Besten an?! Dumme und oft gestellte frage ich weiß.
Natürlich erstmal viele Online Tutorials durchlesen und drauflos programmieren was einem in den Sinn kommt.
Doch irgendwann ist Schluss, weil die Programme dann einfach zu komplex werden und ich keine Ahnung mehr hab wie ich das machen soll. (siehe meinen Thread: http://www.forum-3dcenter.de/vbulletin/showthread.php?t=280950)

Soll ich mir dann mal ein gescheites Buch kaufen?

Warte schon auf eure Meinungen.

MFG Klonkrieger2

BTW: Ja ich weiß das meine n00b Beiträge nerven, aber ich will jetzt da eindlich mal gescheit anfangen.

Fruli-Tier
2006-03-07, 13:04:41
Ein gescheites Buch ist immer eine gute Idee. Man muss von den offerierten Möglichkeiten, die eine Programmiersprache bietet, natürlich erst einmal wissen. Wo wäre so etwas besser aufgehoben, als in einem Buch mit Beispielen.

Nach Deinem Link zu dem Bilddaten-auslesen-Thread bin ich auch so frech und behaupte, Du steckst Dir Ziele, deren Weg Dir aufgrund von fehlendem Basis Wissen verschlossen bleibt. Anspruchsvolle Aufgaben sind ja schön und gut, mangelt es aber schon an der Basis, wird es schnell frustrierend.

Klein anfangen, und langsam hochschlafen. Auch solltest Du Dir angewöhnen, gerade bei umfangreicheren Sachen, vorher gründlich nachzudenken. Das erspart eventuell einigen Frust, wenn Du einfach losfrickelst und Dich irgendwann in eine Sackgasse manövrierst. Konzeptfehler sind die schlimmsten die man machen kann. Man sollte nicht nur das Jetzt betrachten, sondern auch einen Blick in die Zukunft wagen; was soll meine Klasse, mein Programm, mein sonstwas vielleicht noch können?

So wenig Spass das auch macht, es ist aber definitiv hilfreich!

Dj-Atzy
2006-03-07, 16:59:00
Erstmal Danke für deinen Beitrag.

1. Naja die !!Grund!!Basis fehlt mir nicht. Allerdings wenns dann bisschen komplexer wird, wie mit Arrays und dergleichen (keine Ahnung was es da noch gibt, aber bestimmt sehr sehr viel) hab ich dann halt keine Ahnung mehr. Und die meisten Online Tutorials stellen mich auch nicht zufrieden.

2. Das ist nicht frech, das ist die harte Wahrheit.

3. Wie lernt man eigentlich "richtig" programmieren? Muss man da Informatik studieren oder geht das auch so? Ich brauch und will jetzt da keine Kryptographie Sachen oder dergleichen schreiben, aber so "normale" Programme sollten ja drin sein oder?

4. Könntest du mir ein konkretes Buch oder einen Author empfehlen?

Marscel
2006-03-07, 17:37:29
3. Wie lernt man eigentlich "richtig" programmieren? Muss man da Informatik studieren oder geht das auch so? Ich brauch und will jetzt da keine Kryptographie Sachen oder dergleichen schreiben, aber so "normale" Programme sollten ja drin sein oder?

Learning by doing... Ein Buch beiseite haben, als Nachschlagewerk oder Ideenspender. Bis ich studiere, vergehen noch ein Menge Jahre, in der Regel hilft für private Sachen ein paar Konzeptpunkte und los gehts, umso eher man Probleme findet, umso besser.

SgtTynis
2006-03-08, 09:11:39
Ich schliesse mich da mal meinen Vorredner an: programmieren lernt man nur dadurch das man es tut; und da am besten in dem man ein konkretes Ziel vor Augen hat. Ein Buch fuer C#/NET habe ich nie besessen, obwohl ich praktisch taeglich mit damit zu tun habe. Mir war die MSDN was den Sprachumfang angeht immer Hilfe genug.
Eine guten Programmierstil lernt man unabhaengig von der Programmiersprache meist erst mal damit, das man einen Fehler gemacht hat, der mit einem guten Programmierstil nicht aufgetreten waere, und zum anderen durch den Willen es beim naechsten mal richtig zu machen. Anleitung findet man dann meist im Netz zu den konkreten Problemen, wobei man sich auch dort nicht mit dem erst besten Vorschlag zufrieden geben sollte. Eine allgemeine Richtline stellen die DesignPatterns da, wobei diese allerdings auf ganz konkrete Probleme nicht anwendbar sind, sich aber als Richtschnur sehr gut bewaehren.

SentinelBorg
2006-03-08, 10:08:41
Hallo,

Ich bin mal wieder verzweifelt:
Hab jetzt schon verschiedene Programmiersprache "gelernt" bzw. angefangen diese zu lernen.
Darunter gehören Delphi, Java und VB .NET.

Doch mit keiner war ich wirklich zu frieden - womöglich mangelnder Kentnisse meiner seits.

Nun bin ich bei C# angelangt und das ist ja anscheinend eine doch eher professionellere Sprache als VB und Delphi. Jetzt suche ich natürlich einen guten Einstieg und C#.

Aber jetzt kommt meine Frage:

Wie gehe ich das am Besten an?! Dumme und oft gestellte frage ich weiß.
Natürlich erstmal viele Online Tutorials durchlesen und drauflos programmieren was einem in den Sinn kommt.
Doch irgendwann ist Schluss, weil die Programme dann einfach zu komplex werden und ich keine Ahnung mehr hab wie ich das machen soll. (siehe meinen Thread: http://www.forum-3dcenter.de/vbulletin/showthread.php?t=280950)

Soll ich mir dann mal ein gescheites Buch kaufen?

Warte schon auf eure Meinungen.

MFG Klonkrieger2

BTW: Ja ich weiß das meine n00b Beiträge nerven, aber ich will jetzt da eindlich mal gescheit anfangen.
Verabschiede dich erstmal von der Idee, dass C# eine professionellere Sprache ist, als Delphi oder VB.Net. Wenn du alle drei Sprachen in der neusten .Net Version hast (also VB und C# von VS2005), dann können sie alle so ziemlich das gleiche. Genau genommen, ist die Programmiersprache bei .Net ziemlich unwichtig, zentral ist die Beherrschung des Frameworkes und der Programmierung an sich. Die Sprache ist mehr eine Geschmacksfrage.
Und wenn du nun schon mit Delphi und VB nicht zurecht kamst, ist zu bezweifeln, dass du mit C# irgendwie weiter kommst. Genau genommen, ist von den drei Sprachen C# als kryptischste am schwersten zu erlernen, während Delphi deutlich strukturierter (und reglementierter) und VB umgangssprachlicher ist.

Sentinel

Fruli-Tier
2006-03-08, 11:05:12
Erstmal Danke für deinen Beitrag.

1. Naja die !!Grund!!Basis fehlt mir nicht. Allerdings wenns dann bisschen komplexer wird, wie mit Arrays und dergleichen (keine Ahnung was es da noch gibt, aber bestimmt sehr sehr viel) hab ich dann halt keine Ahnung mehr. Und die meisten Online Tutorials stellen mich auch nicht zufrieden.

Arrays sind Grundwissen. Ein ganz normaler String ist nichts anderes als ein Array aus Characters/einzelnen Zeichen. Das lernt man selbst in der Berufsschule schon sehr bald (die Arrays, nicht was ein String ist).


3. Wie lernt man eigentlich "richtig" programmieren? Muss man da Informatik studieren oder geht das auch so? Ich brauch und will jetzt da keine Kryptographie Sachen oder dergleichen schreiben, aber so "normale" Programme sollten ja drin sein oder?
Learning by doing, wie schon gesagt. Steck Dir ein bestimmtes Ziel, überlege, ob Du mit Deinem jetzigen Wissen dort überhaupt hinkommen kannst, und dann lege los.

Setze Dir ruhig ein ehrgeiziges Ziel, mache aber kleine Schritte, um es zu erreichen. Nicht sofort und auf einmal alles können wollen, manchmal ist es eben notwendig, mittendrin abzubrechen und an Grundlagen zu arbeiten, bevor es weitergehen kann.

Beispiel:
Du willst - wie Du es schon versucht hast - ein Anwendung, die Pixeldaten liest und in der Datenbank speichert.

Fange mit den Pixeldaten an, schreibe sie versuchsweise schon einmal auf Festplatte (einfache Textdatei), sozusagen den Datenbankaufruf faken, und wenn das rennt, beschäftige Dich mit SQL, schreibe dazu ein paar kleine Testprogramme, bis Du die Verwendung verstanden hast und übertrage dieses Wissen dann in die eigentliche Anwendung.


4. Könntest du mir ein konkretes Buch oder einen Author empfehlen?
Sry, ich bin auf Arbeit eigentlich C++ Entwickler und spiele nur privat mit C# aus Neugier und Spass ein wenig rum. Was das angeht, verlasse ich mich ebenfalls auf die MSDN Library.

----------------------------

Programmieren ist eine Art zu Denken, die Sprache nur Mittel zum Zweck, also Mittel, um die Gedanken in Form von Problem-lösenden Algorithmen nieder zu schreiben. Wenn Du einen logischen Weg gefunden hast, wie man ein Problem löst, dann ist es mit jeder Sprache relativ ähnlich dieses Problem zu lösen. Die Funktionen werden zumeist ein wenig anders heissen und die Syntax wird sich auch unterscheiden. Der Grundgedanke ist aber immer gleich. Dieses Denken lernt man eben nur durch Probieren.

Hilfreich ist es auch, wenn man sich schon existierenden Code zu einem Problem ansieht und versucht das zu verstehen. Eventuell versuchst Du am besten, das Problem selbst zu lösen und vergleichst dann Deine Lösung mit der schon fertigen. Wobei Du hier beachten solltest, dass eine andere Lösung nicht unbedingt besser sein muss als Deine eigene.

Coda
2006-03-08, 11:22:56
3. Wie lernt man eigentlich "richtig" programmieren? Muss man da Informatik studieren oder geht das auch so? Ich brauch und will jetzt da keine Kryptographie Sachen oder dergleichen schreiben, aber so "normale" Programme sollten ja drin sein oder?Du wirst lachen, aber es gibt viele die Informatik studiert haben und es danach immer noch nicht können. :rolleyes:

Gast
2006-03-08, 12:21:40
Du wirst lachen, aber es gibt viele die Informatik studiert haben und es danach immer noch nicht können. :rolleyes:
Noch mehr kann man lachen, wenn man selbst studiert hat. Ich werde ständig angesprochen : He, Du hast das doch studiert, du musst das doch wissen ! - nein.

Wenn man wirklich Interesse an der Sache hat und sich privat damit beschäftigt, kann man viel mehr und besser programmieren als nach einem Studium. Ich habe Informatik im Grundstudium 2 Semester gehört. Die Hälfte der Zeit verging mit sinnlosen Worthülsen, als Abschluß-Prüfung musste jeder ein eigenes Programm erstellen. Ich habe meine 1 ohne Probleme bekommen, würde aber nicht von mir behaupten wirklich programmieren zu können. Theorie und Praxis sind zwei grundverschiedene Dinge, die zusammenzuführen oft sehr schwer fällt. Daher : Versuch macht klug.

Learning by doing ist ohnehin das besste Konzept : Du stößt selbst auf Grenzen/Fehler und bist von Dir aus motiviert diese zu überwinden. In einem Studium wird Dir die allgemeine Lehrmeinung als Stand der Technik hergebetet. Das nützt Dir in einem konkreten Fall herzlich wenig.

Dj-Atzy
2006-03-08, 14:08:54
Also erstmal vielen Dank für eure Antworten.

Ich hab jetzt draus gelernt, dass learning by doing das beste ist. Und das immer in kleinen Schritten.

Hab jetzt ne gute C# Guide Seite gefunden:

http://www.mycsharp.de/guide/home/index.html

Das sind alle Sachen wie ich finde sehr gut erklärt. Und das hinter Arrays auch nix unmenschliches steckt, hab ich jetzt auch bemerkt.

Naja und wenn mann mal die Grundsachen verstanden hat und anwenden kann, sollte sich das meiste aus dem MSDN rausfinden lassen. Das ist mir jetzt klar geworden.

Also ich mach mich dann mal an die Arbeit ;)