Studienarbeit aus dem Jahr 2010 im Fachbereich Informatik - Wirtschaftsinformatik, Note: 1,3, Helmut-Schmidt-Universität - Universität der Bundeswehr Hamburg, Veranstaltung: Softwareentwicklung, Sprache: Deutsch, Abstract: C# gehört zu den in letzten Jahren meistverwendeten Programmiersprachen. Die Sprache bleibt nicht auf einem Punkt stehen. Mittlerweile ist die Version 4.0 eingeführt worden und der Sprachumfang wächst mit jeder neuen Version. Die ansteigende Funktionalität und der in den Vordergrund rückende Komfort steigern die Mächtigkeit von C# mit jeder Version. Der Grundgedanke den C# von Anfang an verfolgt, eine stark typisierten Sprache mit der Gewährleistung einer hohen Typsicherheit, soll bestehen bleiben. C# wurde konzipiert, um robuste und langlebige Komponenten entwickeln zu können, die die Bewältigung des realen Lebens erleichtern. Die Komponenten bilden den Mittelpunkt für alle Objekte und stellen die Kernelemente der Sprache. Robustheit und Langlebigkeit der Software sind wichtige Aspekte, die monatelang laufende Webserver ohne außerplanmäßige Neustarts ermöglicht haben. Gerade die einfache, sichere und intuitive Umgebung sowie eine Fehlerbehandlung die Ausnahmebehandlungen ermöglicht, haben dazu beigetragen. Die wichtigste Voraussetzung dafür liegt in der Typsicherheit der Sprache. Sie schützt den Programmierer vor unsicheren Typumwandlungen, vor nicht initialisierten Variablen und anderen häufig auftretenden Programmierfehlern.3 In dem Entwicklungsprozess von C# und mit dem Erscheinen neuer Versionen hat sich an der Typisierung in C# grundlegendes verändert. Ab Version 3.0 ist die Verwendung implizit typisierter Variablen erlaubt. In Version 4.0 wurde mit den dynamischen Objekten noch einen Schritt weiter gegangen. Die vorliegende Seminararbeit soll einen Einblick in diese zwei Konzepte geben und sich mit deren Herkunft und Funktionsweise auseinander setzen. Die Frage bei der Beurteilung der Innovationen ist, ob und warum Veränderungen in dem Typsystem durchgeführt wurden. Die Begründung der Vorteile ist genauso maßgeblich, wie das Aufdecken von Nachteilen. Der zusammenfassende Vergleich ermöglicht einen Überblick, wann implizit typisierte Variablen oder dynamische Objekte eingesetzt werden können. Dabei ist der Grundgedanken von C#, die Entwicklung langlebiger und robuster Programme, zu bewahren.