Intended for experienced developers who already have programming experience in Visual Basic, C, C++, C#, or Java, and understand the concepts of Object Oriented Programming. These developers will be likely to develop enterprise business solutions.

Course Outline

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.

Audience ProfileThis course is intended for experienced developers who already have programming experience in Visual Basic, C, C++, C#, or Java, and understand the concepts of Object Oriented Programming. These developers will be likely to develop enterprise business solutions.These professional developers will be attending the course so that they can quickly ramp up on Visual Basic Programming in the .NET Framework. The course focuses on Visual Basic program structure, language syntax, and implementation details with the .NET Framework 4.0. This course also focuses on new enhancement in the Visual Basic 2010 language using Visual Studio 2010.

At Course CompletionAfter 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 OutlineModule 1: Introducing Visual Basic and the .NET FrameworkThis module describes the purpose of the .NET Framework 4 and how you can build applications by using Visual Studio 2010.

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 template to 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 Programming ConstructsThis module introduces many of the basic Visual Basic language data types and programming constructs, and describes the syntax and semantics of these constructs.

Lessons ¢ Declaring Variables and Assigning Values¢ Using Expressions and Operators¢ Creating and Using Arrays¢ Using Decision Statements¢ Using Iteration Statements

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 MethodsA key part of developing any application is dividing the solution into logical components. In object-oriented languages such as Microsoft Visual Basic, a method is a unit of code that is designed to perform a discrete piece of work. This module introduces methods and describes how to define and use them.

Lab : Declaring and Calling Methods¢ Calculating the Greatest Common Divisor of Two Integers by Using Euclid(TM)s Algorithm¢ Calculating the GCD of Three, Four, or Five Integers¢ Comparing the Efficiency of Two Algorithms¢ Displaying Results Graphically¢ Solving Simultaneous Equations (optional)

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 and ByRef parameters.

Module 4: Handling ExceptionsException handling is an important concept and your applications should be designed with exception handling in mind. This module explains how you can implement effective exception handling in your applications, and how you can use exceptions in your methods to elegantly indicate an error condition to the code that calls your methods.

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 FilesThe ability to access and manipulate the files on the file system is a common requirement for many applications. This module shows how to read and write to files by using the classes in the Microsoft .NET Framework. This module also describes the different approaches that you can take, and how to read and write different formats of data.

Lessons¢ Accessing the File System¢ Reading and Writing Files by Using Streams

Lab : Reading and Writing Files¢ Building a Simple File Editor¢ Making the Editor XML Aware

After completing this module, students will be able to:¢ Describe how to access the file system by using the classes that the .NET Framework provides.¢ Describe how to read and write files by using streams.¢ Describe how to use the My namespace for reading and writing files.

Module 6: Creating New TypesThe Microsoft.NET Framework base class library consists of many types that you can use in your applications. However, in all applications, you must also build your own types that implement the logic for your solution. This module explains how to create your own modules and types and describes 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¢ Using Enumerations to Specify Domains¢ Using a Structure to Model a Simple Type¢ Using a Class to Model a More Complex Type¢ Using a Nullable Structure

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 MethodsThis module describes how to use some of the access modifiers that Visual Basic provides to enable you to implement encapsulation. This module also introduces the Shared modifier, which enables you to define members that can be shared over multiple instances of the same type.

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 and Implementing InterfacesThis module introduces inheritance and interfaces in the Microsoft .NET Framework, and how you can use them to simplify complex problems, reduce code duplication, and speed up development.Inheritance is a key concept in an object-oriented language. You can use inheritance, interfaces, and abstract classes to develop object hierarchies in your code. These object hierarchies can help reduce bugs by defining clear contracts for what a class will expose and by providing default implementations where you can sensibly abstract code into a base type.

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 and Controlling ResourcesAll applications use resources. When you build a Microsoft Visual Basic application, resources fall into two broad categories: managed resources that are handled by the common language runtime (CLR) and unmanaged resources that are maintained by the operating system outside the scope of the CLR. A managed resource is typically an object based on a class defined by using a managed language, such as Visual Basic. Examples of unmanaged resources include items implemented outside the Microsoft .NET Framework, such as Component Object Model (COM) components, file handles, database connections, and network connections.Resource management is important in any applications that you develop. The NET Framework simplifies resource management by automatically reclaiming the resources by a managed object when it is no longer referenced by an application. Managed resources are handled by the .NET Framework garbage collector. However, unmanaged resources are not controlled by the garbage collector; you must take special steps to dispose them properly and prevent them from being held longer than necessary.

Lessons ¢ Introduction to Garbage Collection¢ Managing Resources

