2. VB C++ C# J# … Common Language Specification ASP .NET Web Forms Web Services Mobile Internet Toolkit Windows Forms ADO .NET and XML Base Class Library .NET Language Support Visual Studio .NET Common Language Runtime Operating System
3. .NET Language Support Overview VB C++ C# J# COBOL … Web Services User Interface ASP.NET ADO.NET: Data and XML Base Framework Common Language Runtime
4. IDE & CLR Integrated Development Environment Single Solution Explorer, Toolbox, and Debugger IntelliSense® statement completion and squigglies Create multi-language solutions Common Language Runtime Microsoft: Visual Basic®, C#, C++, J#, JScript® 3rd Party: APL, Cobol, Component Pascal, Eiffel, Fortran, Haskell, Mercury, Oberon, Oz, Perl, Python, RPG, Scheme, Smalltalk, Standard ML
5. Increased Productivity Simplifies mixed-language development RAD across the board Desktop Web Server Mobile End-to-end debugging support across Languages Projects Processes Machines
6. Language Enhancements Visual Basic .NET Fully object oriented, supports free threading Structured exception handling Visual C# .NET Increased productivity for C++ developer Component-oriented, type-safe Visual C++ .NET Attribute based programming Managed Extensions for C++ Visual J# .NET Java language for .NET Platform
8. Visual Basic .NET Overview Modern, Powerful, True OOP Inheritance, overloading, shadowing, delegates, attributes, hierarchical name spaces Robust Strict type checking, initialize variables at declaration, variable declaration types fixed Consistent Single assignment operator, parenthesis use simplified Simplified Legacy constructs removed
9. Classes & Inheritance Inheritance supported Derive from a single base class Implicitly inherits from System.Object Declarable classes Overriding New implementation for base class method Overrides keyword MyBase refers base class Me refers current class Overloading Multiple versions of a class member Based on parameter types
10. Demo 1: Visual Studio .NET Integrated Development Environment
12. Visual C# .NET Overview Strong C++ heritage Immediately familiar to C++ and Java developers Allows C-style memory management and pointers First component-oriented language in C family Properties, methods, indexers, delegates, events Design-time and runtime attributes Enables one-stop programming No header files, IDL Embeddable in ASP .NET
13. Component-Oriented What defines a component? Properties, methods, events Design-time and runtime information Integrated help and documentation First class support in C# Not naming patterns, adapters, etc. Not external files Easy to build and consume
14. for I = 1 To 10 ‘ for loop Next I for (i=1;i<11;i++) { // for loop } Comparison to Visual Basic Syntactic Differences Visual Basic is NOT case sensitive In C# but not in Visual Basic Pointers, shift operators, inline documentation Overloaded operators, unsigned integers In Visual Basic but not in C# Select Case, Interface implementation Dynamic arrays, modules, optional parameters
26. Visual J# .NET Java-language for .NET Native support for XML Web services Fully integrated with Visual Studio .NET development environment Full access to the .NET Framework ASP .NET, ADO .NET, Windows Forms Integration with >20 other languages Protection of existing investments Use java language syntax on .NET Move applications and skills forward