VB and .NET Development

Visual Basic has a rich history in the landscape of Microsoft development technologies, and it continues to play an important role today with the .NET Framework. VB provides a clear and explicit way to implement contemporary object-oriented solutions on the .NET platform.

This course will give you a deep and broad understanding of VB as a programming language. You will also gain confidence to explore the richness of the .NET Framework library, including LINQ, the Entity Framework, and asynchronous programming.


5 days



  • At least 6 months programming experience
  • Familiarity with OO concepts would be an advantage

What you'll learn

  • Essential VB syntax
  • Implementing object-oriented designs in VB
  • Using generics, collection classes, and exceptions
  • File handling
  • ADO.NET, Entity Framework, and LINQ
  • Multithreading and asynchronous programming
  • Dynamic programming
  • Overview of WPF and WCF

Course details

Introduction to VB and .NET

  • .NET Framework building blocks
  • Hello world in VB
  • Using Visual Studio
  • Namespaces and assemblies

Core VB Programming Constructs

  • Variables, operators, and statements
  • Reference types vs. value types
  • Conversions
  • Nullable types
  • Using the Console and String classes
  • Flow-of-control
  • Using implicit types

More VB Programming Constructs

  • Defining methods
  • Input, output, and optional parameters
  • Method overloading
  • Arrays
  • Structures

Defining and Using Classes

  • Defining classes
  • Defining constructors and finalizers
  • Defining properties
  • Creating and disposing objects
  • Defining constants and read-only fields
  • Static members
  • Partial classes/methods

Inheritance and Polymorphism

  • Defining base classes and derived classes
  • Overriding methods
  • Abstract classes
  • Interfaces

Exception Handling

  • Defining Try/Catch/Finally blocks
  • Throwing exceptions
  • Defining new exception classes
  • Defining Using blocks

Creating Collections of Objects

  • Overview of generics
  • Using List collections
  • Using Dictionary collections

Delegates, Events, and Lambdas

  • Overview
  • Defining simple delegates
  • Defining and handling events
  • Using lambda expressions

Additional Language Features

  • Operator overloading
  • Extension methods
  • Object initializers
  • Anonymous types

Introduction to LINQ

  • The role of LINQ
  • Simple LINQ query expressions
  • Using LINQ with collections
  • LINQ query operators

File Handling

  • Using the DriveInfo, DirectoryInfo, and FileInfo classes
  • Using the Directory and File classes
  • Using stream readers and writers
  • Serialization

Managing Data

  • .NET data providers
  • Connecting to a database
  • Executing a query
  • Result sets
  • DataSets
  • Using the Entity Framework

Creating XAML-based User Interfaces

  • Overview of Windows Presentation Foundation
  • Getting started with XAML
  • Implementing event handlers
  • Data binding

WCF and Data Services

  • Overview of Windows Communication Foundation
  • Creating a service
  • Hosting a service
  • Creating a client
  • Implementing and using WCF data services

Multithreading, Tasks, and Asynchronous Operations

  • Invoking methods asynchronously via delegates
  • Creating threads programmatically
  • Synchronization
  • Parallel programming
  • Asynchronous programming

Integrating with Unmanaged Code

  • The dynamic keyword
  • The Dynamic Language Runtime

Additional .NET Techniques

  • Reflection
  • Assembly management
  • Attributes
  • Encryption and decryption