Lab : Managing the Lifetime of Objects and Controlling Resources¢ Implementing the IDisposable Interface¢ Managing Resources Used by an Object

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 OperatorsMany operators have well-defined behavior for the built-in Visual Basic types, but you can also define operators for your own types. This module describes how to implement operators for your types by using overloading.

Lessons¢ Creating and Using Properties¢ Creating and Using Indexers¢ Overloading Operators

Lab : Creating and Using Properties¢ Defining Properties in an Interface¢ Implementing Properties in a Class¢ Using Properties Exposed by a Class

Lab : Creating and Using Indexers¢ Implementing a Default Property to Access Bits in a Control Register¢ Using an Indexer Exposed by a Class

Lab : Overloading Operators¢ Defining the Matrix and MatrixNotCompatibleException Types¢ Implementing Operators for the Matrix Type¢ Testing the Operators for the Matrix Type

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 data through an array-like syntax.¢ Describe how to use operator overloading to define operators for your own types.

Module 11: Decoupling Methods and Handling EventsThis module explains how to decouple an operation from the method that implements it and how to use anonymous methods to implement decoupled operations. This module also explains how to use events to inform consuming applications of a change or notable occurrence in a type.

Lessons¢ Declaring and Using Delegates¢ Using Lambda Expressions¢ Handling Events

After completing this module, students will be able to:¢ Describe the purpose of delegates and explain how to use a delegate to decouple an operation from the implementing method.¢ Explain the purpose of lambda expressions and describe how to use a lambda expression to define an anonymous method.¢ Explain the purpose of events and describe how to use events to report that something significant has happened in a type that other parts of the application need to be aware of.

Module 12: Using Collections and Building Generic TypesThe basic collection classes introduce a new problem. Classes that act on other types are often not type-safe. For example, many collection classes frequently use the Object type to store items, and must then be cast or converted back to their original type before they can be used. It is the programmer(TM)s responsibility to ensure that the correct casts or conversions are performed, and it is easy to introduce errors by casting or converting an item to the wrong type. This module introduces generics and how you can use generic classes to maintain type-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

After completing this module, students will be able to:¢ Use collection classes.¢ Define and use generic types.¢ Define generic interfaces and explain the concepts of covariance and contravariance.¢ Define and use generic methods and delegates.

Module 13: Building and Enumerating Custom Collection ClassesWhen you develop applications, you often need to store collections of objects. In many circumstances, you can use the collection classes that the Microsoft .NET Framework includes; however, sometimes these collection classes do not provide the functionality that you require. For example, you may need to store objects in a sorted order that is based on a custom sorting algorithm.This module introduces you to custom collection classes. It also explains how you can develop collection classes that support the language constructs that Visual Basic provides, such as enumeration and collection initialization.

Lab : Building and Enumerating Custom Collection Classes¢ Implementing the IList(Of TItem) Interface¢ Implementing an Enumerator by Writing Code¢ Implementing an Enumerator by Using an Iterator

After completing this module, students will be able to:¢ Implement a custom collection class.¢ Define an enumerator in a custom collection class

Module 14: Using LINQ to Query DataThis module introduces you to Language-Integrated Query (LINQ) queries and explains how you can use them to process data in your Microsoft .NET Framework applications. This module also explains the difference between shared and dynamic LINQ queries, and describes how you can use dynamic LINQ to create highly flexible queries 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¢ Using the LINQ Query Operators¢ Building Dynamic LINQ Queries

After completing this module, students will be able to:¢ Describe how to use the LINQ extension methods and query operators.¢ Describe how to build dynamic LINQ queries and expressions.

Module 15: Integrating Visual Basic Code with Dynamic Languages and COM ComponentsIntegration with other technologies is a key feature of the Microsoft.NET Framework. Previous versions of the .NET Framework enabled you to combine components that were developed by using different languages that have compilers that the .NET Framework supports. The .NET Framework 4 now supports integration of components built by using dynamic languages. This enables you to re-use items built by using a wide range of scripting languages that are not easily accessible from Microsoft Visual Basic code.In addition, previous versions of the .NET Framework have always enabled you to integrate Component Object Model (COM) services and components into your managed applications. The integration did however, require a good understanding of the differences between the way in which the common language runtime (CLR) and the COM environment operated. The new features of Visual Basic 2010 have simplified the way in which you can invoke COM components, so it is easier for you to re-use these items in a Visual Basic application.This module describes how to integrate code written by using a dynamic language such as Ruby and Python, or technologies such as COM, into a Visual Basic application.

Lab : Integrating Visual Basic Code with Dynamic Languages and COM Components¢ Integrating Code Written by Using a Dynamic Language into a Visual Basic Application¢ Using a COM Component from a Visual Basic Application

