10 Sep08 2003ver
-
Upload
kumton-suttiraksiri -
Category
Technology
-
view
290 -
download
0
description
Transcript of 10 Sep08 2003ver
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