135
Leseprobe Dieses Buch führt Sie komplett in die Sprache C# ein. In dieser Lese- probe erfahren Sie die Programmiergrundlagen und erhalten Einblick in Sprachfeatures. Außerdem umfasst diese Leseprobe das vollständige Inhalts- und Stichwortverzeichnis des Buches. Andreas Kühnel C# 6 mit Visual Studio 2015 – Das umfassende Handbuch 1.482 Seiten, gebunden, 7. Auflage 2015 49,90 Euro, ISBN 978-3-8362-3714-7 www.rheinwerk-verlag.de/3819 »Allgemeine Einführung in .NET« »Grundlagen der Sprache C#« »Vererbung, Polymorphie und Interfaces« »Weitere C#-Sprachfeatures« Inhaltsverzeichnis Index Der Autor Leseprobe weiterempfehlen Wissen, wie’s geht. Wissen, wie’s geht.

C# 6 mit Visual Studio 2015 – Das umfassende Handbuch · PDF fileLeseprobe Dieses Buch führt Sie komplett in die Sprache C# ein. In dieser Lese- probe erfahren Sie die Programmiergrundlagen

Embed Size (px)

Citation preview

  • LeseprobeDieses Buch fhrt Sie komplett in die Sprache C# ein. In dieser Lese- probe erfahren Sie die Programmiergrundlagen und erhalten Einblick in Sprachfeatures. Auerdem umfasst diese Leseprobe das vollstndige Inhalts- und Stichwortverzeichnis des Buches.

    Andreas Khnel

    C# 6 mit Visual Studio 2015 Das umfassende Handbuch1.482 Seiten, gebunden, 7. Auflage 2015 49,90 Euro, ISBN 978-3-8362-3714-7

    www.rheinwerk-verlag.de/3819

    Allgemeine Einfhrung in .NET Grundlagen der Sprache C# Vererbung, Polymorphie und Interfaces Weitere C#-Sprachfeatures

    Inhaltsverzeichnis

    Index

    Der Autor

    Leseprobe weiterempfehlen

    Wissen, wies geht.Wissen, wies geht.

    https://www.rheinwerk-verlag.de/c-6-mit-visual-studio-2015_3819/?GPP=lpnmailto:?body=Leseproben-Empfehlung:%20%C2%BBC#%206%20mit%20Visual%20Studio%202015%20%E2%80%93%20Das%20umfassende%20Handbuch%C2%AB%20von%20Rheinwerk,%20http://gxmedia.galileo-press.de/leseproben/3819/leseprobe_rheinwerk_c_sharp_6_mit_visual_studio_2015_handbuch.pdf&subject=Leseprobe:%20%C2%BBC#%206%20mit%20Visual%20Studio%202015%20%E2%80%93%20Das%20umfassende%20Handbuch%C2%AB

  • 35

    1Kapitel 1

    1 Allgemeine Einfhrung in .NET

    Einem Leser, der ber fundierte Programmierkenntnisse verfgt, eine Thematik nahezu-

    bringen, die seine Aufmerksamkeit erregt und ihm neue Kenntnisse vermittelt, ist ein nicht

    ganz einfaches Unterfangen. Dabei gleichzeitig einen Programmieranfnger behutsam in

    die abstrakte Denkweise der Programmlogik einzufhren, ohne gleichzeitig Frust und Ent-

    tuschung zu verbreiten, drfte nahezu unmglich sein. Ich versuche mit diesem Buch den-

    noch, diesen Weg zu beschreiten, auch wenn es manchmal einer Gratwanderung zwischen

    zwei verschiedenen Welten gleicht. Dabei baue ich schlicht und ergreifend auf die jahrelan-

    gen Erfahrungen auf, die ich als Trainer bei den unterschiedlichsten Seminaren mit teilweise

    ausgesprochen heterogenen Gruppen erworben habe.

    1.1 Warum .NET?

    Vielleicht wissen Sie berhaupt noch nicht, was sich hinter .NET verbirgt? Vielleicht haben

    Sie sich fr dieses Buch entschieden, ohne die Tragweite Ihres Entschlusses fr .NET zu ken-

    nen. Ich mchte Ihnen das zunchst einmal erlutern.

    Blicken wir ein paar Jahre zurck, sagen wir in die 90er Jahre, und stellen wir uns die Frage,

    wie damals Anwendungen entwickelt wurden und wie sich die IT-Welt whrend dieser Zeit

    entwickelte. Am Anfang des von uns betrachteten Jahrzehnts war der Hauptschauplatz der

    Desktop-PC, Netzwerke steckten noch mehr oder weniger in den Kinderschuhen. Grafische

    Benutzeroberflchen hielten langsam Einzug auf den Rechnern; das Internet war einem nur

    mehr oder weniger elitren Benutzerkreis bekannt und zugnglich. Desktop-PCs wurden mit

    immer besserer Hardware ausgestattet, ein Super-PC von 1990 galt zwei Jahre spter als total

    veraltet und musste wegen der gestiegenen Anforderungen der Software an die Hardware

    zumindest drastisch aufgerstet, wenn nicht sogar komplett ersetzt werden.

    Sie merken vielleicht an diesen wenigen Worten, wie dramatisch sich die IT-Welt seitdem

    verndert hat. Die Evolution betraf aber nicht nur Soft- und Hardware. Software muss, ehe

    sie den Benutzer bei seiner tglichen Arbeit untersttzen kann, entwickelt werden. Hier

    kochten viele Unternehmen ein eigenes Sppchen und warben bei den Entwicklern und Ent-

    scheidungstrgern mit Entwicklungsumgebungen, die zum einem auf unterschiedliche Pro-

    grammiersprachen aufsetzten und zudem mit eigenen Funktionsbibliotheken aufwarteten:

    Borlands Delphi, Microsofts Visual Basic, fr die Puristen C und C++ um nur die bekanntes-

    ten Vertreter zu nennen.

    3714-7.book Seite 35 Dienstag, 6. Oktober 2015 11:21 11

  • 1 Allgemeine Einfhrung in .NET

    36

    Die Vielfalt betraf jedoch nicht nur die Entwicklung der Software. Immer neue, an den jeweils

    aktuellen Trend angepasste Plattformen eroberten den Markt und verschwanden nicht selten

    auch schnell wieder. Die Unternehmensnetzwerke mussten mit der strmischen Entwick-

    lung Schritt halten, wurden komplexer und komplizierter und ffneten sich zunehmend

    auch der Welt nach auen.

    In dieser Periode begann auch der Siegeszug des Internets. Obgleich es anfangs nur als welt-

    weiter Verteiler statischer Dateninformationen positioniert war, wurden immer mehr Tech-

    nologien erdacht, die die statischen Webseiten durch dynamische ersetzten, die dem

    Anwender nicht immer dieselben Informationen bereitstellten, sondern genau die, fr die er

    sich interessierte. Datenbanken wurden hinter die Webserver geschaltet und ftterten die

    Webseiten mit dem aktuellsten Informationsstand.

    Kluge Kpfe erkannten sehr schnell, dass die Spezifikationen des Internets sich auch dazu

    eignen, mehrere verschiedene Unternehmen zu koppeln. Damit wurde die Grundlage dafr

    geschaffen, dass Sie heute im Reisebro oder im Internet-Browser eine Reise buchen kn-

    nen, die nicht nur den Flug, sondern gleichzeitig eine gltige Hotelzimmerbuchung, viel-

    leicht sogar samt Mietwagen, umfasst obwohl hierzu schon drei Informationsquellen mit

    mglicherweise unterschiedlicher Software angezapft werden mssen. Ein nicht ganz einfa-

    ches Unterfangen, wenn Sie bedenken, dass mglicherweise die Schnittstellen, ber die die

    verschiedenen Komponenten sich zwangslufig austauschen mssen, nicht einheitlich defi-

    niert sind.

    Bei dieser rasanten Entwicklung der Mglichkeiten, Daten auszutauschen oder auch nur

    einfach weiterzuleiten, sollten Sie nicht vergessen, dass auch die Hardware eine hnliche

    Entwicklung genommen hat. Ein Smartphone besitzen heutzutage schon die meisten schul-

    pflichtigen Kinder; Tablets und andere Kleincomputer haben schon lange ihren Siegeszug

    angetreten, dessen Ende auch nicht im Entferntesten erkennbar ist.

    An der Schnittstelle all dieser Vielfltigkeit steht der Entwickler. Denn was nutzt die beste

    Hardware und die ausgeklgeltste Spezifikation, wenn die Bits sich nicht den Weg von einem

    zum anderen Endpunkt bahnen? Fr diesen Bitfluss wollen Sie als Entwickler sorgen. Damit

    fangen aber wegen der oben erwhnten Vielgestaltigkeit der IT-Welt die Probleme an: ver-

    schiedene Plattformen, unterschiedliche Programmiersprachen, unterschiedliche Klassen-

    bibliotheken, eine Vielzahl zu beachtender Spezifikationen usw.

    Einen ersten Schritt in Richtung Vereinheitlichung beschritt die Firma Sun mit Java. Der

    Erfolg, den diese plattformunabhngige Sprache hatte und immer noch hat, war auch ein

    Zeichen fr Microsoft, um das Entwicklerterrain zu kmpfen. Nach einer eingehenden Ana-

    lyse der Anforderungen, die gegen Ende der 90er Jahre an die damalige Software gestellt

    wurden, sowie einer Trendanalyse der Folgejahre wurde das .NET Framework entwickelt.

    Dabei konnte Microsoft die Gunst der spten Stunde nutzen und die Nachteile und

    Schwachpunkte, die jedes Produkt also auch Java hat, durch neue Ideen ausmerzen.

    Nein, .NET ist natrlich auch kein Heilsbringer und wird sicherlich nicht die Menschheit

    berdauern. Aber nach heutigen Mastben ist .NET das wahrscheinlich effizienteste Frame-

    3714-7.book Seite 36 Dienstag, 6. Oktober 2015 11:21 11

    1.1 Warum .NET?

    37

    1work, in dessen Mittelpunkt die .NET-Klassenbibliothek steht. Diese bietet Ihnen alles, was

    Sie zum Entwickeln brauchen egal, ob es sich um eine einfache Anwendung handelt, die

    nur ein paar Daten anzeigt, oder um eine Unternehmensanwendung groen Stils. Sie kn-

    nen Desktop-Anwendungen genauso erstellen wie eine hochkomplexe Internetanwendung.

    Sie knnen Microsoft-Office-Produkte damit programmieren, fremde Datenquellen anzap-

    fen, Programme fr Ihr Tablet oder Phone schreiben und vieles mehr. Dazu mssen Sie sich

    nicht immer wieder in neue Programmiersprachen und neue Entwicklungsumgebungen

    einarbeiten, denn alles ist wie aus einem Guss.

    Ich mchte jetzt nicht den Eindruck vermitteln, dass alles ganz einfach ist und Sie dem-

    nchst ganz tolle Anwendungen mit den tollsten Features prsentieren knnen. Dafr ist die

    .NET-Klassenbibliothek zu umfangreich. Aber Sie knnen sich darauf verlassen, dass Sie sich

    nun auf das Wesentliche Ihrer Arbeit konzentrieren knnen: Sie arbeiten unabhngig vom

    Typ der zu entwickelnden Anwendung immer in derselben Umgebung, zum Beispiel mit

    Visual Studio 2015. Sie brauchen sich nicht immer wieder aufs Neue in andere Programmier-

    sprachen einzuarbeiten, sondern knnen auf gewonnene Kenntnisse aufsetzen. Und Ihnen

    werden alle Mittel an die Hand gegeben, auf wirklich einfachste Weise mit fremden Anwen-

    dungen zu kommunizieren, wenn sich diese an bestimmten, allgemein anerkannten Spezi-

    fikationen orientieren. XML ist hierbei das Zauberwort, das das alles ermglicht.

    Eine Funktionsbibliothek (eigentlich msste ich an dieser Stelle richtigerweise von einer

    Klassenbibliothek sprechen) ist nur so gut, wie sie auch zuknftige Anforderungen befriedi-

    gen kann. Dass .NET hier architektonisch den richtigen Weg beschritten hat, beweist einmal

    mehr die derzeit aktuelle Version 4.6.

    Genau an dieser Stelle darf ich Ihnen natrlich auch den groen Haken nicht verschweigen,

    den die ansonsten so hervorragende Umgebung hat: Sie werden mit Sicherheit niemals alle

    Tiefen von .NET ergrnden. Als jemand, der von der ersten Beta-Version mit dabei war, muss

    ich sagen, dass ich mich immer wieder aufs Neue davon berraschen lassen muss, welche

    Fhigkeiten in der .NET-Klassenbibliothek schlummern. Verabschieden Sie sich von der Idee,

    jemals all