Software Skills Training, Inc.
978-250-4983
Catalog Course Schedules In House Training Registration Student Feedback
Cost Effective Training Solutions



Register Now

Discount Programs

Advanced Visual Basic.NET Programming with the .NET 2.0 Framework


Price: Contact SST for pricing  |  Duration: 5 Days

Prerequisites: Visual Basic.NET programming experience.

Description: This hands-on course examines advanced features of the VB.NET language and the .NET Framework. The course quickly examines object-oriented programming topics, including controlled inheritance through NonInheritable and MustInherit classes and the use of cross language inheritance. Students will then learn about new features from .NET 2.0 such as partial classes and generics. Students will learn about many of the .NET interfaces and how they can take advantage of them. Students will learn to create assemblies built from single or multiple modules and deploy them for private or shared access. The course will explore how managed code can interact with unmanaged code via features like PInvoke services and Runtime Callable Wrappers. The students will learn to create multiple threaded applications and explore some of the issues that threading introduces to application development. The course examines how advanced features of ADO.NET classes are used to provide support for transaction management, connection pooling, and the creation of internal disconnected DataSets. New features found in ADO.NET 2.0 will also be examined. Students will use delegates to support event handling and to create custom callback functions. The course illustrates how reflection can be used to query an assembly's metadata and to create smart clients. Students will learn to create and use of Web Services and will explore advanced topics such as secure Web Services and passing custom data types. Students will see how .NET Remoting can be used to communicate between two .NET applications. The course will also examine the security capabilities of the .NET programming model and students will be able to adjust the .NET security policy. Other topics include: how and why to override System.Object methods; when to use the String vs. StringBuilder types; implementation vs. interface inheritance, n-tiered application development choices; .NET collections; thread synchronization; and creating and using custom attributes. Comprehensive hands-on lab exercises using Visual Studio.NET reinforce instructor lectures and build direct competence in the topics presented throughout the course.

.NET Programming in Visual Basic
  • .NET Framework Review
  • Common Language Runtime (CLR)
  • Common Type System (CTS)
  • Value Types vs. Reference Types
  • Extending System.Object
  • String vs. StringBuilder
NET Interfaces and Collections
  • IDisposable
  • Building Disposable Objects
  • ICloneable
  • Building Clonable Objects
  • IComparable and IComparer
  • Building Comparable Objects
  • ICollection, IDictionary and IList
  • Using ArrayList, HashTable and SortedList
  • IEnumerator
  • IEnumerable
  • Defining Custom Collections
  • Working with Generic Collections in .NET 2.0
.NET Interoperability Services
  • Interactions between Managed and Unmanaged Code
  • Interop Marshalling
  • Platform Invocation Service (PInvoke)
  • Calling Platform DLL's from .NET
  • Using COM Servers from .NET
  • Runtime Callable Wrappers
  • Thread Interoperability with COM
  • Calling .NET Components from COM
  • COM Callable Wrappers
Working with XML
  • Using XmlReaders and XmlWriters
  • Using Xml Schemas for Validation
  • Managing XML Data using XmlDocument
Multithreading in .NET
  • Threading Concepts
  • Creating Threads in Visual Basic.NET
  • Managing Threads
  • Problems with Threads
  • Thread Synchronization
Reflection & Attribute Programming
  • Using Attributes
  • Built-in Attributes
  • Designing Custom Attributes
  • Reflection Concepts
  • Extracting Type Information
  • Viewing Metadata
  • Discovering Attributes with Reflection
  • Using Reflection at Runtime
  • Building Smart Clients
Security
  • Security Basics
  • Evidence and Code Identity
  • Role-based Security
  • Code Access Security
  • Security Policy
  • Permissions
  • Code Groups
  • Using the .NET Configuration Wizard
  • Cryptography
Object-Oriented Programming
  • Defining and Using Classes
  • Understanding Partial Classes in .NET 2.0
  • Understanding Object Lifetime
  • Building Class Hierarchies
  • Forcing Inheritance with Abstract Classes
  • Preventing Inheritance with Sealed Classes
  • Cross-Language Inheritance
  • Visual Inheritance
  • Defining and Implementing Interfaces
  • Working with Generics in .NET 2.0
Defining and Versioning Assemblies
  • The Role of .NET Assemblies
  • Private and Shared Assemblies
  • Understanding Private Assemblies
  • Building and Using Single-File Assemblies
  • Building and Using Multi-File Assemblies
  • Understanding Shared Assemblied
  • Strong Names
  • Global Assembly Cache (GAC)
  • Building, Configuring and Consuming Shared Assemblies
Advanced Data Management Features of ADO.NET
  • The ADO.NET Object Model
  • Connected vs. Disconnected Access
  • Using the ADO.NET 2.0 Provider Factory Model
  • Connection Pooling
  • Working with Connected Data
  • Using Stored Procedures
  • Transaction Management
  • Working with Disconnected Data
  • Using Multiple Tables with DataSets
  • Filtering Data with DataViews
  • Using Strongly Typed DataSets
  • Binding Data to Controls
Delegates and Events
  • What are Delegates?
  • Using Delegates
  • Singlecast vs. Multicast Delegates
  • Relationship between Delegates and Events
  • Defining Custom Events
  • Trapping Custom Events
 Web Services
  • Review of Web Services
  • .NET 2.0 Changes to Web Services
  • Exploring WSDL
  • Exploring the Proxy Code
  • Making Synchronous and Asynchronous Calls to a Web Service
  • Exposing Custom Types from Web Methods
  • Defining and Using Secure Web Services
Remoting
  • Remoting Basics
  • Understanding Application Domains
  • Creating Remotable Objects
  • Well-known vs. Activated Objects
  • Creating Channels for Calling Remote Methods
  • Creating Remote Objects
  • Interacting with Remote Objects
  • Using Interfaces with Remote Objects
  • Lease-based Lifetimes