Visual Basic erscheint mir unbeholfen, hässlich, fehleranfällig und schwer lesbar. Ich werde andere erklären lassen , warum . Obwohl VB.net in Bezug auf die Funktionen eindeutig ein enormer Fortschritt für die Sprache war, verstehe ich immer noch nicht, warum sich irgendjemand für VB-Code entschieden hat, beispielsweise für C #.
Ich sehe jedoch immer noch (was zu sein scheint), dass die überwiegende Mehrheit der kommerziellen Web-Apps aus "MS-Shops" in VB erstellt wurde. Ich könnte das korrigieren, aber VB scheint immer noch populärer zu sein, als es verdient.
Kann jemand helfen, eine (oder alle) der folgenden Fragen zu beantworten:
- Vermisse ich etwas bei VB? Ist es einfacher zu lernen oder "freundlicher" als C #? Gibt es Funktionen, die ich nicht kenne?
- Warum wird VB / VB.net gerade in Webprojekten heute so häufig eingesetzt?
c#
syntax
vb.net
visual-basic-6
aaaidan
quelle
quelle
Antworten:
Mit VB können GUIs (ausgesprochen gooey) zum Verfolgen von IP-Adressen verwendet werden. Dies wird häufig zur Aufklärung von Straftaten verwendet .
quelle
Ich denke, das hängt davon ab, woher du kommst. Wenn ich als Programmierer anfange, denke ich, dass VB möglicherweise leichter zu lesen ist als C #, da es sich mehr auf Wörter als auf Symbole stützt, was es für normale Leute einfacher macht, es zu verstehen.
Ich war viele Jahre lang ein VB-Programmierer, und als .NET kam, arbeitete ich in den ersten Jahren immer noch in VB.NET (das mit C # nicht wirklich stimmte). Jetzt habe ich ein paar Jahre C # hinter mir und finde manchmal, dass das "Dekodieren" von VB.NET-Code etwas länger dauert als von C #. Möglicherweise, weil es bei einigen Konstruktionen mehr auf Wörtern als auf Symbolen beruht ...
quelle
Unten habe ich gerade meine Antwort in einen anderen Thread kopiert :
Ich entwickle sowohl in VB als auch in C # regelmäßig. Der Großteil meines Geldverdienens war mit C # verbunden. Persönlich bevorzuge ich VB für die meisten (aber nicht alle… Lambdas!) Arbeiten. Abgesehen von den von Jon skizzierten Vorteilen kann ich wirklich keine harten Vorteile nennen. Eigentlich hat Herfried ein paar auf seiner Website gesammelt, aber sie sind eher technisch.
Was mich an allen C-bezogenen Sprachen wirklich nervt, ist die blöde Syntax. Das ist rein kulturell, aber als jemand, der den größten Teil seiner beruflichen Arbeit in C ++ leistet und sich darin auskennt, hasse ich die Syntax immer noch absolut. Und nicht nur C ++ 'süße kleine Macken. Nein, das ganze Paket. Warum Hosenträger? Warum Semikolons (vielleicht die dümmste Entscheidung in der gesamten Programmgeschichte)? Warum die blöde C-Cast-Syntax? Warum gibt es keine für Variablendeklaration Schlüsselwort (eigentlich das ist die dümmste Entscheidung)?
Es gibt einfach so viele Dinge, die mich wirklich traurig und wütend machen. VB ist kein Heiliger, seine Sprache hat große Nachteile. Aber nichts im Vergleich zu dem, was ich oben gesagt habe.
Mir ist klar, dass die meisten dieser Aussagen einer Begründung bedürfen, aber ich mache geltend, dass dies nur deshalb geschieht, weil wir uns so an sie gewöhnt haben. Außerdem ist hier nicht der richtige Ort. Es genügt zu sagen, dass die Syntax von C #, obwohl sie der Hauptvorteil gegenüber VB ist, auch der Hauptnachteil ist.
Ich bevorzuge VB nicht wegen des
My
Namespaces, ich bevorzuge es nicht wegen XML-Literalen, ich bevorzuge es nicht wegen schwacher Typisierung, ich bevorzuge es nicht wegen optionaler Parameter oder wegen der viel besserenswitch
Aussage. Nein, ich bevorzuge es wegen der Syntax.Das heißt, ich muss zugeben, dass VB durch seine Syntax immer mehr belastet wird. Der neueste Hype sind scheinbar mit Lambda-Funktionen parametrisierte Linq-Abfragen, und ich gebe gerne zu, dass dies viele Dinge einfacher macht. Leider ist die VB-Syntax für Lambdas einfach zu umständlich, um mit C # zu konkurrieren. Denken Sie nur daran, wie aufgebläht ein Aufruf von
Parallel.For
in VB aussieht - im Vergleich zu C #, wo er natürlich aussieht. Meiner Meinung nach ist das VB-Designteam hier in die falsche Richtung gegangen und hat die konservative Konsistenz der Lesbarkeit vorgezogen.Um Ihre subjektive Anschuldigung zu beantworten:
Sie haben mit Sicherheit das Recht zu denken, aber wie Marc weiter unten gesagt hat, werden Sie es schwierig finden, dies objektiv zu argumentieren. Ich kann definitiv eine Reihe von C-Syntaxelementen anführen, die objektiv fehleranfälliger sind als alles, was in VB existiert. Tatsächlich wurde die VB-Syntax entwickelt, um solche Situationen explizit zu verhindern.
"Unbeholfen, hässlich ... und schwer zu lesen" sind alles Qualifikationsmerkmale, die auf fast alle Sprachen angewendet werden können, mit denen Sie nicht vertraut sind. Einfach ausgedrückt: Die Hässlichkeit ist eine direkte Folge Ihrer Unkenntnis der Sprache.
Wenn Sie eine Sprache gut kennen, müssen Sie Muster im Code erkennen. Gut geschriebener Code wird durch Übung elegant erscheinen, während schlechter (langsamer, fehleranfälliger) Code hässlich erscheint. So einfach ist das.
Eine letzte Bemerkung: Die von Ihnen zitierten Artikel enthalten mehrere Ungenauigkeiten und veraltete Informationen. Als alleinige Rechtfertigung für eine höchst subjektive und emotionale Diskussion sind sie nicht sehr gut geeignet.
quelle
var
var int x
kommt in den Sinn. Alle anderen Anweisungen und Blöcke werden mit speziellen Schlüsselwörtern eingeleitet. Warum nicht Deklarationen von Variablen und Methoden? Pfui. Inkonsistent und hässlich.Englisch erscheint mir ungeschickt, hässlich, fehleranfällig und schwer lesbar, insbesondere wenn es von Menschen geschrieben wird, die schlechte Grammatik, schlechte Rechtschreibung, rücksichtslose Missachtung von Groß- und Kleinschreibung und keine Ahnung haben, wie sie ihre Gedanken räumlich und mental organisieren sollen.
Es ist nicht nur so, dass Visual Basic aufgrund der Syntax der Sprache schwer lesbar oder ungeschickt ist, sondern normalerweise auch, weil der Programmierer nicht wirklich gut darin ist, seine eigenen Gedanken auszudrücken:
Richtig, das ist schrecklich. Aber es ist auch nicht besonders schwierig, schrecklichen Code in anderen Sprachen zu schreiben. Wenn es richtig geschrieben ist, ist es sehr sinnvoll, auch wenn der Code in VB geschrieben ist:
Zumindest ist das lesbarer und verständlicher. Es ist immer noch BASIC. Es kommt wirklich auf die Fähigkeit des Programmierers an, seine Absichten klar auszudrücken, indem er den Code auf leicht lesbare Weise formatiert, gut benannte Bezeichner verwendet und darauf achtet, verständlichen Code zu schreiben.
Das heißt, ich habe Visual Basic seit den VB3-Tagen nicht mehr sehr berührt (daher das Beispiel mit "alter" Syntax), aber nur, weil eine Sprache missbraucht werden kann, heißt das nicht, dass sie nicht richtig verwendet werden kann, um ziemlich robusten Code zu schreiben . Sicher, es mag einige Mängel geben, aber Ansätze, die entwickelt wurden, um diese Probleme zu umgehen, zeigen auch, dass ein Programmierer mehr kann als ein anderer.
(Ungewolltes Sprühen ist
On Error Resume Next
eine weniger gute Methode, um die Mängel des Mangels an Ausnahmen in VB aus der Zeit vor .NET zu umgehen.)quelle
Die meisten Ihrer Argumente gegen VB gelten nur für VB-Classic (zweiter Link) oder basieren auf schwachen oder veralteten Argumenten
static
? C ++ unterstützt dies ebenfalls.(object)(expr)
-Cast-Syntax undobject as type
sind noch verwirrender und inkonsistenter.with
? Sie können geschachtelte Baumstrukturen auf eine sehr intuitive Weise erstellen, die in C # nicht möglich ist.WithEvents
) einführen und verarbeiten, ohne Delegaten, Event-Handler-Prozesse usw. initialisieren zu müssen. Dies macht die GUI-Programmierung in VB wesentlich komfortabler und Sie müssen keinen Event-Code durch den Designer generieren .End If
ist hilfreicher als nur}
. Bei komplexen syntaktischen Strukturen sind alle geschweiften Klammern nur verwirrend, wohingegen ein BetonEnd ...
Ihnen hilft, festzustellen, welcher Block noch nicht geschlossen wurde.Insgesamt gibt es abgesehen von der Syntax nur wenige objektive Unterschiede zwischen VB.NET und C #. EG: GUI-Design ist in VB aufgrund eines besseren Ereignissystems und einer besseren IDE viel effizienter, wohingegen z. B. Algorithmen in C # besser ausgedrückt werden können, weil die Syntax präziser ist.
Der Rest ist nur eine Frage Ihres persönlichen Stils. C-Style-Programmierer fühlen sich wohl mit C #, VB (oder vielleicht Pascal?) - Style-Programmierer verwenden VB.
Die wortbasierte, explizitere VB-Syntax ist für Anfänger möglicherweise besser lesbar als alle Symbole in C. Vergleichen Sie:
zu
Das heißt nicht, dass eine Sprache besser ist als eine andere.
Bearbeiten: -----------------------------------------
Zu dem Argument wäre VB fehleranfällig. Wenn Sie es verwenden, ist
Option Strict On
es so streng wie C #, erlaubt uns jedoch nicht, solche Fehler zu machen:quelle
In der Vergangenheit war die VB-Entwicklungsumgebung eine schnelle und effektive Möglichkeit, bestimmte Arten von Anwendungen (z. B. GUI-Apps) zu erstellen. Das führte dazu, dass es eine sehr beliebte Wahl war. Ich denke, VB war in seiner Blütezeit die am häufigsten verwendete Sprache (zB VB6).
Bei dieser Art von installierter Basis ist es nicht verwunderlich, dass immer noch viel Arbeit darin steckt.
quelle
Alles begann, bevor es C # gab
Im Jahr 1999 hatten wir Visual Studio 5/6. Wenn Sie ein unabhängiger Softwareanbieter oder ein Unternehmen waren, das Windows verwendet, und eine Anwendung benötigen, mit der beispielsweise die für Projekte aufgewendete Zeit eines Mitarbeiters erfasst werden kann, haben Sie folgende Möglichkeiten:
Zu diesem Zeitpunkt befanden wir uns kurz vor dem Platzen der Dot-Com-Blase, und jeder, der mit (4) oder (5) gut zurechtkam, ging daran, Aktienoptionen bei der jeweils für ihn interessanten Dot-Com auszuhandeln.
(3) hatte Probleme mit dem Sperren und der allgemeinen Skalierbarkeit, aber ich sah eine Menge von Access-gesteuerten Lösungen, mit denen Support-Funktionen nach Bedarf ausgeführt werden konnten.
Das lässt uns also mit VB und VC ++:
Der Formulareditor in VB war zu dieser Zeit hervorragend für die Produktivität. Sie können Ihre Komponenten per Drag & Drop verschieben - nicht nur Schaltflächen, Beschriftungen und Textfelder, sondern auch die vollständige Toolbox für OLE-Steuerelemente mit wiederverwendbaren Komponenten wie intelligenten Rastern, Excel-Tabellen oder IE-Instanzen. Die Verkabelung wurde hinter den Kulissen durchgeführt - alles war objektähnlich und Sie doppelklicken einfach auf Dinge, um Event-Handler hinzuzufügen. Dies war in Visual C ++ sehr viel schwieriger. Als Mitglied des Visual Studio-Entwicklersupportteams zu dieser Zeit kann ich mich noch daran erinnern, wie es bei Visual Basic-Supportanrufen hauptsächlich darum ging, welche Komponente am besten zu verwenden war oder wie ihre Anwendung auf bestimmte Weise optimiert werden konnte. Es war so gut wie nie "wie erstelle ich eine Anwendung mit X-, Y- und Z-Benutzeroberflächenfunktionen".
Das Erstellen einer umfangreichen Benutzeroberfläche in Visual C ++ war eine andere Herausforderung. Obwohl Visual Editor-Unterstützung für Dialoge und SDI / MDI-Formulare vorhanden war, war diese ziemlich begrenzt. Die Unterstützung für das Einbetten von OLE-Steuerelementen (ActiveX) in MFC oder Win32 war eine schwarze Kunst, wenn auch in ATL etwas einfacher. Einfache Dinge wie das Ändern der Größe von Ereignissen oder das Zeichnen von Eigentümern waren ziemlich schmerzhaft, geschweige denn die Verbindungspunkte, die für benutzerdefinierte Ereignisse in Komponenten erforderlich sind.
Ja, VC ++ hatte die Ausführungsgeschwindigkeit, die Debug-Fähigkeit und flexible Frameworks / Bibliotheken / UI-Optionen, aber die IDE-Unterstützung konnte nicht all diesen Grund abdecken, sodass die häufigsten Vorgänge mit Assistenten, umfassenden MFC-Klassenhierarchien und 90-tägigen Funktionen angegangen wurden / 2-free-Incidents-Supportlinien.
IIRC, der mit VB gelieferte Anwendungspaketierer, kann Ihre App, die VB-Laufzeit und die neuesten DLLs für allgemeine Steuerelemente packen und Ihnen ein eigenständiges EXE-Installationsprogramm bereitstellen, das Sie auf eine CD kopieren und an Kunden senden können. Nichts davon 'welche msvcrtXX.dll und mfcxx.dll haben Sie installiert?', Was die MFC-Entwickler plagte.
Aus Gründen der Markteinführung und der umfangreichen Benutzeroberfläche hat VB eine sehr große Fangemeinde.
Als Visual J ++ und Visual Interdev in VS6 eintrafen, war klar, dass die Visual Basic-IDE einen Kampf gegen Visual C ++ gewonnen hatte, was meiner Meinung nach fair war. Es war überhaupt keine Überraschung, dass Visual Studio .NET einen VB-ähnlichen Formulareditor für die neue COOL C # -Sprache hatte.
Die neue Java / C / C ++ - ähnliche Sprache, gepaart mit dem UI-Designer, der den VB-Leuten die ganze Zeit Spaß gemacht hat, bot einen neuen Migrationspfad für die C ++ - Leute, die jetzt mit MFC / ATL / Win32 fertig waren. Für die VB 3/4/5/6 Leute, die den Mangel an 100% Abwärtskompatibilität in VB.net nicht mochten, bot dies die Möglichkeit, eine neue Sprache in einer vertrauten Umgebung zu lernen.
Die Gründe, warum VB ein so umfassendes Produkt war, haben wahrscheinlich etwas mit den Ursprüngen von Microsoft zu tun, wobei Basic das Flaggschiff unter den Entwicklerprodukten ist, aber ich habe derzeit keine Zitate.
quelle
Wie hässlich eine Sprache auch sein mag, die Gründe, sich daran zu halten, sind in der Regel: Es ist sehr teuer, eine riesige Codebasis zu verschrotten, und die Tatsache, dass die Entwickler die Sprache bereits kennen, macht sie billiger als andere Sprachen.
quelle
VB.NET ist einfacher zu erlernen, Sie haben Recht und meiner Meinung nach ist es insgesamt einfacher als C #. Es ist der erste Punkt, warum VB so beliebt ist. Ein weiterer und meiner Meinung nach größter Punkt ist, dass es eine große Anzahl von Entwicklern gibt, die mit VB 6 und älteren Versionen dieser Sprache gearbeitet haben. Für sie ist es einfacher, Anwendungen mit VB.net zu entwickeln, als eine neue Sprache zu lernen.
quelle
Wie andere gesagt haben, hängt Ihre ästhetische Beurteilung der Sprachsyntax stark von dem ab, was Sie zuvor wussten. Seit mehr als einem Jahrzehnt scheint es sich um einen C-ähnlichen Wettbewerb zu handeln, mit geschweiften Klammern für "Blöcke", "->" für Indirektion (Perl, PHP), Klammern für Funktionsaufrufargumente, // für Kommentare und ein Semikolon an jedem Zeilenende. Einige Leute dachten sogar, dass man dank dieser „einzigartigen Pensée“ alle kennt, wenn man eine Sprache beherrscht, was in der Tat lächerlich ist. Dies brachte die Idee bei den C ++ / Java-Anwendern auf, dass dies die einzig richtige Syntaxästhetik ist und alles andere versucht, COBOL zu klonen.
Vor ein paar Jahren bin ich zu Ruby und jetzt zu Python gewechselt, und ich kann keine hässlichen Semikolons, geschweiften Klammern und andere nichtssagende Zeichen mehr ausstehen. Der Quellcode soll von Menschen gelesen werden. Als ich Visual Studio ausprobierte, entschied ich mich für VB gegenüber C #. Ich vermute, einige Programmierer haben sich für C # entschieden, um mit seiner Java-ähnlichen Syntax nur "ernsthaft auszusehen", aber es gibt genau dieselben Funktionen ... gib deinen Augen eine Pause.
quelle
Nun, wenn Sie über .NET sprechen, gibt es eine wirklich einfache, die ich mir vorstellen kann:
Der VB.NET-Editor in Visual Studio kann Syntaxfehler viel besser erkennen als C #.
Obwohl der C # -Editor in VS2008 SP1 eine enorme Verbesserung erfahren hat, gibt es immer noch einige Syntaxfehler, die der Editor erst beim Versuch, das Programm zu kompilieren, entdeckt.
quelle
Ein Großteil der Popularität von VB entstand in einer Zeit, in der die Werkzeuge von VB viel benutzerfreundlicher waren als andere verfügbare Sprachen. Das "klassische" VB bot eine einfache Möglichkeit, Windows-Anwendungen zu erstellen, ohne die Eingeweide der Win32-API kennenzulernen oder sich mit der manuellen Speicherverwaltung zu beschäftigen. Die Eintrittsbarriere für Programmieranfänger war bei VB viel niedriger als bei C ++, daher haben sich viele Leute mit VB die Zähne geschnitten.
Heutzutage denke ich, dass VB einen Vorteil gegenüber C # in der Vertrautheit derjenigen liegt, die im Laufe der Jahre mit VB gearbeitet haben. Ein weiterer Vorteil ist, dass VB-Code aufgrund der Tendenz zur Verwendung von Schlüsselwörtern anstelle von Interpunktionssymbolen einfach zu lesen ist. Als jemand, der in VB, Java, C, C # und Python arbeitet, finde ich, dass VB die einfachste Sprache ist, in die ich zurückspringen kann, wenn ich Code überprüfe, den ich vor Jahren geschrieben habe. Die Syntax ist ausführlicher, was das Lesen von Code oft erleichtert, und Visual Studio hat die Formatierung von VB-Code bei der Eingabe immer sehr gut aufgeräumt, sodass der Code konsistent formatiert wird (unabhängig von der Schlamperei des Autors).
Als Randnotiz finde ich, dass Python aus ähnlichen Gründen extrem einfach zu lesen und zu überprüfen ist. In Python wird die Formatierung des Codes vom Interpreter und nicht von der IDE erzwungen, das Endergebnis ist jedoch dasselbe. Python bevorzugt auch Stichwörter zur Zeichensetzung, wenn auch wohl weniger als VB.
quelle
Es ist schwer zu behaupten, dass es mehr oder weniger "fehleranfällig" ist als jede andere Sprache. Ich bezweifle auch den Punkt bezüglich "der überwiegenden Mehrheit der kommerziellen MS-Websites". Wie ich gesehen habe, übernimmt C # bei weitem die Führung für die .NET-Entwicklung (wobei .NET das Flaggschiff im MS-Stack für Dinge ist, die keine Gerätetreiber usw. sind).
quelle
Ein Vorteil von VB.NET gegenüber C # (das mit C # 4 verschwindet) sind die Standard- und Named-Parameter, die bei der Verwendung von VSTO sehr nützlich sind.
quelle
VB / VB.NET gehört zur Kategorie RAD (Rapid Application Development). Sie können Anwendungen mit nur Drag-Drop-Steuerelementen aus der Toolbox und weniger Code entwickeln.
quelle
Nun, ich denke, Sie müssen zwischen klassischem VB und VB.NET unterscheiden.
Ich bin der Meinung, dass VB.NET nicht sehr beliebt ist, aber Visual Basic "Classic" immer noch 1 ist. Der Grund dafür ist, dass es SEHR einfach ist, eine Windows-App zu erstellen. Vergleichen Sie dies mit einer Windows-App in C ++ / Mfc, die zu diesem Zeitpunkt fast die einzige Alternative war.
Aus dem gleichen Grund war Delphi einst sehr beliebt.
quelle
VB ist sehr ausführlich und gewöhnungsbedürftig im Vergleich zu C #, bei dem zwischen Groß- und Kleinschreibung unterschieden wird. Für einen Anfänger ist es der beste Ausgangspunkt.
quelle
Um ein paar zu nennen:
quelle
Ich denke, ein Teil des Grundes ist, dass alte ASP-Programmierer, die wie ich in .NET arbeiten, bereits sehr vertraut mit VB sind, da VB-Skript die Sprache ist, die zum größten Teil als ASP-Klassiker verwendet wird. Ich fand es weniger zeitaufwendig, in VB in .NET zu schreiben, da ich bereits wusste, wie man VB spricht. VB ist auch weniger ein Heulsuse als C #. Ich kann sowohl lesen als auch schreiben, aber ich bevorzuge VB, weil es einfach ist, sich mit VB anzufreunden, wenn Sie ein neuer Programmierer sind.
quelle
Ich arbeite in einer Umgebung, in der wir beide verwenden. Wir haben zu C # zugunsten von klassischem ASP und VB gewechselt. Meiner Meinung nach gibt es keine Deal Breaker zwischen den Sprachen. Bei den meisten Projekten können Sie mit beiden Sprachen die gleiche Arbeit leisten. Jetzt teile ich Ihre Ansicht über fehleranfällige und ich finde auch, dass VB überladen ist (ohne Grund).
Wie bereits erwähnt, ist VB sehr einfach und historisch gesehen können Sie Projekte sehr schnell erstellen. Das lebte in der Webentwicklung (die sich schnell entwickelt) weiter, aber ich denke, wenn die Leute erkennen, dass C # genauso schnell entwickelt ist, wird VB ausgeblendet. Ein weiterer Grund, weshalb ich denke, dass alles, was Sie sonst noch eingeben (CSS, JavaScript), wenn Sie Webanwendungen erstellen, eher nach C # als nach VB aussieht. Daher ist die Verwendung von C # auch für Anfänger sinnvoll.
quelle
Ich persönlich mag die Art und Weise, wie Ereignisse in vb.net mit dem Schlüsselwort 'handle' verknüpft werden ... Die IDE / Visual Studio / reagiert auch besser auf VB und verarbeitet die meisten End-Ifs und dergleichen automatisch ... C # ist natürlich viel präziser und sauberer (IMHO, ich habe ziemlich viel mit beiden gearbeitet)
quelle
Ab dem 4.0-Framework gibt es nur eine kleine Handvoll Dinge, die VB im Vergleich zu C # fehlt, und das Gegenteil ist auch der Fall. Nämlich:
Yield
Schlüsselwort nicht hat , aber es kommt bald zu VB.NET mit dem neuen asynchronen Framework.unsafe
Schlüsselwort. Ich habe es nie für notwendig gehalten, aber es gibt sicherlich einige Leute, die es getan haben.Dim s = <s>My string... multiple lines...</s>.Value
. Es ist nicht schön, aber wenn Sie nicht wählerisch sind und wirklich mehrzeilige Zeichenfolgen möchten, funktioniert es. Und Sie können damit eine Zeichenketteninterpolation durchführen, indem Sie eine<%= myVar %>
Syntax verwenden, die gut ist.dynamic
. Dynamische Variablen gibt es in VB schon langeOption Compare Off
, aber das ist dateibezogen, daher ist es nicht so gut wie,dynamic
weildynamic
der Gültigkeitsbereich nur auf die so deklarierte Variable beschränkt ist.Function(x)
oder benutzenSub(x)
.Einige Funktionen von VB.NET, die C # nicht bietet:
Select
Klausel kann in Linq-Abfragen weggelassen werden.Nothing
Schlüsselwort ist viel nützlicher, alsnull
dass alles (auch Werttypen) festgelegt werden kannNothing
und Sie die Standardeinstellung erhalten. Dasdefault
Schlüsselwort ist nicht erforderlich .In meinem Shop wird MVC3 mit Razor unter Verwendung von VB.NET ausgeführt. Sobald Sie die (meist unbegründeten) Vorurteile überwunden haben, ist es eine sehr schöne Sprache. Es ist nicht wirklich ausführlicher als C #, wie viele behaupten (mit Ausnahme von Lambdas), und es ist so ziemlich Feature-für-Feature-parallel zu C #. Ich habe herausgefunden, dass die meisten Leute, die Hasser sind, in modernem VB.NET für längere Zeit nicht wirklich programmiert haben.
quelle
AndAlso
[ ungeachtet dessen, dass es , wenn gesprochen, kürzer als "doppeltes kaufmännisches Und" ist], ignoriere aber die Tatsache, dass aIf-Then/Else/EndIf
drei Zeilen plus die kontrollierten Anweisungen benötigt, während das C # -Äquivalent mindestens vier Zeilen benötigt und möglicherweise sechs, abhängig von geschweiften Konventionen, es sei denn, man schreibt} else {
als einzelne Zeile.