WasIstDotNet

50 %
50 %
Information about WasIstDotNet
Entertainment

Published on February 21, 2008

Author: Vincenza

Source: authorstream.com

Einführung .NET:  Einführung .NET Tobias Richling Microsoft Student Partner Student der Wirtschaftsinformatik Universität Münster Neno Loje Microsoft Student Partner Student der Informatik Universität Hamburg Ziele:  Ziele Verständnis der Begriffe rund um .NET „Landkarte“ über .NET Grundlegendes Verständnis der Arbeitsweise von und mit .NET Handlungssicherheit im Umgang mit Quellen zum Thema .NET Gliederung:  Gliederung Tobias Richling Warum .NET / Was ist .NET Begriffe und ihr Zusammenhang mit .NET Neno Loje Basiselemente von .NET Bereiche von .NET Microsoft .NET: Was und Warum?:  Die Antwort lautet Aber wie lautet die Frage? Microsoft .NET: Was und Warum? Microsoft .NET: Was und Warum?:  Microsoft .NET: Was und Warum? Technologie Produkt Architektur Plattform Strategie Was ist .NET Microsoft .NET: Was und Warum?:  Microsoft .NET: Was und Warum? Ein Blick auf Gestern Information at your fingertips größtenteils Realität Vorwiegend isolierte Desktoprechner Nur vereinzelt lokale Netze Ein Blick auf Heute und Morgen Neue Formfaktors mit verschiedener Hardware Steigender Grad der Vernetzung durch Internet  Herausforderung der Neupositionierung Microsoft .NET: Was und Warum?:  Probleme mit den eigenen Technologien Schwieriges Deployment Viele historisch gewachsene Techniken Integration der Techniken schwierig Web Anwendungen sind schwer zu entwickeln Plattformunabhängigkeit nicht herstellbar Microsoft .NET: Was und Warum? Microsoft .NET: Was und Warum?:  Microsoft .NET: Was und Warum? Empower people through great software any time, any place, and on any device Gliederung:  Gliederung Tobias Richling Warum .NET / Was ist .NET Begriffe und ihr Zusammenhang mit .NET Neno Loje Basiselemente von .NET Bereiche von .NET Viele Begriffe…:  Viele Begriffe… Managed Code XML Assembly CLR Visual Studio WebService UDDI WSDL ADO.NET DataSet SOAP MSIL BCL Framework ECMA ROTOR MONO CTS C# CLS WindowsForms GUI Security SQL ASP.NET VB.NET JIT Evidence Viele Begriffe…:  Viele Begriffe… Alles Behalten Ein Ordnungsrahmen:  Ein Ordnungsrahmen Administrative Funktionen Ein Ordnungsrahmen:  Ein Ordnungsrahmen Security, Evidence Internettiger Die Vision von .NET…:  Die Vision von .NET… ... setzt Maßstäbe, wie heute und in Zukunft Software entwickelt wird! Probleme heute:  Probleme heute Applikationen integrieren Sprachen haben unterschiedl. Typsysteme COM „sitzt auf“ anderen Objektkonzepten Dienst-/Plattformintegration Keine Standards für die Interoperabilität Deployment komponentenbasierter Anwendungen Es droht die DLL-Hölle Das Web-Programmierungsparadigma Zustandslose HTML-Seiten/Apps sind schwer zu entwickeln APIs Eine Vielzahl von APIs (COM, Win32, MFC usw.) Plattformabhängigkeit Design-Ziele: .NET:  Design-Ziele: .NET Absolut einfach Keine Registration, GUIDs, .IDL files, HRESULTs, IUnknown, AddRef/Release, CoCreateInstance, etc. Objektorientiert bis ins Mark Klassen und Vererbung komplett unterstützt Natürlich auch bei verschiedenen Sprachen! Einfache Integration Jede .NET Klasse kann als COM Klasse benutzt werden ohne jeglichen Aufwand. COM Klassen können als .NET Klassen importiert werden. Die .NET Evolution:  Die .NET Evolution Vor der Einführung von COM, waren Anwendungen absolut getrennte Einheiten die fast nie integrierbar waren. Anwendung Code und Datenstukturen Die .NET Evolution II: COM:  Die .NET Evolution II: COM COM machte die Integration möglich. Jedoch musste jede Komponente dementsprechend programmiert worden sein. Die .NET Evolution III: Heute:  Die .NET Evolution III: Heute Im .NET Framework stellt die Common Language Runtime alles zur Verfügung, damit Komponenten direkt miteinander interagieren. Der Ordnungsrahmen:  Der Ordnungsrahmen Security, Evidence Internettiger .NET für Entwickler:  .NET für Entwickler .NET für Entwickler:  .NET für Entwickler Der Weg zum Maschienencode:  Der Weg zum Maschienencode ASM Code JIT (Just in Time) Compiler Betriebssystem Code wird kompiliert:  Code wird kompiliert IL-Code wird vor der Ausführung immer (!) durch Compiler in echten Maschinencode übersetzt Unabhängigkeit von Hardwareplattformen Unter Windows CE bereits mit einem IL-Vorläufer im Einsatz Common Type System:  Common Type System Das Typsystem wandert vom Compiler in die Runtime Typen werden eindeutig „Ein String unter C# und ein String unter VB.NET sind identisch“ Sprachen werden „per Definition“ interoperabel, da sie das gleiche Typsystem benutzen Compilerbau wird einfacher Alles ist ein Objekt!:  Alles ist ein Objekt! Object Value Type Enum Type String Array Exception Boolean Byte Char Currency DateTime Decimal Double Guid Int16 Int32 Int64 SByte Single TimeSpan TypedRef. UInt16 UInt32 UInt64 Void Delegate Typen im Namespace System Common Language Specification:  Common Language Specification „Kleinster gemeinsamer Nenner“ für Typen C++ und C# kennen Zeiger; VB.NET nicht C++ kennt die STL; VB.NET und C# nicht „komplette“ Sprachintegration schwierig Die Common Language Specification (CLS) spezifiziert ein Subset aus dem Common Type System, das jeder Compiler unterstützen sollte „Mapping“ der CLR-Typen auf Sprachtypen Integer unter VB.NET entspr. bspw. System.Int32 Für COM-Programmierer ist System.Object die moderne Form eines Variant ;-) C# Typen sind Managed Types (!) Implikationen:  Implikationen Sprachen werden gleichwertig, da alle Compiler IL-Code erzeugen Eine C# Klasse kann (z.B.) von einer VB.NET Klasse abgeleitet sein Vererbungsfähigkeit kommt aus der Runtime Einheitliche Fehlerbehandlung Ähnliche Performance „The language doesn‘t matter!“ Dan Appleman Die Qual der (Sprach-)Wahl:  Die Qual der (Sprach-)Wahl IL Assembler (ILASM) Die Meisten Freiheiten, aber sehr kryptisch Managed C++ kann managed und unmanaged Code mischen Migration, systemnahe Programmierung VB.NET: .NET für VB6-Entwickler Vollständig Objektorientierung, Web für VB Haben Sie eine Semikolonallergie? C# ist syntaktisch nah an C/C++ und leicht für alle OO-Programmierer Common Language Runtime:  Common Language Runtime Robust und sicher:  Robust und sicher Automatisches Lifetime Management Alle .NET Objekte werden ‘garbage collected’ Keine ‘Stray Pointers’, keine zirkulären Referenzen Eingebautes, strukturiertes Exception Handling keine HRESULTS (kryptische Fehlernummern) mehr! Prüfbar und Typsicher Verhindert die häufigsten Programmierfehler Evidence-based Sicherheit Herkunft des Codes und Benutzerrechte Erweiterbare Rechte (Extensible permissions) Plattform für alle Sprachen:  Plattform für alle Sprachen Alle Features des .NET Framework sind in jeder .NET Programmiersprache zugänglich Nahtlose Mehrsprachige Entwicklung Vererbung über Sprachgrenzen hinweg Implementierungen verschiedener Sprachen Perl, COBOL, Eiffel, Python, etc. Andere wie APL, Smalltalk, Lisp Hochproduktive Werkzeuge Debugger, Profilers, Code Analyzers, etc. arbeiten für alle Sprachen. Wartung und Verteilung:  Wartung und Verteilung Keine Registrierung notwendig Einfach die Applikationskomponenten kopieren Der Code ist vollständig selbstbeschreibend Nebenwirkungsfreie Installation (Zero-impact install) ‘Side-by-Side’ Ausführung Verschiedene Versionen derselben Komponente können sogar in einem Prozess kooexistieren Nahtlose Integration:  Nahtlose Integration Alle .NET Klassen können COM Objekte sein Keine zusätzliche Entwicklung benötigt Arbeitet mit jedem Clienten (VB6, Office, etc) Transparente Nutzung von COM Objekten Einschließlich benutzerdefinierter Schnittstellen, ActiveX controls, Automation Einfacher zu Nutzen mit COM+ Services Transaktionen, Objekt Pooling, etc. Auto-registered — keine Registrierung notwendig Zusammenfassung CLR:  Zusammenfassung CLR Einheitliches Typsystem Sprachen werden gleichwertig Alles ist von Object abgeleitet Das Common Type System definiert welche Typen nach außen gegeben werden sollten .NET Klassenbibliothek:  .NET Klassenbibliothek Putting it all together:  Putting it all together Windows API Unabhängigkeit von der verwendeten Programmiersprache ASP MFC/ATL RAD, Composition, Delegation Subclassing, Power, Expressiveness Stateless, Code embedded in HTML pages .NET Framework Namespaces:  .NET Framework Namespaces .NET Framework Namespaces:  .NET Framework Namespaces InteropServices Remoting Serialization Description Discovery Protocols HtmlControls WebControls Warum etwas ganz Neues?:  Warum etwas ganz Neues? Althergebrachte Windows-Programmierung: API‘s mit C und C++ (alles ist möglich) MFC mit C++ (einfach mit „Nothaken“) VB (sehr einfach) Alle Varianten: Plattform-abhängig und sind von einer bestimmten Programmiersprache abhängig Viele Probleme und Eigenarten Warum etwas ganz Neues?:  Warum etwas ganz Neues? Ideal: Nur EINE Schnittstelle ...die .NET-Klassenbibliothek Gemeinsame Schnittstelle für: VB, C++, C# und J# Grundlage: Das .NET Framework Vorteil: Die Sprachen „erben“ zusätzlich alle Möglichkeiten des gesamten Frameworks Anwendungen mit Windows Forms: Benötigter Namensraum ist „System.Windows.Forms“ Windows Forms:  Windows Forms Framework für leistungsfähige Windows Applikationen Visuelle Formular-Vererbung Automatisches Layout Advanced graphics support – GDI+ Einfacher Zugriff auf das Win32 ® API Controls im Internet Explorer 5.x nutzen Keine Installation, Registrierung oder GUIDs Lightweight -- “Hello World” ~ 3.5K Sicher ‘Code access security’ verhindert Schaden Keine Internet Explorer Sicherheits-Dialoge! Windows Forms enthält::  Windows Forms enthält: System.Windows.Forms enthält: Application-Klasse Controls-Klassen (Button, Editbox,...) Klassen für Standarddialoge (Open,...) Klassen für Menüs Klassen für Images Klassen für das Drucken Klassen für Statuszeile und Toolbar Klassen für das Clipboard u.v.m. .NET Framework Namespaces:  .NET Framework Namespaces InteropServices Remoting Serialization Description Discovery Protocols HtmlControls WebControls ADO.NET und XML:  ADO.NET und XML Verarbeitet alle Arten von Daten XML (hierarchical), Relational Leistungsfähiger In-Memory Daten Cache Lightweight, stateless, disconnected sowohl relational wie XML Zugriff, unabhängig von der Datenquelle XML Unterstützung: W3C DOM, XSL/T, XPath und Schema Data Reader für Streamzugriff mit geringem Overhead Das DataSet:  Das DataSet Relationale Sicht der Daten Tabellen, Spalten, Zeilen, Beschränkungen, Beziehungen Direkte Erzeugung von Metadaten einfaches Einfügen von Daten Explizites Cache Modell Disconnected, remotable Objekt Hat keine Kenntnis über die Datenquelle Zugriff wie auf ein Array Strong Typing möglich Filtern und Aggregieren möglich Relation .NET Framework Namespaces:  .NET Framework Namespaces InteropServices Remoting Serialization Description Discovery Protocols HtmlControls WebControls Web Forms:  Web Forms Einheitliches Modell Trennung zwischen Form und Code Ereignisorientiert Viel bessere Performance als ASP Veränderungen am Server Web Services: Mehr als Browsen:  Veränderungen am Server Web Services: Mehr als Browsen HTML Datenaustausch:  Datenaustausch Web Services:  Web Services Technische Definition - "Eine programmierbare Anwendung, auf die über Standardwebprotokolle zugegriffen werden kann" Basiert auf SOAP Web Services:  Web Services SOAP XML Web Service:  Web Service public class Service1 : System.Web.Services.WebService { [WebMethod] public DataSet GetCustomers() { DataSet ds = new DataSet(); sqlDataAdapter1.Fill(ds); return ds; } } Ein kleines Web Service-Beispiel: It‘s the question that drives us, Neo The Matrix:  It‘s the question that drives us, Neo The Matrix Why change a winning team? Das Team war schon am Zurückfallen. Es musste gewechselt werden, um zukünftigen Herausforderungen gerecht zu werden. Ist Microsoft zum Guten Samariter geworden? Definitiv nein – aber eine veränderte Welt, eine erhöhte Komplexität erfordert eine andere Politik und mehr Offenheit. Was hat Microsoft davon? Ein neues Geschäftsmodell. Man denkt Web, Dienste, Plattformen. Was haben wir davon? Weniger alte Probleme, einfachere Entwicklung, einfacheres Deployment, adequatere Programmierparadigmata Slide55:  Client Server Office Wie geht es auf der STC weiter?:  Wie geht es auf der STC weiter? ADO.NET (200) heute, im Anschluss Web Technologies mit ASP.NET (200) heute, 15:30 ASP.NET für Fortgeschrittene (200) morgen, 10:30 Microsoft .NET Framework 2.0 (200) morgen, 11:45 Performance-oriented Programming in C# (300) morgen, 14:00 Danke!:  Danke! Vielen Dank für Ihre Aufmerksamkeit ! Fragen?:  Fragen? Mehr Informationen?:  Mehr Informationen? http://msdn.microsoft.com/net http://www.gotdotnet.com http://www.dotnetgerman.com http://www.dotnet247.com http://www.codeproject.com http://www.devx.com/dotnet/

