Starting with VB.NET
From Syntax to Real-World Applications in 2 days (or 4 x half days)
Speed matters when you're building apps. This two-day course gets you up and running with VB.NET fast, covering everything you need to build real desktop and web applications: core language fundamentals (variables, control flow, methods), Visual Studio workflows, object-oriented programming, essential libraries (exception handling, LINQ), Windows Forms for desktop UI, and ASP.NET MVC for web development. Your instructor has 30+ years in the field and teaches VB.NET the way it's actually used in production, with real frameworks, patterns, and best practices instead of toy examples. By the end, you'll be coding simple applications on your own, understanding how VB.NET solutions are structured, and ready to tackle actual development projects.
Learning Outcomes
By the end of this two-day course, participants will be able to:
- Understand and apply basic VB.NET syntax: variables, data types, control structures, methods.
- Navigate Visual Studio, create and debug simple VB.NET programs.
- Explain and implement object-oriented programming concepts in VB.NET: classes, objects, inheritance, polymorphism, interfaces.
- Use VB.NET’s standard libraries: exception handling, collections, generics, LINQ queries.
- Design and build simple Windows Forms applications with a user interface.
- Understand the fundamentals of ASP.NET MVC in VB.NET: project structure, controllers, views, models, routing.
- Write a small end-to-end VB.NET application (either desktop or web) demonstrating the above capabilities.
- Understand real-world usage of VB.NET in 2025: its status, ecosystem, support considerations.
Prerequisites
- Basic understanding of programming logic (variables, conditionals, loops) in any language.
- Familiarity with using a Windows PC and installing/running software.
- Visual Studio (Community Edition or higher) installed on the machine for hands-on exercises.
- (Optional but helpful) Basic familiarity with C# or another object-oriented language to ease transition.
Training Outline
Below is the detailed training outline, grouped by thematic topics and sub-topics (not broken into sessions by day, so you can flexibly allocate depending on pace).
Introduction & Environment Setup
- Overview of VB.NET in the modern .NET ecosystem: what’s changed, what remains.
- Installing Visual Studio, selecting VB.NET project templates.
- Exploring the IDE: Solution Explorer, code editor, debug windows, toolbox for Windows Forms.
- Creating your first “Hello World” VB.NET console application: structure of a VB.NET project, Main method, basic output, build & run.
VB.NET Syntax Fundamentals
- Data types in VB.NET: Integer, Long, Short, String, Boolean, Date, Object, Variant.
- Variable declaration and initialization: Dim, As, initialization rules.
- Control flow statements:
- Conditional: If…Then…ElseIf…Else…End If
- Select Case … Case … End Select
- Loops and iteration: For … Next, For Each … Next, While … End While, Do…Loop.
- Methods (Sub and Function): declaration, parameters, return values, overloading.
- Modules vs Classes: how VB.NET organizes code.
- Comments, regions, and best practices for code readability.
Object-Oriented Programming in VB.NET
- Understanding classes and objects: definition, instantiation, namespaces.
- Properties, fields, methods, constructors.
- Encapsulation: Public, Private, Protected, Friend keywords.
- Inheritance: Inherits keyword, base class, derived class, method overriding (Overrides), base invocation (MyBase).
- Polymorphism: base class references, interface implementation.
- Interfaces: Implements keyword, multiple interfaces, when to use.
- Abstract concepts (MustOverride, MustInherit) where VB.NET supports them.
- Practical coding exercise: build a small class hierarchy (e.g., Shape → Circle, Rectangle) with shared behavior and polymorphic methods.
Standard Libraries & Language Features
- Using the .NET class libraries in VB.NET: imports statements, namespaces (System, System.Collections.Generic, System.Linq).
- Exception handling: Try…Catch…Finally, Throw, custom exceptions.
- Collections and generics: List(Of T), Dictionary(Of TKey, TValue), etc.
- LINQ in VB.NET: query syntax and method syntax, filtering, projection, ordering, grouping. VB.NET specific LINQ support (e.g., Visual Basic query keywords)
- Working with files and I/O: reading/writing text files using System.IO.
- Debugging and error handling within Visual Studio: breakpoints, watches, exception settings.
Windows Forms Application Development
- Introduction to Windows Forms: what it is, when to use it.
- Creating a Windows Forms project in Visual Studio (VB.NET).
- Form design: toolbox controls (Button, TextBox, Label, ListBox, DataGridView), layout, properties window.
- Event-driven programming: handling Click, Load, TextChanged events; VB.NET Handles keyword for event wiring. (Wikipedia)
- Designing a simple Form application: e.g., a basic data-entry form that stores input into a List(Of T) and displays it in a DataGridView.
- Validating input, handling exceptions, showing messages (MessageBox).
- Packaging and deployment basics: building .exe, setting application icon, configurations.
ASP.NET MVC Basics with VB.NET
- Overview of web development in VB.NET: where web fits, contrast to desktop.
- Introduction to ASP.NET MVC architecture: Models, Views, Controllers, routing.
- Creating an ASP.NET MVC project in Visual Studio with VB.NET.
- Folder structure: Controllers folder, Models folder, Views folder, Shared folder.
- Creating a simple model class in VB.NET (e.g., Product with properties ID, Name, Price).
- Creating a controller in VB.NET: actions (Index, Create, Edit, Delete).
- Creating views in VB.NET using Razor syntax (VB-flavored Razor or vbhtml) and HTML helpers.
- Data binding, form submission, model validation (DataAnnotations).
- Basic persistence: using in-memory collection for demo (full database integration beyond course scope).
- Demo: build a simple CRUD web application for the Product model.
- Discussion: when to choose web vs. desktop, and limitations/considerations (maintenance, hosting, platform support).
This outline provides a comprehensive yet practical roadmap over two full days to gain a strong foundation in VB.NET—enough to begin independent coding and transition into more complex projects under the guidance of an industry-seasoned instructor.
Practical, connected learning
My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.