1 Microsoft.NET Eine neue Generation der Softwareentwicklung Klaus Rohe ([email protected]).Net...
-
Upload
harold-holyoak -
Category
Documents
-
view
215 -
download
0
Transcript of 1 Microsoft.NET Eine neue Generation der Softwareentwicklung Klaus Rohe ([email protected]).Net...
11
Microsoft .NETMicrosoft .NET Eine neue Generation der Eine neue Generation der
SoftwareentwicklungSoftwareentwicklung
Klaus Rohe (Klaus Rohe ([email protected]@microsoft.com)).Net Strategy & Developer Group .Net Strategy & Developer Group Microsoft GmbHMicrosoft GmbH
22
AgendaAgenda Microsoft .NETMicrosoft .NET Das Windows .NET FrameworkDas Windows .NET Framework
Common Language Runtime (CLR)Common Language Runtime (CLR) Assemblies, Security, DeploymentAssemblies, Security, Deployment
Windows .NET Framework KlassenbibliothekenWindows .NET Framework Klassenbibliotheken ADO.NETADO.NET Windows FormsWindows Forms ASP.NETASP.NET .NET Enterprise Services.NET Enterprise Services .NET Remoting.NET Remoting
XML Web-Services XML Web-Services Gegenüberstellung Microsoft .NET - J2EE Gegenüberstellung Microsoft .NET - J2EE Demo mit Visual Studio .NETDemo mit Visual Studio .NET
33
Microsoft .NETMicrosoft .NETSoftware for connecting information, people, systems and devicesSoftware for connecting information, people, systems and devices
Connected Connected DevelopmentDevelopment
Quickly build solutions Quickly build solutions that interoperate that interoperate
across languages, across languages, platforms and devicesplatforms and devices
Connected SystemsConnected SystemsIntegrate new and existing systems Integrate new and existing systems
across the organization, across the organization, and externally with partners. and externally with partners.
Connected BusinessConnected BusinessAgility to connect more deeply with Agility to connect more deeply with customers, integrate with partners customers, integrate with partners
and empower employeesand empower employees
Connected Connected ExperiencesExperiences
Information Information anytime, anywhere, anytime, anywhere,
any deviceany device
Built on a foundation of XML Web servicesBuilt on a foundation of XML Web services
44
Microsoft .NETMicrosoft .NET
Windows BetriebsystemWindows Betriebsystem
.NET SDK.NET SDK
.NET Framework.NET Framework
Common Common Language Language RuntimeRuntime
ApplikationApplikation
EnterpriseEnterpriseServerServer
Windows 2000 ServerWindows 2000 Server
SQL Server 2000SQL Server 2000
BizTalk Server 2002BizTalk Server 2002
More…More…
Visual Studio.NETVisual Studio.NET
Visual C#Visual C#Visual C++Visual C++
Visual Basic .NETVisual Basic .NET
ToolsTools
55
Windows .NET FrameworkWindows .NET Framework
C#C# C++C++ VBVB PerlPerl……
Common Language RuntimeCommon Language Runtime
Common Type SystemCommon Type System
Base Class LibraryBase Class Library
Transaktionen (COM+)Transaktionen (COM+) IISIISMSMQMSMQ WMIWMI
Windows BetriebssystemWindows Betriebssystem
ADO.NET ADO.NET (Daten und XML)(Daten und XML)
ASP.NETASP.NETWeb Forms Web Forms
Web ServicesWeb Services
WindowsWindows FormsForms
Enterprise Enterprise ServicesServices
66
Common Type System (CTS)Common Type System (CTS)
Value TypesValue Types
Value Types
Byte
Char
Single
Double
Enum
Int16 UInt16
Int32 UInt32
Int64 UInt64
Decimal Structure
Boolean Others
Object
Reference TypesReference Types
Class
Interface
Array
String
Delegate
Others
Werden auf dem Werden auf dem Heap abgelegtHeap abgelegt
Werden auf dem Werden auf dem Stack abgelegtStack abgelegt
77
Windows .NET FrameworkWindows .NET FrameworkCommon Language Runtime (CLR)Common Language Runtime (CLR)
Thread Support COM Marshaller
Type Checker
Security Engine
Exception Manager
Debug Engine
JIT Compiler Code Manager
GarbageCollection
Base Class Library Support
88
ECMA CLI & C#ECMA CLI & C#Standards, Interoperabilität & MultiplattformStandards, Interoperabilität & Multiplattform
C#C#
Extended Numerics
Library
Extended Array
Library
XML Library
NetworkLibrary
Reflection
Library
Runtime InfrastructureLibrary
Base ClassLibrary
Standards Standards ECMA-334ECMA-334, C# (C sharp) , C# (C sharp) Language Specification, and Language Specification, and ECMA-335ECMA-335, , Common Language Infrastructure, Common Language Infrastructure, approved by the ECMA General approved by the ECMA General Assembly of 13th December 2001.Assembly of 13th December 2001.
http://www.ecma.ch HP, Intel & Microsoft
Microsoft Expands Commitment to Open Microsoft Expands Commitment to Open Standards and Interoperability. Standards and Interoperability. Teams With Corel to Develop Shared Teams With Corel to Develop Shared Source Implementation of ECMA Source Implementation of ECMA Standards C# and CLI For FreeBSD and Standards C# and CLI For FreeBSD and Windows. REDMOND, Wash. - June 27, Windows. REDMOND, Wash. - June 27, 2001. 2001. Beta availability expected: H1 2002Beta availability expected: H1 2002
99
Common Language RuntimeCommon Language RuntimeAusführungsmodellAusführungsmodell
VB.NETVB.NETSource Source codecode
VC++.NETVC++.NETVC#.NETVC#.NET
Operating System ServicesOperating System Services
Common Language RuntimeCommon Language Runtime
Native CodeNative Code
ManagedManagedcodecode
UnmanagedUnmanagedComponentComponent
JIT CompilerJIT Compiler
AssemblyAssemblyIL CodeIL Code
AssemblyAssemblyIL CodeIL Code
AssemblyAssemblyIL CodeIL Code
CompilerCompiler CompilerCompilerCompilerCompiler
1010
// File: simple.cs
using System;
class Simple
{
public static void Main()
{
for (int i = 1; i <= 5; i++)
Console.WriteLine(i);
}
}
csc simple.cscsc simple.csildasm simpl.exeildasm simpl.exe
Common Language RuntimeCommon Language RuntimeMSIL BeispielMSIL Beispiel
1111
Common Language RuntimeCommon Language RuntimeAssembliesAssemblies
.NET Anwendungen bestehen aus .NET Anwendungen bestehen aus AssembliesAssemblies Assembly = KomponenteAssembly = Komponente
Ein Assembly ist ein Container für ModuleEin Assembly ist ein Container für ModuleSämtliche Sicherheits- und Sämtliche Sicherheits- und
Versionsüberprüfungen durch die CLR Versionsüberprüfungen durch die CLR erfolgen auf der Basis von Assemblies !!!erfolgen auf der Basis von Assemblies !!!
1212
Managed Code KompilierenManaged Code Kompilieren
CompilerCompiler(C#, VB.NET, etc.)(C#, VB.NET, etc.)
Assembly (DLL or EXE)Assembly (DLL or EXE)
MSIL CodeMSIL Codefor Class Xfor Class X
Metadata for Classes X, Y and ZMetadata for Classes X, Y and Z
MSIL CodeMSIL Codefor Class Yfor Class Y
MSIL CodeMSIL Codefor Class Zfor Class Z
Class X { … }Class X { … }Class Y { … }Class Y { … }Class Z { … }Class Z { … }
1313
Private AssemblyPrivate Assembly Assembly kann nur von genau einer Assembly kann nur von genau einer
Anwendung benutzt werdenAnwendung benutzt werden
Shared AssemblyShared Assembly Assembly kann global von allen Assembly kann global von allen
Anwendungen benutzt werdenAnwendungen benutzt werden
Dynamic AssembliesDynamic Assemblies Zur Laufzeit erzeugte AssembliesZur Laufzeit erzeugte Assemblies
AssembliesAssembliesKategorienKategorien
1414
Identifikation anhand eines einfachen Identifikation anhand eines einfachen Namens, z.B. “MyAssembly” Namens, z.B. “MyAssembly”
Keine Versionsüberprüfung durch die Keine Versionsüberprüfung durch die CLR, Versionierung durch den CLR, Versionierung durch den EntwicklerEntwickler
Installation per File copy Installation per File copy Standardmäßig befinden sich Assembly Standardmäßig befinden sich Assembly
und Anwendung im gleichen Verzeichnisund Anwendung im gleichen Verzeichnis Verzeichnis kann per config-Datei definiert Verzeichnis kann per config-Datei definiert
werdenwerden
AssembliesAssembliesPrivate AssemblyPrivate Assembly
1515
Identifikation über einen Identifikation über einen Strong NameStrong Name Versionsüberprüfung durch die Versionsüberprüfung durch die
RuntimeRuntime Installation im Global Assembly CacheInstallation im Global Assembly Cache
Systemweiter “Speicherbereich” für .NET Systemweiter “Speicherbereich” für .NET AssembliesAssemblies Windows .NET Framework Assemblies Windows .NET Framework Assemblies keine Registry-Einträge für die Assemblieskeine Registry-Einträge für die Assemblies
AssembliesAssembliesShared AssemblyShared Assembly
1616
Werden mit dem API im Werden mit dem API im System.Reflection.Emit Namespace zur System.Reflection.Emit Namespace zur Laufzeit erzeugtLaufzeit erzeugt
Dynamic AssembliesDynamic Assemblies Können auf als File im Dateisystem Können auf als File im Dateisystem
gespeichert werdengespeichert werden Können direkt ausgeführt werdenKönnen direkt ausgeführt werden
Beispiel:Beispiel: Kompilieren von Kompilieren von regular Expressionsregular Expressions
AssembliesAssembliesDynamic AssemblyDynamic Assembly
1717
.NET Sicherheitsmodell.NET Sicherheitsmodell
Role-Based SecurityRole-Based SecurityEnforced by application on itselfEnforced by application on itself
Code Access SecurityCode Access SecurityEnforced by the common language runtime on the assemblyEnforced by the common language runtime on the assembly
Windows User SecurityWindows User SecurityEnforced by the OS on all the codeEnforced by the OS on all the code
Role-Based SecurityRole-Based Security Role based security erlaubt es dem Code Role based security erlaubt es dem Code
Sicherheitsentscheidungen zu treffen, welche auf der Sicherheitsentscheidungen zu treffen, welche auf der Rolle des Users basieren, der den Code ausführt.Rolle des Users basieren, der den Code ausführt.
Code Access SecurityCode Access Security Code access security trifft Sicherheitsentscheidungen Code access security trifft Sicherheitsentscheidungen
für den Code auf der Basis seiner Herkunft.für den Code auf der Basis seiner Herkunft.
1818
Deployment von .NET ApplikationenDeployment von .NET Applikationen
Beim ersten Start der Windows Forms Beim ersten Start der Windows Forms Applikation werden die benötigten Applikation werden die benötigten Assemblies vom Server geladen und lokal Assemblies vom Server geladen und lokal gecached.gecached.
Beim erneuten Start der Applikation wird Beim erneuten Start der Applikation wird geprüft, ob sich die Assemblies auf dem geprüft, ob sich die Assemblies auf dem Server geändert haben. Nur dann werden Server geändert haben. Nur dann werden sie vom Server geladen.sie vom Server geladen.
Betrieb, Pflege und Wartung genauso Betrieb, Pflege und Wartung genauso einfach, wie bei Web-Applikationen.einfach, wie bei Web-Applikationen.
Windows Forms Applikation
Assembly1
Assembly2
Assembly3
Windows ServerWindows Forms Applikation,lädt Assemblies zur Laufzeit vom Server.
Zentraler Punkt zur Administration der Applikation
1919
Windows .NET FrameworkWindows .NET Framework NamensräumeNamensräume
SystemSystem
Int16, Int16, String,String,
……WebWeb DataData WindowsWindows EnterpriseServicesEnterpriseServices XMLXML ……
UIUI ServicesServices
…… …… Connection,Connection,DataSet, …DataSet, …
FormsForms
……
ServicedComponent, …ServicedComponent, …
XmlDocument, …XmlDocument, …
2020
System
System.Data System.Xml
System.Web
Globalization
Diagnostics
Configuration
Collections
Resources
Reflection
Net
IO
Threading
Text
ServiceProcess
Security
Design
ADO
SQLTypes
SQL
XPath
XSLT
RuntimeInteropServices
Remoting
Serialization
Serialization
Configuration SessionState
Caching Security
ServicesDescription
Discovery
Protocols
UIHtmlControls
WebControls
System.Drawing
Imaging
Drawing2D
Text
Printing
System.WinForms
Design ComponentModel
KlassenbibliothekenKlassenbibliotheken
2121
ADO.NET (1)ADO.NET (1)Datenbankzugriff, XMLDatenbankzugriff, XML
Warum eine neue Schnittstelle für den Warum eine neue Schnittstelle für den Datenzugriff?Datenzugriff? Web Applikationen benötigen andere ArchitekturWeb Applikationen benötigen andere Architektur Lose Kopplung zwischen Applikation und Lose Kopplung zwischen Applikation und
DatenbankDatenbank Komfortabele Unterstützung von XML Komfortabele Unterstützung von XML
entwickelt sich zum universellen Datenformatentwickelt sich zum universellen Datenformat
Problem mit bestehenden APIsProblem mit bestehenden APIs ADO, OLE DB und ODBC: wurden für enge ADO, OLE DB und ODBC: wurden für enge
Kopplung und dauerhafte Verbindung zwischen Kopplung und dauerhafte Verbindung zwischen Client und Datenbank konzipiertClient und Datenbank konzipiert
ADO.NET unterstützt explizit enge und lose ADO.NET unterstützt explizit enge und lose Kopplung zwischen Client und Datenbank Kopplung zwischen Client und Datenbank
2222
ADO.NET (2)ADO.NET (2)
Managed CodeManaged Code
.NET Data Provider.NET Data Provider
DBMSDBMS
ClientClient
DataSet
RowsRows
Connection
Command
DataReader
DataAdapter
Enge Kopplung
Lose Kopplung
2323
Windows Forms (1)Windows Forms (1)Was ist Windows Forms?Was ist Windows Forms?
Eine Klassenbibliothek innerhalb des Eine Klassenbibliothek innerhalb des Windows .NET Frameworks zur Entwicklung Windows .NET Frameworks zur Entwicklung von GUI-Applikationenvon GUI-Applikationen Namespace: System.Windows.FormsNamespace: System.Windows.Forms
Ersetzt die Microsoft Foundation Classes Ersetzt die Microsoft Foundation Classes (MFC)(MFC)
GUI Entwurf mit GUI Entwurf mit Windows FormsWindows Forms ist in Visual ist in Visual Studio.NET eingebautStudio.NET eingebaut
MFC kann aber weiterhin genutzt werdenMFC kann aber weiterhin genutzt werden
2424
Windows Forms (2)Windows Forms (2)Ausschnitt aus der KlassenhierachieAusschnitt aus der Klassenhierachie
System.Object
System.MarshallByRefObject
System.ComponentModel.Component
Control
ButtonBase
Button
TextBoxBase
TextBox
ContainerControll
Form
2525
.NET Enterprise Services.NET Enterprise Services
API zur Entwicklung und Nutzung von API zur Entwicklung und Nutzung von COM+ Komponenten mit Microsoft .NET: COM+ Komponenten mit Microsoft .NET: Distributed TransactionsDistributed Transactions SecuritySecurity Object PoolingObject Pooling Just in time activationJust in time activation Queued ComponentsQueued Components EventsEvents
2626
ASP.NETASP.NET Saubere Trennung von Programmlogik und Saubere Trennung von Programmlogik und
Layout (code-behind)Layout (code-behind) Kompilierte Programme statt ScriptingKompilierte Programme statt Scripting
Erheblich verbesserte AusführungsgeschwindigkeitErheblich verbesserte Ausführungsgeschwindigkeit Deployment während des laufenden Deployment während des laufenden
ServerbetriebesServerbetriebes Unterstützung verschiedenster, mobiler Unterstützung verschiedenster, mobiler
EndgeräteEndgeräte Gute Tool-Unterstützung (VS.NET)Gute Tool-Unterstützung (VS.NET) Modulare, einfach erweiterbare StrukturModulare, einfach erweiterbare Struktur
Servererweiterungen ohne ISAPIServererweiterungen ohne ISAPI WebForms, WebControls, StatemanagementWebForms, WebControls, Statemanagement XML Web ServicesXML Web Services
2727
ASP.NET Architektur
ASP.NETASP.NET Web ControlsWeb Controls
XML Web-ServiceXML Web-Service
Web Clients / Web Service ClientWeb Clients / Web Service Client
Windows Operating SystemWindows Operating System
IISIIS(Web-Server)(Web-Server)
HTTP / SOAPHTTP / SOAP
ASP.NETASP.NETapplicationsapplications
.NET.NETFrameworkFramework
2828
Das .NET Das .NET CompactCompact Framework Framework
.NET Framework für “Smart Devices”.NET Framework für “Smart Devices” Ziel: Software als Service für GeräteZiel: Software als Service für Geräte ““Lightweight” Runtime-ArchitekturLightweight” Runtime-Architektur Kompatible Teilmenge der Desktop Kompatible Teilmenge der Desktop
PlattformPlattform
Verfügbar für:Verfügbar für: Windows CE Windows CE Unterschiedliche FormfaktorenUnterschiedliche Formfaktoren
2929
.NET Remoting.NET Remoting
RemotingRemoting ist der Zugriff auf Objekte ist der Zugriff auf Objekte über Grenzen hinweg.über Grenzen hinweg. Grenzen können unterschiedliche Grenzen können unterschiedliche
Maschinen, Prozesse oder Application Maschinen, Prozesse oder Application Domains sein.Domains sein.
Die CLR abstrahiert OS-Prozesse und Die CLR abstrahiert OS-Prozesse und arbeitet mit „virtuellen Prozessen“ den arbeitet mit „virtuellen Prozessen“ den so genannten so genannten Application Domains Application Domains (Appdomains)(Appdomains)..
3030
Appdomains und RemotingAppdomains und Remoting
Eine Appdomain existiert in genau einem ProzessEine Appdomain existiert in genau einem Prozess Ein Prozess kann mehrere AppDomains beinhaltenEin Prozess kann mehrere AppDomains beinhalten Aufrufe über AppDomain-Grenzen hinweg erfordern Aufrufe über AppDomain-Grenzen hinweg erfordern
RemotingRemoting Marshal-By-Value Objects und Marshal-By-Reference Marshal-By-Value Objects und Marshal-By-Reference
ObjectsObjects
Prozess 1 Prozess 2AppDomain 1 AppDomain 3AppDomain 2
Objekt Objekt
Objekt
Objekt
Objekt
Marshaling Marshaling
3131
Remoting, vereinfachte DarstellungRemoting, vereinfachte Darstellung
Client
App Domain 1
Proxy for O
Channel
Object O
App Domain 2
Channel
3232
Remoting: Remoting: AktivierungsmöglichkeitenAktivierungsmöglichkeitenAppdomain 1 Appdomain 2
Object
Object
Single-call
Singleton
Client-activated
Object
Object
Client
Client
Client
Client
Client
Client
Client
Client
Object
Object
Object
Client
3333
Web Services mit Windows .NET Web Services mit Windows .NET FrameworkFramework Web Services mit ASP.NETWeb Services mit ASP.NET
Die Web Services werden vom IIS gehostetDie Web Services werden vom IIS gehostet Dies ist die Bevorzugte Art mit Microsoft .NET Web Dies ist die Bevorzugte Art mit Microsoft .NET Web
Services zu implementierenServices zu implementieren Komplette Infrastruktur, welche IIS bietet, wird Komplette Infrastruktur, welche IIS bietet, wird
automatisch genutztautomatisch genutzt
Web Services mit RemotingWeb Services mit Remoting Serverprozess, welche die Web Services hostet, Serverprozess, welche die Web Services hostet,
muss vom Programmierer implementiert werden.muss vom Programmierer implementiert werden.
3434
Support von Web Service durch Support von Web Service durch Visual Studio .NETVisual Studio .NET
Eigene Projektart für Web Services, die unter Eigene Projektart für Web Services, die unter ASP.NET entwickelt werdenASP.NET entwickelt werden
Automatische Generierung von Code-Frames Automatische Generierung von Code-Frames für Web-Services.für Web-Services.
Automatische Generierung von Proxies aus Automatische Generierung von Proxies aus WSDL-BeschreibungenWSDL-Beschreibungen
Integrierter UDDI-BrowserIntegrierter UDDI-Browser Erzeugt automatisch Test-Clients für Web Erzeugt automatisch Test-Clients für Web
ServicesServices
3535
Global XML Web Services Architecture (GXA)Global XML Web Services Architecture (GXA)““Secure, Reliable, Transacted servicesSecure, Reliable, Transacted services””
SOAP (Logical Messaging)SOAP (Logical Messaging)
TransportsTransports
MessagingMessagingMessagingMessaging
WSDL, UDDI, InspectionWSDL, UDDI, Inspection
Quality Quality of Serviceof ServiceQuality Quality
of Serviceof Service
TransactionsTransactions
Business Business ProcessesProcessesBusiness Business ProcessesProcessesBPEL4WSBPEL4WS
TransportTransportTransportTransport
XML, EncodingXML, EncodingOther protocolsOther servicesOther protocolsOther services
CoordinationCoordination
SecurityWS-Security
SecurityWS-Security
ReliableMessagingReliable
Messaging
DescriptionDescriptionDescriptionDescription
3636
Unterstützung von GXA durch das Unterstützung von GXA durch das Windows .NET FrameworkWindows .NET Framework Microsoft stellt Microsoft stellt Web Services Enhancements Web Services Enhancements
for Microsoft .NET (WSE)for Microsoft .NET (WSE) zur Verfügung zur Verfügung WSE unterstützt folgende Spezifikationen:WSE unterstützt folgende Spezifikationen:
DIME (Direct Internet Message Encapsulation) DIME (Direct Internet Message Encapsulation) WS-AttachmentsWS-Attachments WS-RoutingWS-Routing WS-SecurityWS-Security
Authentifizierung und IntegritätAuthentifizierung und Integrität
Download:Download: http://http://msdn.microsoft.commsdn.microsoft.com//webserviceswebservices//buildingbuilding//
wsewse//default.aspxdefault.aspx
3737
Enterprise UDDI ServicesEnterprise UDDI Services
Optionaler Service, der mit Windows Server 2003 Optionaler Service, der mit Windows Server 2003 ausgeliefert wirdausgeliefert wird
Einfach zu installieren und zu verwaltenEinfach zu installieren und zu verwalten Entspricht der UDDI Spezifikation V1 & V2 API Entspricht der UDDI Spezifikation V1 & V2 API Sehr gut skalierbar, gleiche Code-Basis wie Sehr gut skalierbar, gleiche Code-Basis wie http://http://
uddi.microsoft.comuddi.microsoft.com Entwickelt mit dem Windows .NET Framework 1.1, Entwickelt mit dem Windows .NET Framework 1.1,
IIS 6.0 und SQL Server 2000IIS 6.0 und SQL Server 2000
3838
Leader in the Industry Web Services EffortLeader in the Industry Web Services Effort
*Source: Gartner Research, October, 2002
Completeness of Vision
Microsoft
IBM
Hewlett-Packard
SunMicrosystemsOracle
'Major Vendor Web Services Platform Influence Magic Quadrant'
Challengers Leaders
Niche Players Visionaries
BEA Systems
As of October 2002
Ability to Execute
3939
Windows als ApplikationsserverWindows als Applikationsserver
ApplikationsserverApplikationsserver
Web-ServerWeb-ServerSOAP-ServerSOAP-Server
TransaktionsmonitorTransaktionsmonitor(Transaktionsservice)(Transaktionsservice)
Transaktionsorientiertes Transaktionsorientiertes Message QueueingMessage Queueing
Directory ServicesDirectory Services
Windows 2000 ServerWindows 2000 Server(Windows Server 2003)(Windows Server 2003)
Microsoft IISMicrosoft IIS
Microsoft COM+ (MTS)Microsoft COM+ (MTS)
Microsoft Message QueueMicrosoft Message QueueMSMQMSMQ
Microsoft Active DirectoryMicrosoft Active Directory
Zusätzliche LizenzkostenZusätzliche Lizenzkosten Teil des BetriebssystemsTeil des Betriebssystems
4040
GegenüberstellungGegenüberstellungMicrosoft .NET – J2EE (1)Microsoft .NET – J2EE (1)
.NET Java
Application Server
.NET Framework
IBM WebSphere, BEA WebLogic, others
Runtime Environment
Common Language Runtime (CLR)
Java Virtual Machine (VM)
Standard Libraries
.NET Framework class library
J2SE, J2EE
GUIs Windows Forms
Swing
Transactions Enterprise Services
EJB
4141
.NET Java
Web Scripting
ASP.NET JSPs
Data Access
ADO.NET JDBC
Development Tools
Visual Studio.NET IBM Visual Age for Java, Borland JBuilder, others
Web Services Support
ASP.NET, .NET Services, others
Some support from IBM and others, more planned
Small Device Platform
.NET Compact Framework
J2ME
GegenüberstellungGegenüberstellungMicrosoft .NET – J2EE (2)Microsoft .NET – J2EE (2)
4242
Demo mit Visual Studio .NETDemo mit Visual Studio .NET1.1. Implementierung eines XML Web-Service mit Implementierung eines XML Web-Service mit
ASP.NETASP.NET
2.2. Implementierung eines Windows Forms Clients, der Implementierung eines Windows Forms Clients, der einen mit Java implementierten XML Web-Service einen mit Java implementierten XML Web-Service konsumiertkonsumiert Der XML Web-Service wurde mit GLUE 3.2.3 Standard Der XML Web-Service wurde mit GLUE 3.2.3 Standard
Edition von Edition von The Mind Electric implementiertThe Mind Electric implementiert (JDK 1.4.0.03). (JDK 1.4.0.03).
public interface IHugeIntMath{
// Elementare mathematische Operationen auf// ganzen Zahlen, die als Strings dargestellt// sind.public String add(String xstr, String ystr);…// Berechnet 'x^y'public String power(String xstr, String ystr);…
}
4343© 2001 Microsoft Corporation. All rights reserved.© 2001 Microsoft Corporation. All rights reserved.
Danke für Ihre Aufmerksamkeit.Danke für Ihre Aufmerksamkeit.
Fragen ?Fragen ?
4444
Weitere Informationen (1)Weitere Informationen (1)http://www.gotdotnet.comhttp://www.gotdotnet.comhttp://www.asp.nethttp://www.asp.nethttp://http://dotnet.oreilly.comdotnet.oreilly.com Design Patterns in C#Design Patterns in C#
http://www.dofactory.com/patterns/Patterns.aspxhttp://www.dofactory.com/patterns/Patterns.aspx http://www.clipcode.net/components/snippets.htmhttp://www.clipcode.net/components/snippets.htm
KomponentenKomponenten http://research.microsoft.com/users/cszypers/pubhttp://research.microsoft.com/users/cszypers/pub
4545
Weitere Informationen (2)Weitere Informationen (2)
Michael Stal, C#- und .NET Tutorial, Teil 1 - 3Michael Stal, C#- und .NET Tutorial, Teil 1 - 3IX Magazin für Professionelle InformationstechnikIX Magazin für Professionelle Informationstechnik
Teil 1: Heft 12, Dezember 2001, Seiten 122 - 129Teil 1: Heft 12, Dezember 2001, Seiten 122 - 129
Teil 2: Heft 1, Januar 2002, Seiten 130 - 135Teil 2: Heft 1, Januar 2002, Seiten 130 - 135
Teil 3: Heft 2, Februar 2002, Seiten 136 - 143Teil 3: Heft 2, Februar 2002, Seiten 136 - 143
Holger Schwichtenberg, Nette Vielfalt, Holger Schwichtenberg, Nette Vielfalt, Sprachen und Entwicklungstools für das .NET Sprachen und Entwicklungstools für das .NET FrameworkFrameworkIX Magazin für Professionelle Informationstechnik, IX Magazin für Professionelle Informationstechnik,
Heft 10, Oktober 2002, Seiten 38 - 50Heft 10, Oktober 2002, Seiten 38 - 50
4646
David ChappellUnderstanding .NETA tutorial and Analysis ISBN 0-201-74162-8
Ralf Westphal.NET kompaktSpektrum Akademischer Verlag, 2002ISBN 3-8274-1185-8
Weitere Informationen (3)Weitere Informationen (3)
4747
Weitere Informationen (4)Weitere Informationen (4)
Don Box, Chris SellsEssential .NET (Development Series): The Common Language Runtime, Vol. 1Pearson Education, Januar 2003ISBN 0-201-73411-7
4848
.NET programming: a practical guide using C#Prentice Hall PTR, July 2002ISBN 0-13-066945-8
Weitere Informationen (5)Weitere Informationen (5)
Component SoftwareBeyond Object-Oriented ProgrammingSecond EditionADDISION-WESLEY, November 2002ISBN 0-201-74572-0Chapter 15, Chapter 21.2, Appendix A