Transcript

Overview• The Digital Life• .NET Technology• C# Boost Up• TOOLs• DEMO• Q&A

The Digital Life

Overview• The Digital Life• .NET Technology• C# Boost Up• DEMO• Q&A

MS.NET is•A Microsoft marketing strategy•A new development framework•Like the Java Virtual Machine

MS.NET is not•Just the MS implementation of Web Services•Anything particularly new or clever•Like the Java Virtual Machine

Framework + Servers

MS.NET Framework• Common Language Runtime• Just-In-Time Assembler• .NET Classes• Multiple Language Compilers

– Visual Basic .NET– C#– C++ .NET– PERL – COBOL– Many others

MS.NET Servers?

•XML Web Services (SOAP)•Microsoft Application Center•Microsoft BizTalk Server •Microsoft Commerce Server•Microsoft Content Management•Microsoft Exchange Server•Microsoft Host Integration•Microsoft Internet Security and Acceleration Server•Microsoft Mobile Information•Microsoft SharePoint™ Portal•Microsoft SQL Server™

.NET versus Java/J2EE

• .NET Class Library

• WebForms / WinForms• CLR• Always uses Native Code

Compilation• ASP+• ADO.NET• SOAP / XML

• Java Core API• Java Beans• Java Swing• Java Virtual Machine• Native Code Compilation

is optional• JSP• JDBC• EJB / JMS / SOAP / XML

Common Language Runtime

• Multi-language runtime environment– Over 21 languages supported today

• Managed Execution Environment– CPU Neutral Instruction Format– Unified Type and Object System– Industrial Strength Garbage Collector– Secure Code Execution

• Language/Hardware/OS Independent– Compact Framework for Small Devices

Taken from http://www.stlnet.org/resources.asp?tabindex=3

Common Language Runtime

• Eliminates the complexities of COM:– GUIDs, CLSIDs, ProgIDs, HRESULTS– CoCreateInstance, IUnknown, BSTRs– QueryInterface, AddRef, Release– Type Libraries, IDL, COM Threading Models– All these are history….

• Enables Clean OO programming– Classes and Interfaces– Constructors, Properties, Methods, Events– Cross language inheritance

Taken from http://www.stlnet.org/resources.asp?tabindex=3

Language Independent

• The .NET Platform is Language Neutral– All .NET languages are first class players– You can leverage your existing skills

• Common Language Specification– Consumer: Can use the .NET Framework– Extender: Can extend the .NET Framework

• MS provides– VB, C++, C#, JScript

• Third-parties are building– APL, COBOL, Pascal, Eiffel, Haskell, ML, Oberon, Perl, Python, Scheme,

Smalltalk

Taken from http://www.stlnet.org/resources.asp?tabindex=3

Common Language RuntimeCommon Language Runtime

Base Class Libraries

Data & XML Libraries

Common Language Runtime

Base Class Libraries

Data & XML Libraries

Web Applications

Common Language Runtime

Base Class Libraries

Data & XML Libraries

Windows Applications

Web Applications

Taken from http://www.stlnet.org/resources.asp?tabindex=3

.NET Framework

Unify Programming Models

Windows API

.NET Framework

Consistent API availability regardless oflanguage and programming model

ASP

Stateless,Code embeddedin HTML pages

MFC/ATL

Subclassing,Power,

Expressiveness

VB Forms

RAD,Composition,

Delegation

Taken from http://www.stlnet.org/resources.asp?tabindex=3

System System.Collections System.Data System.Drawing System.Diagnostics System.DirectoryServices System.Globalization System.IO System.Messaging

System.Net System.Threading System.Text System.Reflection System.Security System.WinForms System.Web System.XML

Taken from http://www.stlnet.org/resources.asp?tabindex=3

Overview• The Digital Life• .NET Technology• C# Boost Up• TOOLs• DEMO• Q&A

Introducing C#• Very Java-like syntax• Sophisticated OO support• The .NET flagship language• Based on Open Standards (ECMA/ISO)• C# will be used more than C++ for .NET, but

not as much as VB.NET.

C# versus Java

C# versus Java•C# uses native code compilation more often than Java.

•C# has more primitive data types than Java (enumerators, structs).

•C# supports full operator overloading.

•C# and Java handle multiple inheritance differently.

•C# and Java both support “delegates” in lieu of pointers.

•C# implements multidimensional arrays more completely than Java’s array-of-an-array.

•More Information:•http://genamics.com/developer/csharp_comparative.htm•http://java.oreilly.com/news/farley_0800.html

C# versus C++

C# versus C++•C# eliminates header files.

•C# has built-in memory management.

•C# nearly eliminates the need for pointers.

•C# is more purely object oriented with all objects and types deriving from a root Object class.

•The C# “switch” statement does not all fall-through.

•More Information:•http://msdn.microsoft.com/msdnmag/issues/01/07/ctocsharp/ctocsharp.asp•http://windows.oreilly.com/news/hejlsberg_0800.html

Overview• The Digital Life• .NET Technology• C# Boost Up• TOOLs• DEMO• Q&A

Visual Studio 2008

A look at a Visual Studio 2008 solutionSomewhat different hierarchy:1) Visual Studio Solution (.sln)

a) C# Project (.csproj)b) VB Project (.vbproj)c) Etc…

Solutions are like “Project Groups” except that you always have a solution to encompass even just one project.

Demonstration of .NET

csc

Demonstration of .NET(without Windows!?)

Demonstration of .NET(without Windows!?)

csc

Overview• The Digital Life• .NET Technology• C# Boost Up• TOOLs• DEMO• Q&A

http://creators.xna.com/

MSP-Mahidol.exteen.com

THANK YOU

Q&A

top related