Es sind viele Gerüchte über C# im Umlauf
z.B. : C# ist Schneller, Stabiler und Performanter als VB.Net
C# ist eine Erweiterung von C++
C# ist eine Erweiterung von Java
C# ist eine sehr schnelle Sprache, welche zur Spiel Entwicklung hervorragend geeignet ist.
Vor allem 1 und 2 sind vor allem bei Anfängern sehr weit verbreitet, und kommen vor allem durch den Namen (c sharp zu Deutsch cis ein ton aus der Musik, ein c dass um eine halbe Note erhöht wurde) da das C von allen Programmierern mit einer Starken Sprache kongruiert wird.
Woher das mit dem Java kommt habe ich keine Ahnung.
Und das Letzte ist einfach nur, weil derzeit XNA sehr beliebt ist(einfach komplexe spiele zu erstellen)
Das letzte Gerücht will ich gar nicht als falsch anstreichen, da man mit XNA wirklich recht gut spiele erstellen kann
Gerücht 2 und 3 sind natürlich absoluter Quatsch, es gibt nur 2 C Erweiterungen C++ und Objc, und Java ist von Sun (nun Oracle) die würde einen Teufel tun und die Rechte an MS verkaufen...
Das erste gerückt kam eigentlich aus 3 verschiedenen Gründen zustande:
1. VB Programmierer wechselten zu C# weil man durch die c Syntax weniger tipp Arbeit hatte.
2. VB Programmierer wechselten zu C# weil immer mehr Leute und Firmen diese verwenden (siehe Grund 1)
3. C# hat die Unsafe Blöcke welche VB nicht hat
Nun will ich auf diese Unsafe Blöcke noch mal genauer eingehen:
In VB und C# kann man nur sichere Methoden verwenden, das heißt der gestammte Code wird während dem laufen wird vom CLR (Common Language Runtime) überwacht um so Sachen wie Memory Management zu erleichtern. Das beansprucht natürlich Zeit und Leistung.
Daher hat C# Unsafe Code, dieser Code wird eben nicht vom CLR Rutine überwacht, und braucht damit wesentlich weniger Zeit und Leistung.
Nun kann man sich ja nicht einfach sagen: "Ok verwende ich nur noch Unsafe", da man im unsafe Modus wirklich sauber programmieren muss.
Denn durch Unsafe verliert man jegliche Form der Sicherheit die CLR bietet
(Mehr zur C# Sicherheitsprogrammierung: Sicherheit (C#))
Und man verliert das Memory und Class Handling das heißt so viel wie: Man muss sich um Zeiger etc kümmern
(Zeiger in c#: Zeigertypen (C#))
Weitere Links:
Unsicherer Code und Zeiger (C#)
unsafe (C#)
Wenn man auf so was bei Unsafe keine Rücksicht nimmt, so wird das Programm wahrscheinlich viel langsamer sein als ohne unsafe.
D.h. ist unsafe nur was für erfahrene Programmierer.
Zusammenfassend lässt sich sagen:
Die Vorteile von C# Gegenüber VB sind:
Kürzerer Code durch c syntax
C# ist derzeit beliebter
C# hat unsafe(kein Grund für Anfänger)
PS: Folgende Gründe könnte man auch noch nehmen:
Windows Phone Entwicklung,
XBox Entwicklung dank XNA
XNA
z.B. : C# ist Schneller, Stabiler und Performanter als VB.Net
C# ist eine Erweiterung von C++
C# ist eine Erweiterung von Java
C# ist eine sehr schnelle Sprache, welche zur Spiel Entwicklung hervorragend geeignet ist.
Vor allem 1 und 2 sind vor allem bei Anfängern sehr weit verbreitet, und kommen vor allem durch den Namen (c sharp zu Deutsch cis ein ton aus der Musik, ein c dass um eine halbe Note erhöht wurde) da das C von allen Programmierern mit einer Starken Sprache kongruiert wird.
Woher das mit dem Java kommt habe ich keine Ahnung.
Und das Letzte ist einfach nur, weil derzeit XNA sehr beliebt ist(einfach komplexe spiele zu erstellen)
Das letzte Gerücht will ich gar nicht als falsch anstreichen, da man mit XNA wirklich recht gut spiele erstellen kann
Gerücht 2 und 3 sind natürlich absoluter Quatsch, es gibt nur 2 C Erweiterungen C++ und Objc, und Java ist von Sun (nun Oracle) die würde einen Teufel tun und die Rechte an MS verkaufen...
Das erste gerückt kam eigentlich aus 3 verschiedenen Gründen zustande:
1. VB Programmierer wechselten zu C# weil man durch die c Syntax weniger tipp Arbeit hatte.
2. VB Programmierer wechselten zu C# weil immer mehr Leute und Firmen diese verwenden (siehe Grund 1)
3. C# hat die Unsafe Blöcke welche VB nicht hat
Nun will ich auf diese Unsafe Blöcke noch mal genauer eingehen:
In VB und C# kann man nur sichere Methoden verwenden, das heißt der gestammte Code wird während dem laufen wird vom CLR (Common Language Runtime) überwacht um so Sachen wie Memory Management zu erleichtern. Das beansprucht natürlich Zeit und Leistung.
Daher hat C# Unsafe Code, dieser Code wird eben nicht vom CLR Rutine überwacht, und braucht damit wesentlich weniger Zeit und Leistung.
Nun kann man sich ja nicht einfach sagen: "Ok verwende ich nur noch Unsafe", da man im unsafe Modus wirklich sauber programmieren muss.
Denn durch Unsafe verliert man jegliche Form der Sicherheit die CLR bietet
(Mehr zur C# Sicherheitsprogrammierung: Sicherheit (C#))
Und man verliert das Memory und Class Handling das heißt so viel wie: Man muss sich um Zeiger etc kümmern
(Zeiger in c#: Zeigertypen (C#))
Weitere Links:
Unsicherer Code und Zeiger (C#)
unsafe (C#)
Wenn man auf so was bei Unsafe keine Rücksicht nimmt, so wird das Programm wahrscheinlich viel langsamer sein als ohne unsafe.
D.h. ist unsafe nur was für erfahrene Programmierer.
Zusammenfassend lässt sich sagen:
Die Vorteile von C# Gegenüber VB sind:
Kürzerer Code durch c syntax
C# ist derzeit beliebter
C# hat unsafe(kein Grund für Anfänger)
PS: Folgende Gründe könnte man auch noch nehmen:
Windows Phone Entwicklung,
XBox Entwicklung dank XNA
XNA