Programming in Visual Basic with Microsoft® Visual Studio® 2010 (10550A)

Programming in Visual Basic with Microsoft® Visual Studio® 2010 (10550A)

Overview

Duration: 5 days
This course teaches you Visual Basic language syntax, program structure, and implementation by using Microsoft® Visual Studio® 2010 and the Microsoft .NET Framework 4.
This course provides a solid foundation in Visual Basic to the level necessary to enable students to attend other courses in the Technical Specialist tracks.

Objectives

After completing this course, students will be able to:
  • Describe the purpose of the .NET Framework, and explain how to use Microsoft Visual Basic® and Visual Studio 2010 to build .NET Framework applications.
  • Describe the syntax of basic Visual Basic programming constructs.
  • Describe how to create and call methods.
  • Describe how to catch, handle, and throw exceptions.
  • Describe how to perform basic file I/O operations in a Visual Basic application.
  • Describe how to create and use new types (enumerations, classes, and structures), and explain the differences between reference types and value types.
  • Describe how to control the visibility and lifetime of members in a type.
  • Describe how to use inheritance to create new reference types.
  • Describe how to manage the lifetime of objects and control the use of resources.
  • Describe how to create properties and indexers to encapsulate data, and explain how to define operators for this data.
  • Describe how to decouple an operation from the method that implements it, and explain how to use these decoupled operations to handle asynchronous events.
  • Describe the purpose of collections, and explain how to use generics to implement type-safe collection classes, structures, interfaces, and methods.
  • Describe how to implement custom collection classes that support enumeration.
  • Describe how to query in-memory data by using Language-Integrated Query (LINQ) queries.
  • Describe how to integrate code written by using a dynamic language such as Ruby and Python, or technologies such as Component Object Model (COM), into a Visual Basic application.

Course Outline
Module 1: Introducing Visual Basic and the .NET Framework

This moduledescribes the purpose of the .NET Framework 4 and how you can buildapplications by using Visual Studio 2010.

Lessons

  • Introduction to the .NET Framework 4

  • Creating Projects Within Visual Studio 2010

  • Writing a Visual Basic Application

  • Building a Graphical Application

  • Documenting an Application

  • Debugging Applications by Using Visual Studio 2010

Lab : Introducing Visual Basic and the .NETFramework

After completing this module, students will be able to:

  • Explain the purpose of the .NET Framework 4.

  • Create Visual Basic projects by using Visual Studio 2010.

  • Explain the structure of a Visual Basic application.

  • Use the Windows Presentation Foundation (WPF) Application templateto build a simple graphical application.

  • Use XML comments to document an application.

  • Use the debugger to step through a program.

Module 2: Using Visual Basic ProgrammingConstructs

This module introduces many of the basic Visual Basic languagedata types and programming constructs, and describes the syntax and semanticsof these constructs.

Lessons

  • Declaring Variables and Assigning Values

  • Using Expressions and Operators

  • Creating and Using Arrays

  • Using Decision Statements

  • Using Iteration Statements

Lab : Using Visual Basic Programming Constructs

After completing this module, students will be able to:

  • Explain how to declare variables and assign values.

  • Use operators to construct expressions.

  • Create and use arrays.

  • Use decision statements.

  • Use iteration statements.

Module 3: Declaring and Calling Methods

A key part of developing any application is dividing the solutioninto logical components. In object-oriented languages such as Microsoft VisualBasic, a method is a unit of code that is designed to perform a discrete pieceof work. This module introduces methods and describes how to define and usethem.

Lessons

  • Defining and Invoking Methods

  • Specifying Optional Parameters and ByRef Parameters

Lab : Declaring and Calling Methods

After completing this module, students will be able to:

  • Describe how to create and invoke methods.

  • Define and call methods that can take optional parameters andByRef parameters.

Module 4: Handling Exceptions

Exception handling is an important concept and your applicationsshould be designed with exception handling in mind. This module explains howyou can implement effective exception handling in your applications, and howyou can use exceptions in your methods to elegantly indicate an error conditionto the code that calls your methods.

Lessons

  • Handling Exceptions

  • Raising Exceptions

Lab : Handling Exceptions

After completing this module, students will be able to:

  • Describe how to catch and handle exceptions.

  • Describe how to create and raise exceptions.

Module 5: Reading and Writing Files

The ability to access and manipulate the files on the file systemis a common requirement for many applications. This module shows how to readand write to files by using the classes in the Microsoft .NET Framework. Thismodule also describes the different approaches that you can take, and how toread and write different formats of data.

