Umstieg von VB.NET auf C#
- From: "Huber Peter" <buoi66@xxxxxxxx>
- Date: Sat, 5 May 2007 12:18:45 +0200
Guten Tag
Ich habe schon mehrere Jahre Erfahrungen in VB.NET und muss jetzt
stellenbedingt auf C# umsteigen.
Dabei sind mir einpaar Dinge aufgefallen, und wollte mal fragen ob ihr dies
auch so sieht, oder ob ich einfach noch was übersehen habe.
1. Man sagt oft in C# müsse man weniger Code eintippen, im Gegenteil im
VB.Net gebe ich "sub test" und Enter ein, die beiden Klammern und das End
sub erstellt mir die IDE auotmatisch. Im C# muss ich die geschweiften
Klammern, welche auf der Tastatur eher mühsam erreichbar sind selber
eintippen. Das selbe gilt z.B auch für IF.. else..
2. Ereignishandling. Das fehlen der withevents Deklaration und des Handles
Statements ist eigentlich bereits ein K.O Kriterium für C#. Wenn ich mal
schnell durchsehen will welche Events eines Controlls behandelt werden ist
dies nur über den Umweg das Eigenschaftenfensters möglich.
3. Einfache Funktionen wie zum Beispiel isdate() welche jedem VB.NET
Programmierer das leben sehr vereinfachen gibt es in C# nicht.
Objektorientierung hin oder her, aber wenn ich nur mal wissen will ob der
Benutzer eingültiges Datum eingegben hat, ist alles was komplizierter als
isdate() ist unnötig.
4. Namensräume
Es ist nicht möglich die wichtigsten Namensräume eimal pro Projekt
anzugeben, nein man muss sie auf jeder Seite erneut angeben. Und zu allem
dazu muss man den Namensraum noch exact angeben.
Using System;
...
io.stream sr;
Geht nicht. In VB.NET wäre dies möglich und ich muss nicht extra den
Namensraum System.io angeben.
5. Case sensitive. Macht für mich keinen Sinn. Im Gegenteil, ich verwende in
VB.NET immer Gross und Klein für Bezeichner, dann kann man das Objekt als
Kleinschreibung eingeben, und bei die IDE korrigiert es wären der Eingabe,
wenn nicht habe ich mich vertippt.
6. Vererbung. In C# ist es nicht sofort ersichtlich ob das Objekt nun von
einem andern Objekt erbt, oder ob es eine Schnittstelle implementiert. Wenn
ich in VB.Net ein Schnittstelle implemenitere, erstellt mir die IDE eine
Vorlage mit allen zu implementierenden Funktionen und Sub'. In C# ist
handarbeit angesagt.
7. Nun noch was zu einem der wenigen Vorteile. Refactoring, nettes und
praktisches Feature welches in VB.NET fehlt. Nur ich benutze das Refactor
Tool von Developer Express, dagegen ist das eingebaute C# Refactoring eher
ein Spielzeug.
Die Liste liesse sich nun noch beliebig erweitern. Umgekhert habe ich bis
heute aber noch kaum ein Vorteil von C# über VB.NET gefunden, der in der
Praxis auch wirklich von einer alltäglichen Relevanz ist. Mit der
Sprachsyntax habe ich eigentlich keine Probleme, ist halt einwenig ein
Umgewöhnen, aber das Framework ist schliesslich beidemale das selbe.
Ein frage hätte ich aber noch, wenn ich eine einfach property erstelle sieht
die nach der automtaischen Formatierung immer so aus:
public Color TextBoxBackColor
{
get
{
return this.TextBox1.BackColor;
}
set
{
this.TextBox1.BackColor = value;
}
}
Das benötigt ja mehr Platz als bei VB.NET. Kann man der IDE bebringen das
sie es automatische etwa so formatiert:
public Color TextBoxBackColor {
get { return this.TextBox1.BackColor;}
set { this.TextBox1.BackColor = value; }
}
Danke schon mal und ein schönes Wochenende
peter
.
- Follow-Ups:
- Re: Umstieg von VB.NET auf C#
- From: Christof Nordiek
- Re: Umstieg von VB.NET auf C#
- From: Lars Hoppe
- Re: Umstieg von VB.NET auf C#
- From: Thomas Scheidegger [MVP]
- Re: Umstieg von VB.NET auf C#
- Prev by Date: Asynchroner Socket - Client / Server
- Next by Date: Re: Umstieg von VB.NET auf C#
- Previous by thread: Asynchroner Socket - Client / Server
- Next by thread: Re: Umstieg von VB.NET auf C#
- Index(es):
Relevant Pages
|