Add a comment

Related presentations

Related pages

.NET – Wikipedia

.NET [ˈdɔtnɛt], teilweise auch als Microsoft .NET bezeichnet, ist der Name einer von Microsoft herausgegebenen Software-Plattform, die der Entwicklung ...
Read more

Was ist DOT NET? - DevTrain - Der Werkzeugkasten für ...

Seit Anfang 2002 ist es soweit. Das seit langem von Microsoft angekündigte .NET (sprich DOT NET) Framework ist Final und verfügbar. Für die Microsoft ...
Read more

Liste von .NET-Sprachen – Wikipedia

Siehe auch. Liste von Programmiersprachen; Literatur. iX – Magazin für professionelle Informationstechnik, Babylonische Vielfalt - Marktübersicht: .Net ...
Read more

Geschlossen / Closed - e-team Veranstaltungsorganisation GmbH

Geschlossen / Closed. Diese Veranstaltung hat bereits stattgefunden. Die Webseite zu dieser Veranstaltung ist daher nicht mehr erreichbar. This event ...
Read more

Download Microsoft .NET Framework 4 (Webinstaller) from ...

Die zum Ausführen in der Zielcomputerarchitektur und auf dem Betriebssystem erforderlichen .NET Framework-Komponenten werden vom Microsoft .NET Framework ...
Read more