Lessons

  • Accessing the File System

  • Reading and Writing Files by Using Streams

Lab : Reading and Writing Files

After completing this module, students will be able to:

  • Describe how to access the file system by using the classes thatthe .NET Framework provides.

  • Describe how to read and write files by using streams.

  • Describe how to use the My namespace for reading andwriting files.

Module 6: Creating New Types

The Microsoft.NET Framework base class library consists of manytypes that you can use in your applications. However, in all applications, youmust also build your own types that implement the logic for your solution.

This module explains how to create your own modules and types anddescribes the differences between reference types and value types.

Lessons

  • Creating and Using Modules and Enumerations

  • Creating and Using Classes

  • Creating and Using Structures

  • Comparing References to Values

Lab : Creating New Types

After completing this module, students will be able to:

  • Describe how to create and use modules.

  • Describe how to create and use enumerations.

  • Describe how to create and use classes.

  • Describe how to create and use structures.

  • Explain the differences between reference and value types.

Module 7: Encapsulating Data and Methods

This module describes how to use some of the access modifiers thatVisual Basic provides to enable you to implement encapsulation. This modulealso introduces the Shared modifier, which enables you to define members thatcan be shared over multiple instances of the same type.

Lessons

  • Controlling Visibility of Type Members

  • Sharing Methods and Data

Lab : Encapsulating Data and Methods

After completing this module, students will be able to:

  • Describe how to control the visibility of type members.

  • Describe how to share methods and data.

Module 8: Inheriting from Classes andImplementing Interfaces

This module introduces inheritance and interfaces in the Microsoft.NET Framework, and how you can use them to simplify complex problems, reducecode duplication, and speed up development.

Inheritance is a key concept in an object-oriented language. Youcan use inheritance, interfaces, and abstract classes to develop objecthierarchies in your code. These object hierarchies can help reduce bugs bydefining clear contracts for what a class will expose and by providing defaultimplementations where you can sensibly abstract code into a base type.

Lessons

  • Using Inheritance to Define New Reference Types

  • Defining and Implementing Interfaces

  • Defining Abstract Classes

Lab : Inheriting from Classes and ImplementingInterfaces

After completing this module, students will be able to:

  • Use inheritance to define new reference types.

  • Define and implement interfaces.

  • Define abstract classes.

Module 9: Managing the Lifetime of Objects andControlling Resources

All applications use resources. When you build a Microsoft VisualBasic application, resources fall into two broad categories: managed resourcesthat are handled by the common language runtime (CLR) and unmanaged resourcesthat are maintained by the operating system outside the scope of the CLR. Amanaged resource is typically an object based on a class defined by using amanaged language, such as Visual Basic. Examples of unmanaged resources includeitems implemented outside the Microsoft .NET Framework, such as ComponentObject Model (COM) components, file handles, database connections, and networkconnections.

Resource management is important in any applications that youdevelop. The NET Framework simplifies resource management by automaticallyreclaiming the resources by a managed object when it is no longer referenced byan application. Managed resources are handled by the .NET Framework garbagecollector. However, unmanaged resources are not controlled by the garbagecollector; you must take special steps to dispose them properly and preventthem from being held longer than necessary.

Lessons

  • Introduction to Garbage Collection

  • Managing Resources

Lab : Managing the Lifetime of Objects andControlling Resources

After completing this module, students will be able to:

  • Describe how garbage collection works in the .NET Framework.

  • Manage resources effectively in an application.

Module 10: Encapsulating Data and Defining Overloaded Operators

Many operators have well-defined behavior for the built-in VisualBasic types, but you can also define operators for your own types. This moduledescribes how to implement to operators for your types by using overloading.

Lessons

  • Creating and Using Properties

  • Creating and Using Indexers

  • Overloading Operators

Lab : Creating and Using Properties
Lab : Creating and UsingIndexers
Lab : Overloading Operators

After completing this module, students will be able to:

  • Explain how properties work and use them to encapsulate data.

  • Describe how to use default properties to provide access to datathrough an array-like syntax.

  • Describe how to use operator overloading to define operators foryour own types.

Module 11:Decoupling Methods and Handling Events

This module explains how to decouple an operation from the methodthat implements it and how to use anonymous methods to implement decoupledoperations. This module also explains how to use events to inform consumingapplications of a change or notable occurrence in a type.

Lessons

  • Declaring and Using Delegates

  • Using Lambda Expressions

  • Handling Events

Lab: Decoupling Methods and Handling Events

