Levi, Ray & Shoup, Inc.
  • Courses
  • Site Content

AT-OO-VB - Object Oriented Programming in Visual Basic (VS 2008)

This course is a practical introduction to programming in Visual Basic and the use of services provided by .NET. It emphasizes the Visual Basic language and how to build Visual Basic applications from an object-oriented perspective. It is current to Visual Studio 2008 and .NET 3.5, which introduces important new features such as local type inference, extension methods, lambda expressions and Language-Integrated Query (LINQ). The new features are covered in a new chapter.

Click here to print this page »

Prerequisites


Some programming experience. Previous knowledge of Visual Basic is not essential.

Detailed Class Syllabus


.NET: What You Need to Know


.NET: What Is Really Happening
.NET Programming in a Nutshell
Viewing the Assembly
Viewing Intermediate Language
Understanding .NET
Creating a Console Application
Visual Studio Solutions
Starter Code
Using the Visual Studio Text Editor
IntelliSense
Build and Run the Project
Pausing the Output
Visual Basic and GUI Programs
.NET Documentation

Fundamentals of Visual Basic Programming


Visual Basic
Hello, World
Compiling, Running (Command Line)
Program Structure
Namespaces
Project Imports
Startup Object
Naming Standards
Keywords
Multiple-File Program Structure
Using Procedures
Data Types
IEEE 754 Floating Point Standard
Data Type Ranges
Literals
Variables
Initialization of Variables
Type Checking
Constants
Data Conversions
Operators and Expressions
Arithmetic Operators
String Operators
Relational Operators
Logical Operators
Bitwise Operators
Assignment Operators
Operator Precedence
Console I/O
Console Input
Console Output
Placeholders

Control Structures


Control Structures
If/Then Statement
If/Then/Else Statement
Select Case Statement
Looping
Do/Loop Statement
Exiting Do Loops Prematurely
While Statement
For/Next Statement
Continue Statement

Procedures


Modules
Subroutines
ByVal Parameters
ByRef Parameters
Functions
Access, Modules, and Scope
Scope
Static Variables
Overloading
Optional Parameters
Variable Length Parameter Lists

Advanced Data Types


Arrays
Initializing Arrays
Using UBound
Multi-Dimensional Arrays
Arrays are a Reference Type
Reference Assignment Issues
Jagged Arrays
Dynamic Arrays
Releasing Memory for the Array
System.Array
System.Array Functions
Enumerations
System.Enum
System.Enum Functions
Structures
With Statement
Structure Assignment
Pass-by-Value versus Pass-by-Reference
Value Types vs. Reference Types
Using ByVal with Value Types
Using ByRef with Value Types
Using ByVal with Reference Types

Exception Handling


Handling Errors
Visual Basic Exception Handling
System.Exception
Exception Flow of Control
Handling Multiple Exceptions
Throwing Exceptions
Types of Exceptions
Context and Stack Unwinding
Exception Handling Strategies
Fahrenheit/Celsius Version 1
Fahrenheit/Celsius Version 2
Fahrenheit/Celsius Version 3
Fahrenheit/Celsius Version 4
Inner Exceptions
Custom Exceptions

Object-Oriented Programming


Object-Oriented Programming
Objects in Software
Abstraction and Encapsulation
Classes
Defining a Class in Visual Basic
Defining Data Members
Defining Methods
Creating Objects
Using Objects
Assigning Object References
Garbage Collection
Me
Properties
Defining Properties
ReadOnly Properties
WriteOnly Properties
Shared Attributes
Shared Methods and Properties
Constructors and Initialization
Defining Constructors
Default Constructor
Shared Constructor
ReadOnly Members
Constant Members
Events
Defining Events
Restrictions on Event Procedures
Raising Events
Trapping Events Using WithEvents
Trapping Events Dynamically
ToString in User-Defined Classes
Operator Overloading

Inheritance


Inheritance
Inheritance Hierarchy
Defining a Derived Class
.NET’s Object Class
Controlling Base Class Construction
Derived Class Construction
Derived Class Constructors
Need For Protected Access Modifier
Access Control
Using Protected Access
Exceptions
Defining Custom Exceptions
Using Custom Exceptions
Shadowing Base Class Methods
Polymorphism
Defining a Method as Overridable
Overriding a Method
Using Heterogeneous Collections with Polymorphic Methods
Abstract Classes
Not Inheritable Classes
Type Conversions in Inheritance
CType

Interfaces and Collections


Components and OO in Visual Basic
Interfaces
Interfaces in Visual Basic
Implementing an Interface
Using an Interface
Multiple Interfaces
Using Multiple Interfaces
TypeOf ... Is and Dynamic Interfaces
Interfaces in Visual Basic and COM
Resolving Ambiguity in Interfaces
.NET Interfaces
Arrays of User-Defined Objects
Implementing IComparable
Collections
ArrayList
ArrayList Methods
IEnumerable and IEnumerator
Using Enumerators.
Collections of User-Defined Objects
Account Class
Collection Interfaces
ICollection
IList
Default Properties
Using the Item Property
Writing Generic Code
Using a Class of Object
Generic Types
Generic Client Code
System.Collections.Generic

Introduction to Windows Forms


Windows Forms
Creating a Windows Forms App
Aligning Controls
Setting the Tab Order
Partial Classes
Windows Forms Event Handling
Add Events for a Control
Events using the Wizard Bar
Events Documentation
Closing a Form
ListBox Control
Command Line Arguments

Windows Forms Controls


Common Properties
Common Events
Event Handling
Using a Label
Using Mnemonics
Using a Text Box
Using a Button
Using a Radio Button and Group Box
Using a Check Box
Using the ToolTip Control
Using a ListBox Control
Adding ListBox Items
Removing ListBox Items
Selecting an Item in a List Box
Using a ComboBox Control
Flexible Events Handlers
Timer Control

User Interface Features


Dialog Boxes
MessageBox
Custom Dialogs
Adding a Custom Dialog
Using DialogResult
Displaying a Dialog
Tab Order and Focus
Initializing a Custom Dialog
Changing the Behavior of a Button’s DialogResult
Modeless Dialogs
Managing the Relationship between Forms
Programming the Apply and Close Buttons
Enabling / Disabling the Apply Button
Common Dialogs
Using a Common Dialog Control
Menus
MenuStrip Control
Calculator Starter Code
Attaching a Menu to a Form
Configuring Items in a Menu
Testing the Menu
Responding to Menu Events
Changing Menu Item Appearance
Modified SetOperation()
ContextMenuStrip Control
Context Menu Events
Handling Multiple Events

Database Programming


ADO.NET
ADO.NET Architecture
.NET Data Providers
Programming with ADO.NET Interfaces
.NET Namespaces
Connected Data Access
ADO.NET Class Libraries
Connecting to an OLE DB Data Provider
Using Commands
Creating a Command Object
ExecuteNonQuery
Using a Data Reader
Disconnected Datasets
Data Adapters
Data Bound Controls
DataGridView Control
Performing a Query

New Features in Visual Basic 2008


Local Type Inference
Object Initializers
Array Initializers
Anonymous Types
Partial Methods
Partial Method Definition
Partial Method Implementation
Main Program
Extension Methods
Lambda Expressions
Named Method
Language-Integrated Query (LINQ)
Using IEnumerable