Was ist .NET? - dotnetframework.de - Die unabhängige ...

Was ist .NET? - Informationen über .NET ... Unser Kundenteam erreichen Sie Montag bis Freitag unter +49 (0) 201 649590-0
Read more

Microsoft .NET Framework 4.5.2 - Download - CHIP

Microsoft .NET Framework 4.6.1 Deutsch: Der Windows-Patch ".NET Framework" in der aktuellsten Version 4.6.1 zum Download.
Read more

Was ist Delphi? - Delphi-Kurs: Table of Contents

Was ist Delphi? Delphi ist ein Entwicklungssystem zum Erstellen von Programmen unter Windows. Delphi beinhaltet einen leistungsfähigen Pascal-Compiler ...
Read more

Was ist Dotnet.exe und wie kann ich es reparieren? Virus ...

Überblick über Dotnet.exe Was ist Dotnet.exe? Dotnet.exe ist eine Art EXE-Datei, die im Zusammenhang mit Microsoft .NET Framework 3.5 steht, das von ...
Read more

DOTNET - Begriffserklärung im Entwickler-Lexikon/Glossar ...

Was ist DOTNET? DOTNET (DOT NET) ist die ausgeschriebene/ausgesprochene Variante der Bezeichnung ".NET", die Microsoft seit dem Jahr 2000 für eine ...
Read more