2. Why Are We Here? (the lesser version of the question, Lucas)
It might be useful in getting a job
It might not be useless in academia
Actually quite pleasant to work with (I’m looking at you COM)
Other MS dev technologies (MFC, COM+, ATL, ASP) dead &
buried
And good riddance!
Focus of upcoming Microsoft Research efforts
http://research.microsoft.com/
Mostly free (also free, pizza from Emt (ref: Logical Fallacies))
3. .NET Hello World Demo
runtime
dev time
Common Language Runtime
csc
+System Library
VS
hsc
bytecode* (+ASP.NET Library)
vbc (+Web Service Library)
(.exe/dll)
(+Graphics Libraries)
cl
(+Windows Forms)
VI … (+Service Interop)
(+ADO.NET Library)
(+bunch more)
* common intermediate language (CIL)
4. Who is This Guy?
Time to fire up the ol’ hex editor…
5. .NET lives everywhere (but then so do rats)
Windows, IE, console, services: .NET Runtime (optionally w/ SDK)
Mac, Linux, Windows Desktop: Mono (& optionally Tao)
http://www.mono-project.com/
http://www.taoframework.com/
Mac, Windows over Web: Silverlight (~’MS Flash’)
Windows Server: IIS (runs ASP.NET), .NET 64 bit, SQL Server 2K5
Windows Compact: .NET Compact Runtime
Development: VS, Mono/SharpDevelop, notepad, vi, etc.
7. Let’s Get Personal Demo
ASP.NET
Windows Forms
Web Services
C# Language Focus (woohoo!’s from a recovering Java programmer)
Hello, World!
Operator Overloading, woohoo!
Preprocessor, woohoo!
Unsafe code (scary goodness) (also, woohoo!)
Object hierarchy & boxing
Constructor, Destructor, IDispose, using { }
Iterators, foreach
Serialization, Attributes
Delegates (i.e. pointers to functions)
Unmanaged C++ Performance Faceoff