C# Was soll ich noch Lernen?

kiname

Cadet 3rd Year
Dabei seit
Nov. 2014
Beiträge
56
Hallo Commutity,

ich programmiere seit etwas über einem Jahr in C# .NET und habe das Gefühl ich kann die Sprache jedoch will ich noch mehr können (es muss noch mehr geben). Ich suche deshalb laufend nach Themen dich ich noch nicht hatte aber leider finde nichts mehr. :(

Hier mal ein paar Themen die ich kann und mir spontan einfallen:
Die "Grundlagen", ADO, ASP, WCF, WPF, Streams, Netzwerkprogrammierung, allgemein Unsafe Code (Pointer und so), die ganzen Annonymen Klassen/Methoden usw., Threading, LINQ, Extension Methods, Reflection (auch so abstrakte sachen wie Klassen zur laufzeit erstellen und kompilieren usw.), Serialisierung, natürlich das Ganze OOP/Vererbung/Polymorphie usw., Grafikprogrammierung usw., Generics, Events und Delegates(mit Lambda usw.), Exception Handling, normale Datenbankprogrammierung, Arbeiten mit Daten,...
Mehr fällt mir gerade nicht ein.

Ja Algorithmen und Erfahrung sind kein Problem da ich vor meinem Jahr c# gut 2 Jahre in Java programmierte.

Wisst ihr noch irgendetwas was ich noch lernen könnte irgendwas das ich noch nicht kann?
Oder wie ich weiter vorgehen soll? Größere Projekte mache ich auch öfters.

C# ist so eine "schöne einfache" Sprache.

mfg
kiname
 

blöderidiot

Captain
Dabei seit
Juni 2004
Beiträge
3.294

Cheesy

Cadet 3rd Year
Dabei seit
Mai 2009
Beiträge
52
Befasse dich doch mal mit der Klasse "Frau" und dem Thema Vererbung, dann bist du sicher die nächsten 20 Jahre beschäftigt.

Diese Aussage soll nicht meinen Respekt gegenüber dein bereits angehäuftes Wissen minimieren. ;-)
 
Zuletzt bearbeitet:

Jesterfox

Fleet Admiral
Dabei seit
März 2009
Beiträge
39.030
Wisst ihr noch irgendetwas was ich noch lernen könnte irgendwas das ich noch nicht kann?
Oder wie ich weiter vorgehen soll? Größere Projekte mache ich auch öfters.
Aus eigener Erfahrung: die Grundlagen der Sprache sind eine Sache, die anderen sind Frameworks und ganz allgemein Softwarearchitektur.

Was ich momentan recht spannend finde ist ASP.NET 5 / MVC / Entity Framework 7:

http://docs.asp.net/en/latest/getting-started/installing-on-windows.html
http://ef.readthedocs.org/en/latest/getting-started/aspnet5.html

Dazu vielleicht noch Mobile Entwicklung auf dem Smartphone, das Visual Studio bietet Möglichkeiten für alle 3 Plattformen zu entwickeln.
 

blöderidiot

Captain
Dabei seit
Juni 2004
Beiträge
3.294

andy_m4

Commander
Dabei seit
Aug. 2015
Beiträge
2.533
ich programmiere seit etwas über einem Jahr in C# .NET und habe das Gefühl ich kann die Sprache jedoch will ich noch mehr können (es muss noch mehr geben).
(.....)
Wisst ihr noch irgendetwas was ich noch lernen könnte irgendwas das ich noch nicht kann?
:(
Ich denke, mehr könnte man lernen, wenn man auch mal abseits von der Sprache guckt, mit der man normalerweise programmiert.
Denn eine Programmiersprache bevorzugt immer einen gewissen Lösungsweg könnte man sagen. Grundsätzlich andere Vorgehensweisen lernt man so gar nicht kennen, selbst wenn sie manchmal nützlich sein können und auch in der eigentlichen Sprache in der man sonst programmiert anwendbar sind.

Mit Java hast Du zwar schon etwas anderes gemacht, doch fällt Java in die gleiche Kategorie wie C#. Die Unterschiede sind überschaubar.
Ich denke da so eher an Sprachen wie Haskell, PROLOG, Smalltalk oder auch Lisp (bzw. Scheme).

Haskell, weil es eben sehr stark das funktionale Paradigma vertritt, ein algebraisches Typsystem hat usw.
PROLOG, als bekanntester Vertreter des deklarativen Paradigmas
Smalltalk: Die objektorientierte Sprache schlechthin.
Scheme: Weniger ist mehr. Mit wenigen Sprachelementen komplexe Sachen bauen. Inkl. woanders selten anzutreffende Features wie Continuations und Makros.
Vielleicht noch eine "primitive" Sprache wie C, um ein Gefühl dafür zu bekommen, was da eigentlich auf der untersten Ebene abläuft. Ist auch gut, um zu verstehen, warum bestimmte Datenstrukturen performant sind und andere nicht.

Das ist sicherlich nicht, dass was Du hören wolltest, aber aus meiner Sicht das, was einem am weitesten nach vorne bringt. Selbst wenn man letztlich dann bei C# bleibt.

C# ist so eine "schöne einfache" Sprache.
Ist Ansichtssache (und auch Definitionssache; was ist einfach? was ist schön?). Ich würde eher Scheme so bezeichnen (was aber auch vermutlich die wenigsten teilen).

Bei C# macht es aus meiner Sicht eher die Mischung aus Features und Pragmatismus.

Der größte Pferdefuß ist hiersicherlich die starke Bindung an Windows. Wobei Mono einen durchaus guten Job macht mit mit .NET Core und Roslyn sicherlich Bewegung in diese Thematik bringen wird.

Gruß
Andy
 

IKäsebrot

Ensign
Dabei seit
Juni 2014
Beiträge
245
Falls du es noch nicht getan hast, würde ich vorschlagen du befasst dich auch mit Tools rund um .NET

Wie sieht es bei dir aus mit TFS? Das hat zwar nicht speziell mit C# zutun, ohne das Tool kommt man im Berufsleben aber auch nicht weit.
 

BlackMonday

Ensign
Dabei seit
Sep. 2012
Beiträge
253
Hat zwar grundsätzlich nichts mit C# zu tun, einzelne Abscnhitte kann man aber mit C# umsetzen: http://www.nand2tetris.org/ In diesem Kurs geht es darum sich einen eigenen Computer von Logic Gates an aufwärts zu bauen (in einer Hardware Description Language), und sich anschließend um die Software zu kümmern (von der Maschinen- über die Assembly-Sprache, einer VM und einem Compiler bis später hin zu einem eigenen kleinen OS sowie kleinen Programmen - Tetris, kleines Excel etc.).

Die Schultern auf denen man sozusagen steht zu verstehen kann sicher nicht schaden.

Ein Video dazu: https://www.youtube.com/watch?v=JtXvUoPx4Qs
 
Top