After completing this module, students will be able to:¢ Integrate Ruby and Python code into a Visual Basic application.¢ Invoke COM components and services from a Visual Basic application.

Prerequisites & Certificates

Pre-Requisites

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).

Certificates offered

Certificate of completion

Cancellation Policy

10 business day cancellation policy. if the course is confirmed and the student cancels within 10 days of the course, then they get charged and apply a credit for future courses. If they cancel outside of 10 business days, then there are no charges at all.

Reviews

If you have taken a course through this vendor please
log into your account and leave feedback for this vendor.
You will be helping ensure our members get directed to
the best training facilities.

Here are some reviews of the training vendor.

I realize that we are constantly dealing with technology, but I still think for a registration fee of almost $3,000, that a hardcover book should be included. I know that the option to print the book on a one-time basis exists.

Reviewed byMark B.2016

no

Reviewed byZeno Z.2016

The instructor was very knowledgeable and answered all questions. Jarod did an excellent job presenting.

Reviewed byBruce F.2015

The room was cold. I had to sit next to the space heater. It would be good to tell future patrons to dress warmly AHEAD of time. No suprises.

Reviewed byRachel .2015

He was great and offered his contact info for further questions.

Reviewed byKim R.2015

Howard was a fantastic instructor and the course was exactly what I required.

Reviewed byStephen M.2014

The trainer was excellent - the course exceeded my expectations.

Reviewed byJennifer W.2014

This course provides an excellent overview and a bit of practice on the various functions of SharePoint 2013. I was disappointed at the number of exceedingly long breaks given after each module. I would have preferred less break time and more content to the course. Having never taken a SharePoint course with another provider, I don't know if this is the norm with all providers of just this one in particular.

Reviewed byNatalie H.2014

I ranked the "Use of Technology" low because for Users who were remote the VM's that were setup were a little wonky. Could be very slow at times and then sometimes they needed to be refreshed to work properly with the lab. In some instances we couldn't follow along as replication would not occur fast enough and we would have our lab cut short (for us remote Users).

Reviewed byRichard .2014

The instructor was good at remembering to acknowledge the online students even though he was facing a classroom of students also.

Reviewed byAnn H.2014

Insructor was not so good with the live examples. Also the handouts was not so useful

Reviewed byferas a.2013

The trainer was excellent, very knowledgeable and had a lot of valuable experience to share. The problem was that there were way too many workshops that took too long and interfered with getting the maximum benefit from the instructor and the course.

Reviewed byJennifer W.2013

This was quite informative. It was a great opportunity to have ‘real life’ discussions with certified PMs. The instructor had excellent examples and was able to share his PM experiences with us with concrete examples. In addition, this was a great opportunity to network with private sector/public sector PMs and develop a better appreciation of PM on both sides of the fence. Cheers, CL

Reviewed bychristian l.2013

no

Reviewed byzinabu b.2013

I did not like the video format

Reviewed byAndrea J.2013

As a remote attendee, it appeared the instructor paid attention to the "Attendee" and "Chat" windows only a few times throughout the day, so I was not confident that he would see if I sent a message or raised my hand during the course.

Reviewed byPatrick K.2013

The chairs were not very comfortable and the material contained spelling and grammatical error (a few but still)as well as repetition of words.

Reviewed byAmelia S.2013

Was a bit slow the last 1/2 day. Of course, for some, this was the last of a 4 day course (not just 2 days).

Reviewed byPaul S.2013

I really enjoyed the course and I learned a lot. The pace was excellent.

Reviewed byDiana K.2013

good!

Reviewed byDavid .2013

The room was excellent on its own - less distraction and no noise around you. There was no direction to the room when I walked in and therefore was not sure if I was heading in the right direction. We were not provided with the direction that there was coffee and fridge on the 3rd floor, and the bathroom floor was dirty.

Reviewed byShein S.2012

This course was great, very informative, had Lionel as instructor and he was also very good.

Reviewed byRobin T.2012

Instructor was eager to assist but lacked subject matter expertise. Course time management was very poor. Content provided could have been delivered effectively in a one day course.

Reviewed byInta N.2012

Good Course, good trainer. All questions addressed equally and in a timely professional manner.

Reviewed byJoe L.2011

The course content was interesting; however, the instructor didn't have enough knowledge about Microsoft Sharepoint 2010 Development and wasn't able to answer questions without google search. In the future CTE needs to make sure the instructors have real on-hands experience and are highly trained in the technologies they are supposed be teaching.

Reviewed byHeliana P.2011

This course currently does not have any dates scheduled. Please call 1-877-313-8881 to enquire about future dates or scheduling a private, in house course for your team.