Seminar:
C# - Microsofts Antwort auf Java
Am Ende des Sommersemesters 2002 haben wir ein Seminar zu obigem Thema durchgeführt.
Die Seminarberichte der Teilnehmer und Hinweise auf verwendete Literatur sind hier zusammengefasst. C# (C Sharp) ist eine neue objektorientierte Programmiersprache, die Microsoft zusammen mit der .NET (Dot Net) Umgebung entwickelt hat. Die Eigenschaften von C# und seiner Ausführungsumgebung haben viele Gemeinsamkeiten mit Java, weisen aber auch einige bemerkenswerte Unterschiede auf. In diesem Seminar wurden mit Vorträgen zu den unten genannten Themen die wichtigsten Eigenschaften von C# vorgestellt. Die wichtigsten Literaturstellen sind bei den Vorträgen und am Ende dieser Seite angegeben.
Einen Überblick über die Sprache C# kann man sich zum Beispiel anhand von [1: Abschnitt 8] und [4: S. 13-44] verschaffen.
1. Sprachumgebung im .NET
Übersetzung, Ausführung, gemeinsame Zwischensprache, gemeinsames Typsystem
Bearbeiter:Jens Heger
Literatur: [3: S. 3-59], [2: S. 21-32]
2. Typen in C#
Klassen, Interfaces, Wert- und Referenztypen, Boxing, Konversion
Bearbeiter: Sinan Alptekin
Literatur: [1: Abschnitte 11, 13], [2: S. 55-95], [3: S. 97-140]
3. Methoden und Aufrufe
Parameterübergabe, variable Parameterlisten, überladen, überschreiben
Bearbeiter: Teng Gan
Literatur: [1: Abschnitte 17.5, 14.3, 14.4], [2: S. 97-113] [5: S. 82-90, 117-125]
4. Spezielle Klassenelemente
Properties, Indexer, Attribute
Bearbeiter: Olaf Sielemann
Literatur: [1: Abschnitte 17.6, 17.8, 19, 24], [2: S. 115-148] [5: S. 161-204]
5. Ereignisbehandlung
Events und Delegates
Bearbeiter: Ingo Höckenschnieder
Literatur: [1: Abschnitte 17.7, 22], [2: S. 253-267], [5: S. 263-292]
6. Prozesse (Threads)
Bearbeiter: Christian Schneider
Literatur: [2: S. 271-289], [5: 503-524] [4: S. 657-676] [6: S. 590-631] http://www.upb.de/cs/ag-kastens/csharp/Threads.pdf
Das wichtigste Material für die einzelnen Vorträge ist folgenden Quellen entnommen worden:
[1] C# Language Specification, ECMA Standard ECMA-334, Dec 2001
[2] Tom Archer: Inside C#, .net Fachbibliothek, Microsoft Press, 2001
[3] Jeffrey Richter: Microsoft .NET Framework Programmierung .net Fachbibliothek, Microsoft Press, 2002
[4] P. Drayton, B. Albahari, T. Neward: C# in a Nutshell, O'Reilly, 2002 [5] J. Liberty: Programming C#, 2nd Ed., O'Reilly, 2002
[6] H. M. Deitel, et al.: C# How to Program, Prentice Hall, 2002
Weiteres ergänzendes Material haben sich die Teilnehmer selbständig beschafft, z. B. aus dem Internet:
Microsoft's Seiten zu .net und C# erreicht man von hier:
http://msdn.microsoft.com
http://msdn.microsoft.com/net/ecma
Weitere C# Information:
http://www.csharp-station.com/Tutorial.aspx
http://www.csharphelp.com
http://genamics.com/developer/csharp_comparative.htm
Weiteres zu .net:
http://www.oreillynet.com/dotnet
URLs zur Zeitschrift c't 04/2002
http://www.heise.de/ct/02/04/urls Seiten 86 bis 91: 'Das Microsoft-Internet' - .NET (Report)
http://www.projectliberty.org
http://avirubin.com/passport.html
http://www.microsoft.com/net
http://www.ecma.ch
http://www.w3c.org/2002/ws/ Seiten 92 bis 97: 'Sunspiration' - .NET: Technik (Report)
http://flp.cs.tu-berlin.de/~tolk/vmlanguages.html
http://www.microsoft.com/net
http://www.sun.com/sunone Seiten 98 bis 105: 'Die neue C-Klasse' - .NET: C#, Java, C++ (Report)
http://www.ecma.ch/ecma1/STAND/ecma-334.htm
http://msdn.microsoft.com/net/ecma/
http://www.heise.de/ix/artikel/2001/12/122/
http://www.heise.de/ix/artikel/2002/01/130/
http://www.heise.de/ix/artikel/2002/02/136/
http://java.sun.com/docs/books/jls/
http://msdn.microsoft.com/msdnmag/issues/1100/GCI/GCI.asp http://www.ubreymann.de/cppbuch.html
http://windows.oreilly.com/news/hejlsberg_0800.html
http://www.linux-mag.com/2001-04/GCC_net_01.html