Die Zukunft von VisualBasic
WebForms (Webformulare), Webdienste (Webdienste) und Sprachverbesserungen, die in einer Version erscheinen werden
Die Leser dieses Artikels sind Benutzer, die bereits mit Visual Basic vertraut sind.
Überblick: Die nächste Version von Microsoft Visual Basic bietet drei Hauptverbesserungen: Verbesserungen bei WebForms, Webservices und objektorientierter Syntax. Mit WebForms können erfahrene Visual Basic-Benutzer Netzwerkanwendungen genauso einfach entwickeln wie heutige eigenständige Programme. Über die SOAP-Schnittstelle können Sie mit Webservices die von Ihnen entworfenen Komponenten überall dort bereitstellen, wo Sie Zugang zum Internet haben. Darüber hinaus machen mehrere wichtige Verbesserungen in objektorientierten Sprachen Visual Basic-Code so flexibel wie C, einschließlich Vererbung, Polymorphismus und Überladung. Informationen zu diesem Aspekt finden Sie in Steve Ballmers „VBITSkeynoteonthenextgenerationofVisualBasic“
isualBasic hat viele Verbesserungen erfahren. Aber eine Sache, die ich seit seiner Einführung daran geliebt habe, ist, dass man seine Programme im Grunde immer noch genauso schreiben kann wie im Jahr 1991. Natürlich wurde das Softwarepaket im Vergleich zu damals erheblich verbessert, aber diese Verbesserungen sind im Allgemeinen ergänzend und verschleiern nicht den Zweck, Visual Basic einfacher und schneller zu machen. Wird zum Entwerfen und Schreiben verwendet und debuggen Sie herausragende objektorientierte Anwendungen.
Die aktuelle Version von Visual Basic 6.0 führt WebClasses als vereinfachtes Mittel zum Konfigurieren robuster netzwerkorientierter Anwendungen ein. Tatsächlich bieten WebClasses zahlreiche Möglichkeiten, Programme über gängige Tools ins Internet zu portieren. (Eine detaillierte Diskussion der Skalierbarkeit von Visual Basic 6.0 im Netzwerk finden Sie in Ted Pattisons „Advanced Basics Column“ (veröffentlicht von Microsoft Internet Developer im Oktober 1999)
Ich hatte kürzlich die Gelegenheit, mich über einige der neuen Verbesserungen zu informieren, die für die nächste Version von Visual Basic geplant sind. Die Hauptverbesserung betrifft die Speicherkapazität, wodurch sich die den Entwicklern zur Verfügung stehende Speicherkapazität verdreifacht hat. Die nächste Version von Visual Basic soll eine Funktion namens WebForms in der Visual Studio®-Umgebung enthalten. WebForms stellt eine neue komponentenbasierte Netzwerklösung dar. Webservices werden zu einer neuen XML-basierten Lösung, die Ereignisverarbeitungsfunktionen der mittleren Ebene über Standardnetzwerkprotokolle veröffentlicht. Gleichzeitig wird die Visual Basic-Sprache einige von Entwicklern seit langem gewünschte Konstrukte enthalten, wodurch Visual Basic mit den objektorientierten Programmiergewohnheiten in Einklang gebracht wird, mit denen C- und Java-Benutzer vertraut sind.
Diese Verbesserungen werden in der nächsten Betaversion von Visual Basic bekannt gegeben. Hier werde ich einige Codeausschnitte geben, aber nicht die vollständige Lösung. Worüber gibt es jetzt also Anlass zur Sorge? Es ist ganz einfach: Solange Sie entschlossen sind, diese neuen Funktionen zu nutzen, können Sie Ihre Programme jetzt mit diesen spezifischen Methoden entwerfen und erhalten die besten praktischen Übungen, die Ihnen beim reibungslosen Übergang zur nächsten Version von Visual Basic helfen. Auch wenn Sie dies nicht tun, haben Sie nichts zu verlieren, solange Sie Ihre zukünftigen Programme nach den Grundsätzen organisieren, die ich am Ende dieses Artikels dargelegt habe.
VisualStudioWebForms
Die nächste Version von Visual Basic wird Teil der Visual Studio-Entwicklungsumgebung sein und dürfte Webentwicklern das neue Konzept von WebForm vorstellen. Der Zweck der Einführung des WebForm-Konzepts besteht darin, die Direktzugriffsfunktion von Visual Basic zu erweitern, sodass Visual Basic auf das Schreiben von Netzwerkprogrammen angewendet werden kann, die immer größere Auswirkungen haben. Entwickler, die eine beliebige Sprache in Visual Studio verwenden, können diese Visual Studio-WebForms freigeben.
Eine WebForms-Seite besteht aus zwei Teilen: einer HTML-Datei, die die visuelle Schnittstelle der WebForms-Seite implementiert, und einer Quelldatei, die WebForms-Seitenereignisse verarbeitet. Da ein Drittel der aktuellen Entwicklung, die auf der Visual Basic-Umgebung basiert, netzwerkorientiert ist, plant Microsoft, die Fähigkeiten in diesem Bereich weiter zu verbessern. In der nächsten Version von Visual Basic können Sie WebForms auf die gleiche Weise entwerfen, wie Sie Visual Basic heute zum Generieren von Formularen verwenden. Sie verfügen über eine Toolbox mit Web-Steuerelementen. Sie können Steuerelemente per Drag-and-Drop direkt in den HTML-Editor ziehen, um sie zu verwenden. Sie müssen lediglich ihre Eigenschaften festlegen und entsprechenden Code schreiben. (Siehe Abbildung 1). Zusammenfassend lässt sich sagen, dass Sie diese Aufgaben genauso ausführen können, wie Sie Visual Basic zum Generieren von Formularen verwenden würden. Sie verfügen über Formularentwürfe und kompilierten Code, die vollständig mit dem IntelliSense®-WYSIWYG-Format kompatibel sind. Solange Sie also wissen, wie man Anwendungen mit Visual Basic schreibt, können Sie mit WebForms Webentwickler werden, ohne Ihre Arbeitsweise überhaupt zu ändern.
Abbildung 1: Erstellen eines Webformulars in vier Schritten
WebForms läuft auf dem Server und übermittelt Formulare ausschließlich im HTML-Format an Benutzer. Genau wie ActiveServerPage(asp) handelt es sich weder um einen bestimmten Browser noch um eine WebForm-basierte Anwendung, sondern der gesamte Prozess läuft auch auf dem Server. Tatsächlich führen Sie ein Programm aus, das eine Schnittstelle im HTML 3.2-Format für Remote-Benutzer generiert. Im Gegensatz zu ASP-Webseiten werden diese Codes kompiliert und ausgeführt statt interpretiert, sodass die Ausführungsgeschwindigkeit erheblich verbessert wird.
Der Zweck des Entwurfs von WebForms besteht darin, die besten Funktionen von ASP und WebClass zu nutzen. Sie können jede Sprache der Visual Studio-Familie zum Generieren von WebForms verwenden. So können Sie Ihr Wissen nutzen, um effiziente, serverorientierte Webanwendungen zu schreiben.
Webservices
Webservices sind die zweite große Verbesserung des Visual Studio-Entwicklungstoolsystems. Im Kern ist ein Webservice ein Event-Handler der mittleren Ebene, der über ein Standard-Netzwerkprotokoll veröffentlicht wird. Da sie HTTP als Transportmechanismus verwenden (siehe Abbildung 2), können sie über Firewalls hinweg kommunizieren. Sie können einfach mehrere Webservices in einer Webanwendung erstellen, solange die URLs entsprechend zugewiesen sind. Wenn das Programm ausgeführt wird, werden Aufrufe zwischen all diesen internen Komponenten automatisch gepackt und über die XML-Schnittstelle aufgerufen. Entwickler können Webservices auf jeder Plattform und in jeder Sprache schreiben und nutzen. Wenn Sie Vertraulichkeit benötigen, können Sie SecureSocketLayer (SSL) oder Standard-Prüftechnologie verwenden.
Abbildung2WebservicesArchitektur
Wenn Ihnen irgendetwas davon bekannt vorkommt, ist das ein guter Anfang. Der zum Übertragen von Daten zwischen Komponenten verwendete Mechanismus ist SOAP, das Simple Object License Protocol. DonBox stellte SOAP ausführlich im MSDN™ Magazine vor, das im März 2000 veröffentlicht wurde.
Alle diese neuen Funktionen sollen es Webanwendungsentwicklern ermöglichen, vorhandene, wiederverwendbare Webdienste zu erstellen, sodass sie ihre Anwendungen schneller schreiben können, ohne sie jedes Mal von Grund auf neu schreiben zu müssen. Dies wird eine neue Ära der Programmcode-Anbieter und Programmentwickler einläuten.
Mit der nächsten Version von Visual Basic können Sie die Funktionen bald in Form eines Webservices in einem bestimmten Projekt veröffentlichen und implementieren. Möglicherweise kennen Sie den Prozess, eine Visual Basic-Klasse öffentlich zu machen. In der nächsten Version von Visual Basic wird es ein neues Logo geben, vorübergehend webpublic genannt. Das bedeutet, dass das Programm als Webservice veröffentlicht wird. Es kann nicht nur von lokalen Projekten verwendet werden, die es über die COM-Schnittstelle benötigen, sondern kann auch jedes Netzwerkprogramm bedienen, das auf seine URL-Adresse verweist. Genauso wie Sie einen Verweis auf ein öffentliches Objekt in einem neuen Projekt hinzufügen können, können Sie einen Verweis auf ein Netzwerkprogramm hinzufügen und es so verwenden, als wäre es ein lokales Programm.
Natürlich ist der Betätigungsmechanismus etwas anders. Visual Basic kann Verweise auf lokale Objekte über die COM-Schnittstelle auflösen. Wenn Sie Ihrer Anwendung einen Verweis auf einen Netzwerkdienst hinzufügen, generiert das Remoteobjekt automatisch die Schnittstellendefinition und sendet sie mithilfe des SOAP-Protokolls an die Visual Studio-Entwicklungsumgebung. Obwohl diese im XML-Format generiert werden, müssen Sie selbst keine Verbindungsarbeiten durchführen. VisualBasic erledigt das automatisch für Sie. Nachdem Sie die Schnittstellendefinition erhalten haben, können Sie IntelliSense so verwenden, als hätten Sie Code geschrieben, der auf das Objekt verweist.
Hier ist ein einfaches Beispiel. In manchen Fällen möchten Sie vielleicht diese Funktion namens Seahawks schreiben, die etwa wie der folgende Code aussehen könnte:
PublicFunctionSeahawks(ByValopponentAsString)AsString
Seahawks="verlieren"
EndFunction
Wenn das von Ihnen erstellte Projekt diese Funktion enthält, generiert Visual Basic automatisch eine XML-Formatbeschreibung dieser Funktion und veröffentlicht sie im Internet.
<?xmlversion='1.0'?>
<methodshref='http://julian/Football/Teams'>
<methodname='Seahawks'href='Seahawks'>
<Anfrage>
<paramdt='string'>Gegner</param>
</request>
<responsedt='string'/>
</Methode>
</methods>
Diese XML-Datei wird zur Beschreibung der Seahawks-Funktionen verwendet. Wenn Sie die Visual Studio-Entwicklungsumgebung verwenden, können Sie jeden veröffentlichten Webservice per Drag-and-Drop direkt in die Anwendung ziehen, um eine neue Klasse zu erstellen. Wenn Sie einen Webservice irgendwo im Internet aufrufen möchten, müssen Sie lediglich eine Instanz der Klasse erstellen, die den Webservice enthält, und dann seine veröffentlichten Methoden aufrufen.
Wenn die Seahawks-Funktion aufgerufen wird, kommuniziert sie automatisch über XML-Pakete. Wenn Sie Microsoft® Internet Explorer 5.0 (mit XML-Unterstützung) verwenden, können Sie versuchen, diese Funktion in Ihrem Browser auszuführen. Sie können diese Funktion auch über die URL-Adresse wie folgt aufrufen:
http://julian/webservice1/component1.methods/Seahawks?opponent=Miami
Es werden Daten im XML-Format wie folgt zurückgegeben:
<?xmlversion="1.0"?>
<Response>verlieren</Response>
Um die Entwicklung von Webservices zu erleichtern, führt Visual Basic einen neuen Objekttyp ein: WebService. Sie können Ihren WebService jetzt entwerfen und für einen Remote-Service bereitstellen, indem Sie einfach eine lokale DLL-Datei erstellen.
Sprachverbesserungen
Es besteht seit langem ein angespanntes Verhältnis zwischen Programmierern, die Visual Basic bevorzugen, und Programmierern, die andere, „ausgereiftere“ Sprachen bevorzugen. Mehr als einmal habe ich meine Lieblingsprogrammiersprache gegen den Vorwurf verteidigt, dass es sich um eine „Spielzeugsprache“ handele und Visual Basic keine OOP-Funktionen besitze.
Okay, raten Sie mal, was passiert ist? Die nächste Version von Visual Basic wird ihren Beschwerden endlich ein Ende setzen. Microsoft plant, drei Hauptfunktionen der objektorientierten Programmierung hinzuzufügen: Vererbung, Polymorphismus und Überladung. Das ist noch nicht alles! Zusätzliche Konstrukte, einschließlich strukturierter Fehlerbehandlung und -suche, werden ebenfalls in die Visual Basic-Sprache eingeführt.
Mit der Vererbungsfunktion können Sie eine Basisklasse entwerfen und dann einige abgeleitete Klassen schreiben, die die Funktionen der Basisklasse erben. Dies kann Zeit sparen und die Wiederverwendbarkeit des Programms verbessern. Sie schreiben beispielsweise eine Basisklasse namens BaseClass, die eine Funktion hat:
FunctionGetCustomerName()
„Irgendetwas
EndFunction
Jetzt möchten Sie eine weitere Klasse schreiben, die die GetCustomerName-Funktion der Basisklasse genau wie ihre eigene Funktion aufrufen kann. Was war die alte Methode? Dies war in der Vergangenheit nicht möglich. Allerdings erfordert die neue Methode jetzt nur noch das Einfügen einer einfachen Zeile über der neuen Klasse:
ErbtBaseClass
FunctionGetCustomerID()
„Irgendetwas
EndFunction
Das Schreiben von zwei oder mehr Funktionen mit demselben Namen, aber unterschiedlichen Bezeichnern wird als Überladung bezeichnet. In gewissem Umfang hat Visual Basic eine Überladung bei der Konvertierung interner Typen und dem Festlegen von Eigenschaften beim Aufrufen von Funktionen implementiert. Vergleichen Sie die folgenden zwei Zeilen gültigen Visual Basic-Codes:
Text1.Text="7"
Text1.Text=7
In beiden Aufrufen wird der Text in Text1 auf die Zeichenfolge „7“ gesetzt. Dies ist ein überladener Aufruf, da Visual Basic weiß, wie die verschiedenen Datentypen der Eingabe zu verarbeiten sind. Es behandelt sie als Variablen und konvertiert sie automatisch. Wenn Sie einige Funktionen mit klar definierten Parametertypen aufrufen, führt Visual Basic dieselbe Konvertierung ebenfalls durch. Die folgenden zwei Funktionsaufrufe:
a=SetVal("This")
a=SetVal(7)
Folgende Funktionen können korrekt aufgerufen werden:
FunctionSetVal(xAsString)
Form1.Text1.Text=x
EndFunction
Da Visual Basic bereits viele verschiedene Variablentypen übertragen kann, warum braucht man Überladungsfunktionen? Dies liegt daran, dass eine einzelne Funktion derzeit zwar mehrere Datentypen verarbeiten kann, jedoch keine unterschiedlichen Aktionen basierend auf den verschiedenen übergebenen Datentypen erzeugen kann. Vergleichen Sie stattdessen die folgenden beiden Funktionen:
FunctionGetCustomerID(custnameasstring)AsInteger
'Suchen Sie die Kunden-ID basierend auf dem Kundennamen
EndFunction
FunctionGetCustomerID(purchaslong)AsInteger
'Suchen Sie nach der Kunden-ID basierend auf der Kauf-SE-Bestellung
EndFunction
Durch Überladung können Sie Funktionen basierend auf dem Eingabedatentyp implementieren. Dies ist für die nächste Version von Visual Basic sehr wichtig, da sie über eine neue Funktion verfügt – den Standarddatentypschutz. Im Allgemeinen ist die automatische Konvertierung von Variablen von Vorteil, aber Sie können sich vorstellen, dass sie Ihnen manchmal Probleme bereiten kann. Was würde beispielsweise im vorherigen Beispiel von SetVal passieren, wenn Sie das Zeichen 7 anstelle der Zeichenfolge „7“ übertragen möchten? Die nächste Version von Visual Basic wird diesen Fehler automatisch abfangen. (Wenn Ihr Code auf der vorherigen nicht typbewussten Funktionalität von Visual Basic basiert, wird diese Funktion deaktiviert.)
Schließlich ist Polymorphismus der Prozess der Neudefinition einer bereits definierten Klasse. Sie möchten beispielsweise eine abgeleitete Klasse der BaseClass-Klasse schreiben, aber die Funktion „GetCustomerName“ neu schreiben. In der nächsten Version von Visual Basic können Sie diese Klassendefinition mit einer neuen Methode ähnlich der folgenden implementieren: (Hinweis: Die endgültige Syntax hängt von der offiziellen Version ab.)
ErbtBaseClass
FunctionGetOrders()
OverridesFunctionGetOrders()
•••
EndFunction
Weitere Syntaxfunktionen
Die nächste Version von Visual Basic bietet möglicherweise mehr als nur die oben erwähnten objektorientierten Verbesserungen. Außerdem gibt es Thread-Generierung, Fehlerbehandlung und viele lang erwartete neue Verbesserungen für Skalierbarkeit und Wiederverwendbarkeit.
Derzeit unterstützt Visual Basic das Apartment-Thread-Modell. Obwohl dieses Modell echte Effizienz bei der Anwendungsentwicklung bietet, ist es nicht ideal. Die nächste Version von Visual Basic wird in diesem Bereich Verbesserungen enthalten. Es verwendet ein Freethread-Modell, das beim Schreiben skalierbarer Netzwerkanwendungen nützlich ist. Visual Basic enthält außerdem einige Syntaxkonstrukte, mit denen Sie mehrere Threads generieren können. Typische Thread-Vorgänge sind wie folgt:
sett=NewThread(NewThreadstart
(AddressOf(BaseClass.Function1))
Anhand dieses Beispiels können Sie erkennen, dass die nächste Version von Visual Basic über die AddressOf-Struktur verfügt, die zum Zurückgeben der Adresse der Funktion verwendet wird. Sie sind nicht länger gezwungen, API-Funktionen zu überspringen, die Funktionszeiger erfordern! Wenn Sie einen Rückruf benötigen, können Sie diesen nutzen.
Eine weitere geplante Verbesserung ist die strukturierte Fehlerbehandlung. Vor nicht allzu langer Zeit mussten Sie in Visual Basic zahlreiche OnError-Anweisungen in Ihren Code einfügen. Seit Jahren ist es mir unangenehm, so viele GOTO-Anweisungen einzufügen. Diese Aussagen warnten mich immer wieder davor, sie noch einmal zu verwenden! Schauen wir uns nun dem Problem an: Wir benötigen einen Fehlerbehandlungsmechanismus.
Die nächste Version von Visual Basic wird die Fehlerbehandlung zentralisieren. VisualBasic unterstützt das try...catch...finally-Konstrukt wie diese „edlen“ Sprachen. Sie können am Anfang Ihres Codes eine Unterroutine mit Fehlerbehandlung platzieren. Hier ist ein Beispiel für die Implementierung der Fehlerbehandlung:
SubSafeWrite()
Versuchen
„Testdatei“ öffnen
•••
Schreiben Sie Nr. 1
Fangen
Töte „Testfile“
Endlich
Schließen#1
EndeVersuchen
EndSub
Es gibt weitere aufregende Verbesserungen, mit denen aktuelle Visual Basic-Benutzer vertraut sein werden. In der nächsten Version von Visual Basic können Sie Variablen gleichzeitig mit ihrer Deklaration initialisieren:
Dimaasinteger=10
Sie können auch ein neues Objekt in einem Ausdruck erstellen und initialisieren. Sie können Variablen auch über Klassen teilen. Schließlich, aber nicht nur, erstreckt sich das Konzept der Vererbung auf die Grundlage der Benutzeroberfläche des Projekts. Einer der typischen Kritikpunkte an Visual Basic ist, dass es schwierig ist, viele verschiedene Formulare auf der gleichen Grundlage zu erstellen. (Dies ist in einer gemeinsamen Entwicklungsumgebung häufig eine Anforderung). In der nächsten Version von Visual Basic können Sie dies über Vorlagentypen tun.
Diese Verbesserungen wurden seit Jahren erwartet. mal sehen. Die Kommunikation von Visual Basic (die ich seit fast einem Dutzend Jahren mache) ist immer komplexer geworden, weit über die erste Version von 1991 hinaus. Visual Basic wurde in seinen Anfängen ursprünglich für den schnellen Entwurf und die Entwicklung kleiner, tragbarer Werkzeugprototypen verwendet. Dadurch erlangte Visual Basic (meiner Meinung nach unerwartet) den Ruf einer „Spielzeugsprache“. Jetzt, da es eindeutig kein Spielzeug mehr ist, handelt jeder, der das sagt, aus blinden Vorurteilen. Mittlerweile gibt es eine große Anzahl Visual Basic-basierter Softwarepakete in verschiedenen Bereichen. VisualBasic entwickelt sich weiter. Letztes Jahr sprach ich am Center for Research mit einem Softwareentwickler, der mit Web-Class Programme schrieb, die jede Woche Millionen von Zugriffen erhielten.
Die Änderungen in der nächsten Version von Visual Basic sind überraschend. Wenn Sie die Vorteile nutzen möchten, die sie mit sich bringen, dann nutzen Sie sie. Wenn Sie das nicht möchten, können Sie getrost auf das zurückgreifen, was Sie noch nutzen. Es ist jedoch gut zu wissen, dass die Funktionen von C und Java in einer Sprache wie Visual Basic implementiert werden können, die viel einfacher zu verwenden ist als C und Java.
Zukünftige Entwicklungstrends
Welchen Eindruck hat diese Vorschaupräsentation bei Ihnen hinterlassen? Das ist eine gute Frage, aber Sie können die Antwort darauf finden. Im vergangenen Jahr konnten wir die Veränderungen in der ASP-Entwicklung deutlich erkennen. Diese Entwicklungsprogramme bestehen oft aus einigen einfach zu lesenden ASP-Skripten, und das gesamte Programm wird auf der Grundlage dieser Skripte ausgeführt. Da ASP beim Zusammenstellen jeder Komponente den gesamten Skriptcode interpretiert und ausführt, entdecken die Menschen nach und nach die inhärenten Grenzen dieser Technologie. Ich höre immer mehr Entwickler sagen, dass sie ihre Event-Handler vollständig vom Skriptcode trennen und sie unter einem schnelleren Kompilierungsmodell, geschrieben in C++ oder Visual Basic, über die COM-Schnittstelle für die Assemblierung implementieren möchten.
Aus jedem erdenklichen Grund kann Visual Basic dies erfüllen. Das Entwerfen von Komponenten mit Visual Basic ist eigentlich nicht schwieriger als die Verwendung von VBScript oder JScript®. Sie können Code schreiben, der schneller ausgeführt wird und Ihre Anforderungen problemlos erfüllt. Wenn die nächste Version von Visual Basic veröffentlicht wird, können Sie Visual Basic verwenden, um netzwerkorientierte Objekte zu generieren, die mit ASP kompatibel sind. Kurz gesagt, der Weg der Komponentenkombination wird jetzt und in Zukunft als die beste Wahl angesehen.
Wie ich bereits erwähnt habe, gibt es eine breite Basis internetorientierter Anwendungen, die mit Visual Basic (und WebClasses) geschrieben wurden. Das Problem besteht darin, dass die meisten WebClasses-basierten Anwendungen nicht gut gestaltet sind. Sie unterscheiden nicht gut zwischen den verschiedenen Schichten der Anwendung und verwechseln Prozesse der mittleren Ebene mit DHTML-basierten Benutzeroberflächen.
Die nächste Version von Visual Basic wird WebClasses einführen, sorgfältig ausgewählte Tools für die Webentwicklung. Weil es skalierbarer, leistungsfähiger und wirklich sprachunabhängig ist. Es funktioniert mit allen Tools in Visual Studio. Wenn Sie einige Grundregeln der mehrschichtigen Entwicklung beachten, können Sie diesen Übergang problemlos durchführen. Besonderes Augenmerk sollte auf die Trennung des Mittelschichtprozesses und des Anzeigeschichtprozesses gelegt werden. Es wird dringend empfohlen, bei der Ausführung dieser Aufgaben auf die Windows® DNA2000-Architektur zurückzugreifen. Die Kernfunktionen der Ereignisverarbeitung müssen in der mittleren Schicht ausgeführt werden, und Sie können verschiedene Komponenten verwenden, die in Ihrer bevorzugten kompilierten Sprache geschrieben sind, um diese Funktionen zu implementieren. Diese Komponenten werden dann in einer ASP-Skriptdatei zusammengestellt, damit die Komponenten zusammenarbeiten können. Ideal wäre es, wenn Sie den Großteil Ihrer Logik in Ereignisobjekten und nicht in Skripten unterbringen würden. Dies ist nicht nur eine gute Idee für zukünftige Umstellungen auf Webservices, es ist auch eine Praxis, die es wert ist, nachgeahmt zu werden. ->