Introduction to .
Net
By
Sam Nasr
May 5, 2006
www.ClevelandDotNet.info
Agenda
Introductions
What is .Net?
.Net Framework
Advantages of .Net
Advantages of CLR
Visual Studio 2005
.Net Languages
C# vs. VB.Net
Resources
What is .Net?
New programming methodology
Multiple Languages (VB.Net, C#, J#, Cobol.Net, etc.)
JIT Compiler
Primary Parts:
.Net Framework
Common Language Runtime (CLR)
RTM:
2002 (v1.0)
2003 (v1.1)
2005 (v2.0)
.Net Framework
A set of approximately 3500 classes.
Classes are divided into namespaces grouping similar classes.
For organization, each class belongs to only one namespace.
Most classes are lumped into a name space called System
System.Data: DB access
System.XML: reading/writing XML
System.Windows.Forms: Forms manipulation
System.Net: network communication.
.Net Framework
Supports Web Standards
HTML
XML
XSLT
SOAP
WSDL (Web Services)
ADO.Net: ActiveX Data Objects
ASP.Net: Active Server Pages
ILDASM: A tool used to properly display IL in a
human readable format.
.Net Compact Framework (mobile devices)
Advantages of .Net
Write once, run everywhere
Multiple programming languages (20+)
Coding Reduction
Controls
Template projects
IIS/Cassini support
Ease of Deployment
Security Features
Evidence-based security
Code access security
The verification process
Role-based security
Cryptography
Application domains
Advantages of CLR
JIT allows code to run in a protected environment as
managed code.
JIT allows the IL code to be hardware independent.
CLR also allows for enforcement of code access
security.
Verification of type safety.
Access to Metadata (enhanced Type Information)
Advantages of CLR
Support for developer services (debugging)
Interoperation between managed code and
unmanaged code (COM, DLLs).
Managed code environment
Improved memory handling
Improved “garbage collection”
Web App Benchmark
Distributed Transactions
Web Service Throughput
Visual Studio 2005
IDE for .Net development
Dotfuscator encryption tools
Cassini (IIS)
Application Testing Center
Team Suite for project management
Express versions (free)
VB6 to VB.Net conversion wizard
.Net Programming Languages
1. Visual Basic.Net 13. RPG
14. Component Pascal
2. C# 15. Mercury
3. APL 16. Scheme
4. Fortran 17. Curriculum
5. Pascal 18. Mondrian
19. SmallTalk
6. C++ 20. Eiffel
7. Haskell 21. Oberon
8. Perl 22. Standard ML
23. Forth
9. Java Language 24. Oz
10.Python
11.COBOL
12.Microsoft
JScript
C# vs. VB.Net
Differences lie in:
1. Syntax
2. Object Oriented Features
3. Visual Studio.Net IDE
C# vs. VB.Net
C#
VB.Net
No Auto Case adjust
Auto case adjust
Requires “{, }, ;”
No line
Enforces programming
terminators
rules.
Requires “Begin,
Unsafe Blocks
End”
Documentation
Still intended as
Comments
RAD tool.
Operator Overloading
Allows late
binding
C# vs. VB.Net
C# VB.Net
class App Class App
{
static void Main(string [ ] args) Shared Sub Main(ByVal args
{ as String( ) )
int intCounter=0; Dim arg as String
Dim intCounter as Integer
foreach (string arg in args)
{ For Each arg in args
System.Console.WriteLine(“
Counter:” + System.Console.Writeline(“
intCounter.ToString() + “=“ Counter: ” & intCounter &
+ arg); “=“ & arg)
} //end of foreach Next ‘For Each loop
} //end of Main()
End Sub ‘end of Main()
} //end of App{}
Documentation Comments (C#)
///<summary>
///A Sample Function to demonstrate C#
///</summary>
///<param name=“void”>This function does not receive a
parameter. </param>
///<returns>Void Type</returns>
Void SampleProc()
{
int intCounter1, intCounter2;
MessageBox.show(“Counter1=” & intCounter1);
} //end of SampleProc
C#/VB.Net Myths
VB.Net is intended for use with Microsoft Office.
C# is the latest release of C++.
C# is easier to learn than VB.Net.
To learn C#, one should first learn C++.
C# is more advanced than VB.Net
C# runs faster than VB.Net
C#/VB.Net Converters
C# to VB.NET
http://www.aspalliance.com/aldotnet/examples/tr
anslate.aspx
http://www.kamalpatel.net/ConvertCSharp2VB.a
spx
VB.Net to C#
http://www.e-iceblue.com
Developer Resources
Microsoft Developers Network: http://msdn.microsoft.com
.Net Training and Events:
http://msdn.microsoft.com/netframework/support/training/default.aspx
Deploying .Net Applications:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/
html/cpcondeployingnetframeworkapplications.asp
MSDN Events (VS.Net): http://www.msdnevents.com
TechNet Events (SQL Server):
http://www.technetevents.com
C#/VB.Net Special Interest Group:
Informational Resources
.Net Overview
http://msdn.microsoft.com/netframework/technologyinfo/overview/
What .Net means to IT Professionals
http://www.microsoft.com/net/business/it_pros.asp
Case Studies:
Continental Airlines
Dollar Rent A Car Systems
U.S. Army Intelligence and Security Command
Scandinavian Airlines
TS2 Seminars
http://www.ts2seminars.com/