Visual C# 2011 Grundkurs

Was ist .NET?

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Hier ein tieferer Blick in das .NET Framework: Wie es Code ausführt und warum es plattformunabhängig ist. Danach eine kurze Übersicht der interessantesten Bereiche des .NET Frameworks.
08:36

Transkript

Im nächsten Film schauen wir uns einmal an, was dieses .NET Framework eigentlich ist, wie es den von uns geschriebenen Code eigentlich ausführt, und welche Bereiche es im .NET Framework eigentlich gibt, die wir später in unserem Projekt für uns einsetzen können. Das .NET Framework ist natürlich sehr, sehr groß, aber für uns erst mal nur wichtig ist, dass es zum einem eine Laufzeitumgebung ist und dass es eine Bibliothek ist. Eine Laufzeitumgebung ist hier mal rechts dargestellt und zwar so, dass man auf der obersten Ebene in irgendeiner Sprache Quellcode schreibt. Wir haben hier erst mal, von Microsoft direkt unterstützt, sowohl C++ als auch C# und VB.NET. Mit diesen Programmiersprachen schreibe ich nun also Quelltext, und wenn ich dann kompiliere, dann wird dieser menschenlesbare Code in einen sog. Zwischencode umgewandelt. Diesen Zwischencode nennt man "Common Intermediate Language". Dieser Common Intermediate Language-Code ist jetzt kein Code, der direkt vom Prozessor verstanden werden kann, sondern es ist einfach nur ein Zwischencode. Wenn ich jetzt irgendwann meine EXE-Datei, die ich jetzt erzeugt habe, ausführe, also einen Doppelklick darauf mache, dann wird dieser Common Intermediate Language-Code in der "Common Language Runtime" geladen. Diese "Common Language Runtime" ist jetzt unsere Laufzeitumgebung. Diese Laufzeitumgebung lädt diesen CIL-Code hinein, kompiliert den noch mal und wandelt sie in Befehle um, die der Prozessor versteht, der unter der Common Language Runtime liegt. Das klingt jetzt im ersten Moment ein bisschen kompliziert, aber es ist eigentlich ein sehr, sehr schönes und intelligentes Konzept. Wenn ich jetzt z.B. einen Windows von 7 habe und ich habe einen normalen Desktop-Computer mit Windows 7 drauf, dann ist auf beiden Geräten eine Common Language Runtime installiert. Nicht dieselbe, weil z.B. das Handy einen anderen Prozessor nutzt als z.B. das mein Computer tut. Aber beide Runtimes, die auf beiden Geräten laufen, können den selber CIL-Code interpretieren. D.h. ich gehe hin, schreibe in C# "Code", der wird kompiliert in den Common Intermediate Language-Code, und dieser Code wird dann von meiner Runtime auf meinem Handy interpretiert. Das ist dann eine etwas kleinere Runtime auf dem Handy als auf dem Computer, und auf dem Computer habe ich ebenfalls eine Runtime, die diesen Code interpretiert. D.h., wenn ich in C# z.B. "Code" schreibe, wird er in den sog. Zwischencode kompiliert, und dieser Zwischencode wird dann auf mehrere Geräte verteilt, dort ausgeführt, dort wird er dann von der Laufzeitumgebung nochmals kompiliert zum jeweiligen Prozessor passend. Dadurch ist eben halt mein von mir geschriebener C#-Code Plattformen unabhängig. Jetzt gibt es natürlich auch noch das Java-Framework, da gibt es auch Plattformunabhängigkeit, aber dort geht das Konzept ein bisschen weiter. Microsoft versteht unter Plattformunabhängigkeit nicht, dass ich jetzt sowohl Linux als auch MacOS und sonstige Sachen bedienen kann, sondern fokussiert sich nur auf Microsoftprodukte zunächst. Also ich kann es auf Windows 7 laufen lassen, auf Windows Embedded, auf Windows Phone 7 usw. Es ist durchaus möglich, dass man .NET Programme auch unter Linux oder MacOS laufen lässt, allerdings ist diese Version der Runtime dann nicht von Microsoft, sondern das ist das Mono Project. Das Mono Project ist nie so wirklich aktuell wie das .NET Framework. Momentan ist das .NET Framework bei Version 4 angelangt und das Mono-Framework ist ungefähr noch bei .NET.2.0. D.h., wenn ich bei .NET2.0 ein Programm geschrieben habe, dann kann ich das ohne Weiteres auf Mono portieren und dort ausführen. Einen weiteren sehr großen Vorteil sehen wir oben anhand der verschiedenen Sprachen. Ich kann z.B. in C++-Code schreiben und diesen Code dann in CIL-Code übersetzen oder z.B. mit VB.NET. Diese Common Intermediate Language und die Common Language Runtime sind beide standardisiert worden, d.h. dass sich Entwickler anderer Programmiersprachen ganz einfach ihre Programmiersprache derart umbauen können, dass sie.net-fähig ist, und dass sie genau wie unsere Sprachen C++, C# und VB.NET dort oben stehen könnten und zusammen mit diesen anderen Sprachen, eben Common Intermediate Language Code, generieren könnten - damit untereinander zusammen arbeiten und auf mehreren Plattformen laufen können. Der nächste Punkt ist die Bibliotheken und dazu schauen wir uns jetzt mal die größten Bereiche aus diesen Bibliotheken kurz an. Wir haben zum einen Windows Forms. Windows Forms ist eine Oberflächentechnologie, mit der ich die normalen Oberflächen, die man noch aus XP-Zeiten kennt, sehr, sehr einfach generieren kann. Ich habe dort z.B. solche Texteingabefelder-Buttons usw., die ich aus einer sog. Toolbox auf meine Oberfläche ziehen kann, dort dann sagen kann, wenn ich auf diesen Button klicke, führe das und das aus. Das ist eine Technologie, die wenn man sie erst mal grundlegend verstanden hat, sehr, sehr einfach zu erlernen ist und mit der man in dieser kurzen Zeit einfach sehr große und mächtige Oberflächen bauen kann. Als nächstes gibt es die Windows Presentation Foundation. Microsoft hat irgendwann erkannt, das auch Oberflächen sich in den letzten Jahren weiter entwickelt haben und jetzt eben mehr dazu gehört als nur Button und Texteingabefelder usw. Deswegen haben sie die Windows Presentation Foundation mit .NET3.0 eingeführt, und damit kann ich jetzt eben auch 3D-Effekte z.B. innerhalb meiner Applikation oder eben halt verschieden Farben machen. Ich kann das Ganze sieven, also in mehreren Farbvarianten bieten usw. Zusätzlich hat man hier erstmalig das Konzept, dass der Programmiere an seinem Code arbeitet, der Designer an der Oberfläche, das nachher verheiratet - und dann sein fertiges Projekt hat. Dann gibt es die Technologie ASP.NET, die ist zur Erstellung von Webseiten. Wenn Leute aus dem Bereich der Webentwicklung kommen, also z.B. vom PHP umgestiegen sind, findet man sich durchaus auch relativ schnell zurecht, weil es eben halt alles ein Konzept ist, Microsoft das eben derart umgesetzt hat, dass man dort sehr, sehr einfach und mit sehr wenigen Mitteln gute und ansprechende Webseiten machen kann. Aber auch normale Einsteiger kommen sehr, sehr schnell in das Konzept rein, weil, wenn man es eben nicht will, abstrahiert Microsoft gewisse Technologien sehr schön durch sog. Work Controls, sodass man sich fast gar nicht in die Arbeitsplatte von Webseiten eindenken muss, um dort erste Webseiten zu bauen und später auch etwas größere Webseiten bauen kann. Eine weitere Technologie ist die Windows Communication Foundation. Bei der Windows Communication Foundation geht es darum, dass ich Services bauen kann. Services sind kleine oder auch größere Programme, die irgendwo auf einem Server laufen, und nach außen hin einen Dienst anbieten. Dieser Dienst ist z.B. das Zusammenrechnen von zwei Zahlen Dann schickt der Client eine Nachricht zum Service, wo zwei Zahlen drin sind. Dieser Service rechnet diese Zahlen zusammen und schickt in einer Nachricht diese Zahl wieder zurück. Das ist ein relativ einfaches Beispiel, aber man kann sehr große und komplexere Services bauen, und dann eben Anwendungen bauen, die nur aus diesen Services bestehen, die untereinander vernetzt sind. Diese Technologie ist ADO.NET. - das ist die Technologie in .DOT.NET, um Datenbanken anzusprechen. Dort habe ich eben Klassen, um Datenbanken zu verbinden, dort Daten einzufügen, zu löschen, zu ändern oder anzuzeigen. Zusätzlich habe ich neue Technologien, das sind sog. objektrelationale Mapper. Damit kann ich ganz einfach - ohne mich in eine andere Technologie hineindenken zu müssen - mit meinem objektorientierten Denken, was wir uns ja inzwischen schon angeeignet haben, ganz einfach Datenbanken-Abfragen erstellen und bearbeiten. Eine relativ neu dazu gekommene Technologie ist das Windows Phone 7. Windows Phone 7 wurde im Oktober 2010 von Microsoft auf den Markt gebracht und ist das neue Handybetriebssystem von Microsoft. Neu ist nicht nur das Konzept des Betriebssystems, sondern auch die Art und Weise, wie man für dieses Handy entwickelt. Man kann mithilfe von sog. XML die Oberfläche beschreiben. Wer schon mal Webseiten gebaut hat, so ähnlich kann man das auch hier bei den Oberflächen machen, und so in sehr kurzer Zeit sehr hübsche und ansprechende Oberflächen für dieses Phone bauen. Ihr Hintergrund wird mit ganz normalen C# programmiert. Deswegen ist diese Technologie ganz besonders für Einsteiger interessant. Man kann mit relativ wenig Wissen in C# dort hingehen, eignet sich diese Oberflächentechnologie kurz an, kann sehr schnell schöne Apps bauen, diese Apps dann im Marketplace anbieten, und dort durchaus damit Geld verdienen. Als letzte Technologie schauen wir uns Silverlight an. Silverlight ist das Produkt von Microsoft, das so ähnlich ist wie Flash von Adobe. So ein Silverlight Control, wie man das jetzt hier auf dem Bild sieht, kann man in seine Webseite einbetten. Wenn jetzt ein Benutzer das erste Mal diese Webseite aufruft, er dieses Silverlight-Plug-in noch nicht installiert hat, dann wird dieses Silverlight-Paket heruntergeladen und installiert. Von diesem Moment an kann der Benutzer in seinem Browser solche Silverlight-Inhalte darstellen. Silverlight erlaubt einem, im Gegensatz zu HTML4, dass man sehr, sehr schöne Inhalte im Web darstellt, die so ähnlich aussehen wie in Desktop-Applikationen. Man kann, ähnlich wie in der Windows Presentation Foundation, da die Inhalte darstellen, Farbverläufe, Seeming und all diese ganzen Sachen, die eben zu modernen Benutzeroberflächen dazu gehören. Zusätzlich gibt es diese Silverlight-Pakete nicht nur für die Windows-Plattformen, sondern auch für Betriebssysteme wie Linux und MacOS. Dadurch sind dann solche geschriebenen Programme wirklich mal plattformunabhängig. Wir haben uns jetzt die größten Bereiche im .NET Framework angeguckt, die verschiedenen Technologien, aber es gibt natürlich noch einiges mehr, was es im .NET Framework gibt. Deshalb immer, wenn man neue Bereiche in seinen Projekten angeht, wo man neue Sachen implementieren müsste, sollte man erst schauen, ob es solche Bereiche nicht schon im .NET gibt, oder ob es eventuell sogar Bereiche gibt, die einen bei der Arbeit unterstützen können, um das Ziel zu verwirklichen, was man sich vorgenommen hat. Wir haben uns in diesem Film angeguckt, wie das .NET Framework eigentlich funktioniert und wie es den Code, den wir geschrieben haben, eigentlich ausführt. Wir haben gesehen, es gibt so eine Art Zwischencode und je nachdem, auf welcher Plattform wir das Ganze dann ausführen wollen, gibt es eine Runtime. Diese Runtime übersetzt in Zwischencode, dann in Befehle, die der Prozessor der darunter liegt, versteht. Danach haben wir uns die groben Bereiche von .NET Framework angeguckt, haben uns angeschaut wie man Oberflächen programmiert, wie man Services programmiert, Datenbanken, Handys und wie man Bridge Internet Application, eben Silverlight-Anwendungen, programmieren kann.

Visual C# 2011 Grundkurs

Steigen Sie in die C#-Programmierung ein und lernen Sie sowohl die Grundlagen der Sprache C# als auch die Entwicklungsumgebung Visual Studio 2010 und .NET-Framework kennen.

7 Std. 28 min (81 Videos)
Derzeit sind keine Feedbacks vorhanden...
Hersteller:
Software:
Visual Studio Visual Studio 2010
Exklusiv für Abo-Kunden
Erscheinungsdatum:27.06.2011

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!