.Net language support
- 2. VBC++C#J#…Common Language SpecificationASP .NETWeb Forms Web ServicesMobile Internet ToolkitWindowsFormsADO .NET and XMLBase Class Library.NET Language Support Visual Studio .NETCommon Language RuntimeOperating System
- 3. .NET Language Support OverviewVBC++C#J#COBOL…Web ServicesUser InterfaceASP.NETADO.NET: Data and XMLBase FrameworkCommon Language Runtime
- 4. IDE & CLRIntegrated Development EnvironmentSingle Solution Explorer, Toolbox, and Debugger IntelliSense® statement completion and squiggliesCreate multi-language solutionsCommon Language RuntimeMicrosoft: 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
- 6. Language EnhancementsVisual Basic .NETFully object oriented, supports free threadingStructured exception handlingVisual C# .NETIncreased productivity for C++ developer Component-oriented, type-safeVisual C++ .NETAttribute based programmingManaged Extensions for C++Visual J# .NETJava language for .NET Platform
- 8. Visual Basic .NET OverviewModern, Powerful, True OOPInheritance, overloading, shadowing, delegates, attributes, hierarchical name spacesRobust Strict type checking, initialize variables at declaration, variable declaration types fixed Consistent Single assignment operator, parenthesis use simplifiedSimplified Legacy constructs removed
- 9. Classes & InheritanceInheritance supportedDerive from a single base classImplicitly inherits from System.ObjectDeclarable classesOverridingNew implementation for base class methodOverrides keywordMyBase refers base classMe refers current classOverloadingMultiple versions of a class memberBased on parameter types
- 10. Demo 1: Visual Studio .NET Integrated Development Environment
- 12. Visual C# .NET OverviewStrong C++ heritageImmediately familiar to C++ and Java developersAllows C-style memory management and pointersFirst component-oriented language in C familyProperties, methods, indexers, delegates, eventsDesign-time and runtime attributesEnables one-stop programmingNo header files, IDLEmbeddable in ASP .NET
- 13. Component-OrientedWhat defines a component? Properties, methods, events Design-time and runtime information Integrated help and documentationFirst class support in C# Not naming patterns, adapters, etc. Not external filesEasy to build and consume
- 14. for I = 1 To 10‘ for loopNext Ifor (i=1;i<11;i++) {// for loop}Comparison to Visual BasicSyntactic DifferencesVisual Basic is NOT case sensitiveIn C# but not in Visual BasicPointers, shift operators, inline documentationOverloaded operators, unsigned integersIn Visual Basic but not in C#Select Case, Interface implementationDynamic arrays, modules, optional parameters
- 16. Visual C++ .NET Compiler & LanguageOptimizationsWhole Program OptimizationOptimized inline assembly integrationLoop unrolling heuristicsRuntime checksBuffer OverrunStack CorruptionShortened ConvertsAttributes – domain specific programmingRadically simplifies COM+ and IDLIntegrated with .NET Framework attributes model
- 24. Power to drop “to the metal” when neededNative LibrariesMFC/ATLImproved MFC/ATL integrationIntegrated Web Service clientWindows® XP, GDI+, Crypto, NT Security, Perfmon, AccessibilityATL ServerATL framework for Web Services and Web applicationsStencil-based UI generation with integrated XML/HTML designerEnhanced STLBetter conformance and error messagesSignificantly improved documentation
- 26. Visual J# .NET Java-language for .NETNative support for XML Web services Fully integrated with Visual Studio .NET development environmentFull access to the .NET FrameworkASP .NET, ADO .NET, Windows FormsIntegration with >20 other languagesProtection of existing investmentsUse java language syntax on .NETMove applications and skills forward
- 27. Legacy Java SourceJavaBinaryJava Source targeting .NETSubset of JDK 1.1.4 & VJ++ 6.0 LibrariesBinaryConverterMSILMSILMSIL.NET Frameworks.NET RuntimeWin32Java-language SupportSourceConverter