After completing this module,students will be able to:

  • Describe the purpose ofdelegates and explain how to use a delegate to decouple an operation from theimplementing method.

  • Explain the purpose of lambdaexpressions and describe how to use a lambda expression to define an anonymousmethod.

  • Explain the purpose of eventsand describe how to use events to report that something significant hashappened in a type that other parts of the application need to be aware of.

Module 12: Using Collections and Building GenericTypes

The basiccollection classes introduce a new problem. Classes that act on other types areoften not type-safe. For example, many collection classes frequently use theObject type to store items and must then be cast or converted back to theiroriginal type before they can be used. It is the programmer’s responsibility toensure that the correct casts or conversions are performed, and it is easy tointroduce errors by casting or converting an item to the wrong type. Thismodule introduces generics and how you can use generic classes to maintaintype-integrity and avoid issues that are associated with a lack of type safety.

Lessons

  • Using Collections

  • Creating and Using Generic Types

  • Defining Generic Interfaces and Understanding Variance

  • Using Generic Methods and Delegates

Lab : Using Collections
Lab : Building Generic Types

Aftercompleting this module, students will be able to:

  • Use collectionclasses.

  • Define and usegeneric types.

  • Define genericinterfaces and explain the concepts of covariance and contravariance.

  • Define and usegeneric methods and delegates.

Module 13: Building and Enumerating CustomCollection Classes

When youdevelop applications, you often need to store collections of objects. In manycircumstances, you can use the collection classes that the Microsoft .NETFramework includes; however, sometimes these collection classes do not providethe functionality that you require. For example, you may need to store objectsin a sorted order that is based on a custom sorting algorithm.

This moduleintroduces you to custom collection classes. It also explains how you candevelop collection classes that support the language constructs that Visual Basicprovides, such as enumeration and collection initialization.

Lessons

  • Implementing a Custom Collection Class

  • Adding an Enumerator to a Custom Collection Class

Lab : Building and Enumerating Custom CollectionClasses

Aftercompleting this module, students will be able to:

  • Implement acustom collection class.

  • Define anenumerator in a custom collection class

Module 14: Using LINQ to Query Data

This moduleintroduces you to Language-Integrated Query (LINQ) queries and explains how youcan use them to process data in your Microsoft .NET Framework applications.This module also explains the difference between shared and dynamic LINQqueries, and describes how you can use dynamic LINQ to create highly flexiblequeries that you build at run time.

Lessons

  • Using the LINQ Extension Methods and Query Operators

  • Building Dynamic LINQ Queries and Expressions

Lab : Using LINQ to Query Data

Aftercompleting this module, students will be able to:

  • Describe howto use the LINQ extension methods and query operators.

  • Describe howto build dynamic LINQ queries and expressions.

Module 15: Integrating Visual Basic Code withDynamic Languages and COM Components

Integrationwith other technologies is a key feature of the Microsoft.NET Framework.Previous versions of the .NET Framework enabled you to combine components thatwere developed by using different languages that have compilers that the .NETFramework supports. The .NET Framework 4 now supports integration of componentsbuilt by using dynamic languages. This enables you to re-use items built byusing a wide range of scripting languages that are not easily accessible fromMicrosoft Visual Basic code.

In addition,previous versions of the .NET Framework have always enabled you to integrateComponent Object Model (COM) services and components into your managedapplications. The integration did however, require a good understanding of thedifferences between the way in which the common language runtime (CLR) and theCOM environment operated. The new features of Visual Basic 2010 have simplifiedthe way in which you can invoke COM components, so it is easier for you tore-use these items in a Visual Basic application.

This moduledescribes how to integrate code written by using a dynamic language such asRuby and Python, or technologies such as COM, into a Visual Basic application.

Lessons

  • Integrating Visual Basic Code with Ruby and Python

  • Accessing COM Components from Visual Basic

Lab : Integrating Visual Basic Code with DynamicLanguages and COM Components

Aftercompleting this module, students will be able to:

  • Integrate Rubyand Python code into a Visual Basic application.

  • Invoke COMcomponents and services from a Visual Basic application.

 

This course is not associated with any Certification.
This course requires that you meet the following prerequisites:
  • This course is targeted at developers who already have Visual Basic knowledge.
  • This course is not for new developers; at least 12 months experience working with an Object Oriented language is expected.
    • Creating classes
    • Inheritance and abstraction
    • Polymorphism
    • Interfaces
    • Delegates 
    • Events 
    • Exceptions
  • Experience with the Microsoft .NET Framework
  • Knowledge of the Visual Studio integrated development environment (IDE).
Course ID:
10550A


Show Schedule for: