SlideShare a Scribd company logo
MS 10266 Programming in C# with Microsoft Visual Studio 2010

                                                                          Course Summary
Description

The course focuses on C# program structure, language syntax, and implementation details with .NET Framework
4.0. This course describes the new enhancements in the C# 4.0 language by using Visual Studio 2010.

In this course, lower-intermediate level programmers gain the knowledge and skills they need to develop C#
applications for the Microsoft .NET Framework 4.0. The course highlights the structure of C# 4.0 programs,
language syntax, and implementation details. This course is not mapped to any exam.

Objectives
At the end of this course, students will be able to:

      •      Explain the purpose of the .NET Framework,                                                        •      Manage the lifetime of objects and control
             and understand how to use C# and Visual                                                                  the use of resources.
             Studio 2010 to build .NET Framework                                                               •      Define properties and indexers to
             applications.                                                                                            encapsulate data, and define operators for
      •      Understand the syntax of basic C#                                                                        this data.
             programming constructs.                                                                           •      Decouple an operation from the method that
      •      Create and call methods in a C#                                                                          implements an operation, and use these
             application.                                                                                             decoupled operations to handle
      •      Catch, handle and throw exceptions.                                                                      asynchronous events.
      •      Perform basic file IO operations in a C#                                                          •      Use collections to aggregate data, and use
             application.                                                                                             Generics to implement type-safe collection
      •      Create and use new types (enumerations,                                                                  classes, structures, interfaces, and methods.
             classes, and structures), and understand the                                                      •      Implement custom collection classes that
             differences between reference types and                                                                  support enumeration.
             value types.                                                                                      •      Query in-memory data by using LINQ.
      •      Control the visibility and lifetime of members                                                    •      Integrate code written by using a dynamic
             in a type.                                                                                               language such as Ruby and Python, or
      •      Use inheritance to create new reference                                                                  technologies such as COM, into a C#
             types.                                                                                                   application

Topics

      •      Introducing C# and the .NET Framework                                                             •      Managing the Lifetime of Objects and
      •      Using C# Programming Constructs                                                                          Controlling Resources
      •      Declaring and Calling Methods                                                                     •      Encapsulating Data and Defining
                                                                                                                      Overloaded Operators
      •      Handling Exceptions
                                                                                                               •      Decoupling Methods and Handling Events
      •      Reading and Writing Files
                                                                                                               •      Using Collections and Building Generic
      •      Creating New
                                                                                                                      Types
      •      Encapsulating Data and Methods
                                                                                                               •      Building and Enumerating Custom
      •      Inheriting From Classes and Implementing                                                                 Collection Classes
             Interfaces
 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
MOC 10266 Programming in C# with Microsoft Visual Studio 2010

                                                                 Course Summary (cont’d)

      •      Using LINQ to Query Data
      •      Integrating Visual C# Code with Dynamic Languages and COM Components

Audience

This course is intended for experienced developers who already have programming experience in C, C++, Visual
Basic, or Java and understand the concepts of object-oriented programming.
This course is not designed for new programmers; it is targeted at professional developers with at least 12 months
experience of programming in an object-oriented environment.

Prerequisites

Before attending this course, students must have:
    • At least 12 months experience working with an Object Oriented language
    • Have C++ or Java knowledge:
        o Creating Classes
        o Inheritance and Abstraction
        o Polymorphism
        o Interfaces
        o Exceptions
    • Knowledge of the Visual Studio IDE.

Duration

Five days




 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
MOC 10266 Programming in C# with Microsoft Visual Studio 2010
                                                                             Course Outline

I.Introducing C# and the .NET Framework                                                                        •      Multiplying Matrices
This module explains the .NET Framework, and
using C# and Visual Studio 2010 for building .NET                                                       After completing this module, students will be
Framework applications.                                                                                 able to:
     A. Introduction to the .NET Framework                                                                  • Declare variables and assign values.
     B. Creating Projects within Visual Studio 2010                                                         • Create expressions by using operators.
     C. Writing a C# Application                                                                            • Create and use arrays.
     D. Building a Graphical Application                                                                    • Use decision statements.
     E. Documenting an Application                                                                          • Use iteration statements.
     F. Running and Debugging Applications by
         Using Visual Studio 2010                                                                       III.Declaring and Calling Methods
                                                                                                        This module explains how to create and call
Lab: Introducing C# and the .NET Framework                                                              methods.
   • Building a Simple Console Application                                                                   A. Defining and Invoking Methods
   • Building a WPF Application                                                                              B. Specifying Optional Parameters and Output
   • Verifying the Application                                                                                   Parameters
   • Generating Documentation for an
        Application                                                                                     Lab: Declaring and Calling Methods
                                                                                                           • Calculating the Greatest Common Divisor of
After completing this module, students will be                                                                 Two Integers by Using Euclid's Algorithm
able to:                                                                                                   • Calculating the GCD of Three, Four, or Five
    • Explain the purpose of the .NET Framework.                                                               Integers
    • Create Microsoft Visual C# projects by using                                                         • Comparing the Efficiency of Two Algorithms
         Visual Studio 2010.                                                                               • Displaying Results Graphically
    • Explain the structure of a C# application.                                                           • Solving Simultaneous Equations (optional)
    • Use the WPF Application template to build a
         simple graphical application.                                                                  After completing this module, students will be
    • Use XML comments to document an                                                                   able to:
         application.                                                                                       • Describe how to declare and call methods
    • Use the debugger to step through a                                                                    • Define and call methods that take optional
         program.                                                                                                parameters and output parameters

II.Using C# Programming Constructs                                                                      IV.Handling Exceptions
This module explains the syntax of basic C#                                                             This module explains how to catch exceptions and
programming constructs.                                                                                 handle them. Students will also learn how to throw
    A. Declaring Variables and Assigning Values                                                         exceptions.
    B. Using Expressions and Operators                                                                      A. Handling Exceptions
    C. Creating and Using Arrays                                                                            B. Raising Exceptions
    D. Using Decision Statements
    E. Using Iteration Statements                                                                       Lab: Handling Exceptions
                                                                                                           • Making a Method Fail-Safe
Lab: Using C# Programming Constructs                                                                       • Detecting an Exceptional Condition
   • Calculating Square Roots with Improved                                                                • Checking for Numeric Overflow
       Accuracy
   • Converting Integer Numeric Data to Binary
 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
MOC 10266 Programming in C# with Microsoft Visual Studio 2010
                                                                    Course Outline (cont’d)

After completing this module, students will be                                                                 •      Describe how to create and use structures.
able to:                                                                                                       •      Explain the differences between reference
    • Describe how to catch and handle                                                                                and value types.
         exceptions
    • Describe how to create and raise exceptions                                                       VII.Encapsulating Data and Methods
                                                                                                        This module explains how to control the visibility and
V.Reading and Writing Files                                                                             lifetime of members in a type.
This module explains how to perform basic file I/O                                                            A. Controlling Visibility of Type Members
operations in a C# application.                                                                               B. Sharing Methods and Data
    A. Accessing the File System
    B. Reading and Writing Files by Using Streams                                                       Lab: Encapsulating Data and Methods
                                                                                                           • Hiding Data Members
Lab: Reading and Writing Files                                                                             • Using Static Members to Share Data
   • Building a Simple Editor                                                                              • Implementing an Extension Method
   • Making the Editor XML Aware
                                                                                                        After completing this module, students will be
After completing this module, students will be                                                          able to:
able to:                                                                                                    • Describe how to control the visibility of type
    • Describe how to access the file system by                                                                  members.
         using the classes that the .NET Framework                                                          • Describe how to share methods and data.
         provides.
    • Describe how to read and write files by                                                           VIII.Inheriting From Classes and Implementing
         using streams.                                                                                 Interfaces
                                                                                                        This module explains how to use inheritance to
VI.Creating New Types                                                                                   create new reference types
This module explains how to create and use new                                                               A. Using Inheritance to Define New Reference
types (enumerations, classes, and structures)                                                                    Types
    A. Creating and Using Enumerations                                                                       B. Defining and Implementing Interfaces
    B. Creating and Using Classes                                                                            C. Defining Abstract Classes
    C. Creating and Using Structs
    D. Comparing References to Values                                                                   Lab: Inheriting From Classes and Implementing
                                                                                                        Interfaces
Lab: Creating New Types                                                                                     • Defining an Interface
   • Using Enumerations to Specify Domains                                                                  • Implementing an Interface
   • Using a Struct to Model a Simple Type                                                                  • Creating an Abstract Class
   • Using a Class to Model a More Complex
       Type                                                                                             After completing this module, students will be
   • Using a Nullable Struct                                                                            able to:
                                                                                                            • Use inheritance to define new reference
After completing this module, students will be                                                                   types.
able to:                                                                                                    • Define and implement interfaces.
    • Describe how to create and use                                                                        • Define abstract classes.
         enumerations.
    • Describe how to create and use classes.
 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
MOC 10266 Programming in C# with Microsoft Visual Studio 2010
                                                                    Course Outline (cont’d)

IX.Managing the Lifetime of Objects and Controlling                                                            •      Testing the Operators for the Matrix Type
Resources
This module explains how to manage the lifetime of                                                      After completing this module, students will be
objects and control the use of resources.                                                               able to:
    A. Introduction to Garbage Collection                                                                   • Explain how properties work and use them
    B. Managing Resources                                                                                        to encapsulate data.
                                                                                                            • Describe how to use indexers to
Lab: Managing the Lifetime of Objects and                                                                        access data through an array-like syntax.
Controlling Resources                                                                                       • Describe how to use operator overloading to
   • Implementing the IDisposable Interface                                                                      define operators for your own types.
   • Managing Resources Used By an Object
                                                                                                        XI.Decoupling Methods and Handling Events
After completing this module, students will be                                                          This module explains how to decouple an operation
able to:                                                                                                from the method that implements an operation, and
    • Describe how garbage collection works in                                                          how to use these decoupled methods to handle
         the .NET Framework.                                                                            asynchronous events.
    • Manage resources effectively in an                                                                    A. Declaring and Using Delegates
         application.                                                                                       B. Using Lambda Expressions
                                                                                                            C. Handling Events
X.Encapsulating Data and Defining Overloaded
Operators                                                                                               Lab: Decoupling Methods and Handling Events
This module explains how to create properties and                                                          • Raising and Handling Events
indexers to encapsulate data, and how to define                                                            • Using Lambda Expressions to Specify Code
operators for this data.
    A. Creating and Using Properties                                                                    After completing this module, students will be
    B. Creating and Using Indexers                                                                      able to:
    C. Overloading Operators                                                                                • Describe the purpose of delegates, and
                                                                                                                 explain how to use a delegate to decouple
Lab: Creating and Using Properties                                                                               an operation from the implementing method.
   • Defining Properties in an Interface                                                                    • Explain the purpose of lambda expressions,
   • Implementing Properties in a Class                                                                          and describe how to use a lambda
   • Using Properties Exposed By a Class                                                                         expression to define an anonymous
                                                                                                                 method.
Lab: Creating and Using Indexers                                                                            • Explain the purpose of events, and describe
   • Implementing an Indexer to Access Bits in a                                                                 how to use events to report that something
       Control Register                                                                                          significant has happened in a type that other
   • Using an Indexer Exposed by a Class                                                                         parts of the application need to be aware of.

                                                                                                        XII.Using Collections and Building Generic Types
Lab: Overloading Operators                                                                              This module introduces collections, and describes
   • Defining the Matrix and                                                                            how to use Generics to implement type-safe
       MatrixNotCompatible Types                                                                        collection classes, structures, interfaces, and
   • Implementing Operators for the Matrix Type                                                         methods.
 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
A. Using Collections
      B. Creating and Using Generic Types
            MOC 10266 Programming in C# with Microsoft Visual Studio 2010
                                                                           Course Outline (cont’d)

      C. Defining Generic Interfaces and                                                                       •      Define an enumerator for a custom
         Understanding Variance                                                                                       collection class.
      D. Using Generic Methods and Delegates
                                                                                                        XIV.Using LINQ to Query Data
Lab: Using Collections                                                                                  This module explains how to query in-memory data
   • Optimizing a Method by Caching Data                                                                by using LINQ.
                                                                                                            A. Using the LINQ Extension Methods and
Lab: Building Generic Types                                                                                     Query Operators
                                                                                                            B. Building Dynamic LINQ Queries and
   • Defining a Generic Interface
                                                                                                                Expressions
   • Implementing a Generic Interface
   • Implementing a Test Harness for the
       BinaryTree Project                                                                               Lab: Using LINQ to Query Data
   • Implementing a Generic Method                                                                         • Using the LINQ Query Operators
                                                                                                           • Building Dynamic LINQ Queries
After completing this module, students will be
able to:                                                                                                After completing this module, students will be
    • Use collection classes.                                                                           able to:
    • Define and use generic types.                                                                         • Describe how to use the LINQ extension
                                                                                                                 methods and query operators.
    • Define generic interfaces and explain the
         concepts of covariance and contravariance.                                                         • Describe how to build dynamic LINQ queries
                                                                                                                 and expressions.
    • Define and use generic methods and
         delegates.
                                                                                                        XV.Integrating Visual C# Code with Dynamic
                                                                                                        Languages and COM Components
XIII.Building and Enumerating Custom Collection
                                                                                                        This module explains how to integrate code written
Classes
                                                                                                        by using a dynamic language such as Ruby and
This module explains how to implement custom
                                                                                                        Python, and technologies such as COM, into a C#
collection classes that support enumeration.
                                                                                                        application
     A. Implementing a Custom Collection Class
                                                                                                            A. Integrating C# Code with Ruby and Python
     B. Adding an Enumerator to a Custom
                                                                                                            B. Accessing COM Components from C#
         Collection Class

                                                                                                        Lab: Integrating C# Code with Dynamic
Lab: Building and Enumerating Custom
                                                                                                        Languages and COM Components
Collection Classes
                                                                                                           • Integrating Code Written by Using a
    • Implementing the IList TItem Interface
                                                                                                                Dynamic Language into a C# Application
    • Implementing an Enumerator by Writing
                                                                                                           • Using a COM Component from Visual C#
        Code
                                                                                                                Application
    • Implementing an Enumerator by Using an
        Iterator
                                                                                                        After completing this module, students will be
                                                                                                        able to:
After completing this module, students will be
                                                                                                            • Integrate Ruby and Python code into a
able to:
                                                                                                                 Visual C# application.
    • Implement a custom collection class.

 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
•      Invoke COM components and services from
             a C# application.




 Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational
   purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically

10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC

More Related Content

DOC
6010 java programming version 6
PDF
ASE01.ppt
PPT
Sadcw 6e chapter7
PPT
Sadcw 6e chapter9
PPT
Sadcw 6e chapter6
PPT
Sadcw 6e chapter12
PPT
Sadcw 6e chapter5
PPT
Introduction To Web Design
6010 java programming version 6
ASE01.ppt
Sadcw 6e chapter7
Sadcw 6e chapter9
Sadcw 6e chapter6
Sadcw 6e chapter12
Sadcw 6e chapter5
Introduction To Web Design

Viewers also liked (20)

PPT
Sadcw 6e chapter1
PPT
Sadcw 6e chapter4
PPT
Sadcw 6e chapter3
PPT
Sadcw 6e chapter2
PPT
Csc153 chapter 05
 
KEY
Principles Of Web Design Workshop
PPT
Csc153 chapter 07
 
PPT
Sadcw 6e chapter8
PPT
Csc153 chapter 08
 
PPT
Csc253 chapter 09
 
PPT
Csc153 chapter 06
 
PPT
Csc153 chapter 04
 
PDF
Introduction to html 5
PPT
Csc153 chapter 03
 
PPT
Csc153 chapter 02
 
PPT
Csc153 chapter 01
 
PPT
07 si(systems analysis and design )
PPT
11 si(systems analysis and design )
PPT
System Analysis and Design
PPT
System Analysis and Design 6th edition chapter 14
Sadcw 6e chapter1
Sadcw 6e chapter4
Sadcw 6e chapter3
Sadcw 6e chapter2
Csc153 chapter 05
 
Principles Of Web Design Workshop
Csc153 chapter 07
 
Sadcw 6e chapter8
Csc153 chapter 08
 
Csc253 chapter 09
 
Csc153 chapter 06
 
Csc153 chapter 04
 
Introduction to html 5
Csc153 chapter 03
 
Csc153 chapter 02
 
Csc153 chapter 01
 
07 si(systems analysis and design )
11 si(systems analysis and design )
System Analysis and Design
System Analysis and Design 6th edition chapter 14
Ad

Similar to 10266 developing data access solutions with microsoft visual studio 2010 (20)

PDF
MS.NET Training
PPTX
Overview Of .Net 4.0 Sanjay Vyas
PPTX
Why do I Love C#?
PPTX
Hidden Facts of .NET Language Gems
PPTX
How To Code in C#
DOC
10265 developing data access solutions with microsoft visual studio 2010
PDF
Summer Training In Dotnet
PDF
Summer training in dotnet
PDF
Ebook c sharp_2008
PPT
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
PPTX
Web-Dev Portfolio
PPTX
Introduction to .NET with C# @ university of wayamba
PPT
Introduction to csharp
PPT
Introduction to csharp
PPT
Introduction to csharp
PPTX
PPTX
.Net Framework 2 fundamentals
PDF
1204csharp
PDF
Programming C 40 Building Windows Web And Ria Applications For The Net With C...
PDF
C# 10 in a Nutshell_ The Definitive Reference-O'Reilly Media (2022).pdf
MS.NET Training
Overview Of .Net 4.0 Sanjay Vyas
Why do I Love C#?
Hidden Facts of .NET Language Gems
How To Code in C#
10265 developing data access solutions with microsoft visual studio 2010
Summer Training In Dotnet
Summer training in dotnet
Ebook c sharp_2008
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
Web-Dev Portfolio
Introduction to .NET with C# @ university of wayamba
Introduction to csharp
Introduction to csharp
Introduction to csharp
.Net Framework 2 fundamentals
1204csharp
Programming C 40 Building Windows Web And Ria Applications For The Net With C...
C# 10 in a Nutshell_ The Definitive Reference-O'Reilly Media (2022).pdf
Ad

More from bestip (20)

DOC
Cipt1 implementing cisco unified communications ip telephony part 1
DOC
Cipt2 implementing cisco unified communications ip telephony part 2
DOC
6294 a planning and managing windows 7 desktop deployments and environments
PDF
Lab view daq signal conditioniing
PDF
Lab view instrument control
DOC
Lab view core 2 outline
DOC
Lab view core 1 outline
DOC
Deploying cisco asa firewall features
DOC
10264 developing web applications with microsoft visual studio 2010
DOC
7806 java 6 programming essentials using helios eclipse
DOC
Spf1v10 microsoft windows share point foundation 2010 - level 1
DOCX
Ms 5050
DOC
10232 designing and developing microsoft share point server 2010 applications
DOCX
Ceh certified ethical hacker
DOCX
Network+
DOCX
5178 implementing and maintaining audio visual conferencing and web conferenc...
DOCX
5177 implementing and maintaining instant messaging using microsoft office ...
DOCX
Security+
DOCX
BEST IP Training Schedule Winter and Spring 2011
DOC
6292 installing and configuring windows 7 client
Cipt1 implementing cisco unified communications ip telephony part 1
Cipt2 implementing cisco unified communications ip telephony part 2
6294 a planning and managing windows 7 desktop deployments and environments
Lab view daq signal conditioniing
Lab view instrument control
Lab view core 2 outline
Lab view core 1 outline
Deploying cisco asa firewall features
10264 developing web applications with microsoft visual studio 2010
7806 java 6 programming essentials using helios eclipse
Spf1v10 microsoft windows share point foundation 2010 - level 1
Ms 5050
10232 designing and developing microsoft share point server 2010 applications
Ceh certified ethical hacker
Network+
5178 implementing and maintaining audio visual conferencing and web conferenc...
5177 implementing and maintaining instant messaging using microsoft office ...
Security+
BEST IP Training Schedule Winter and Spring 2011
6292 installing and configuring windows 7 client

10266 developing data access solutions with microsoft visual studio 2010

  • 1. MS 10266 Programming in C# with Microsoft Visual Studio 2010 Course Summary Description The course focuses on C# program structure, language syntax, and implementation details with .NET Framework 4.0. This course describes the new enhancements in the C# 4.0 language by using Visual Studio 2010. In this course, lower-intermediate level programmers gain the knowledge and skills they need to develop C# applications for the Microsoft .NET Framework 4.0. The course highlights the structure of C# 4.0 programs, language syntax, and implementation details. This course is not mapped to any exam. Objectives At the end of this course, students will be able to: • Explain the purpose of the .NET Framework, • Manage the lifetime of objects and control and understand how to use C# and Visual the use of resources. Studio 2010 to build .NET Framework • Define properties and indexers to applications. encapsulate data, and define operators for • Understand the syntax of basic C# this data. programming constructs. • Decouple an operation from the method that • Create and call methods in a C# implements an operation, and use these application. decoupled operations to handle • Catch, handle and throw exceptions. asynchronous events. • Perform basic file IO operations in a C# • Use collections to aggregate data, and use application. Generics to implement type-safe collection • Create and use new types (enumerations, classes, structures, interfaces, and methods. classes, and structures), and understand the • Implement custom collection classes that differences between reference types and support enumeration. value types. • Query in-memory data by using LINQ. • Control the visibility and lifetime of members • Integrate code written by using a dynamic in a type. language such as Ruby and Python, or • Use inheritance to create new reference technologies such as COM, into a C# types. application Topics • Introducing C# and the .NET Framework • Managing the Lifetime of Objects and • Using C# Programming Constructs Controlling Resources • Declaring and Calling Methods • Encapsulating Data and Defining Overloaded Operators • Handling Exceptions • Decoupling Methods and Handling Events • Reading and Writing Files • Using Collections and Building Generic • Creating New Types • Encapsulating Data and Methods • Building and Enumerating Custom • Inheriting From Classes and Implementing Collection Classes Interfaces Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 2. MOC 10266 Programming in C# with Microsoft Visual Studio 2010 Course Summary (cont’d) • Using LINQ to Query Data • Integrating Visual C# Code with Dynamic Languages and COM Components Audience This course is intended for experienced developers who already have programming experience in C, C++, Visual Basic, or Java and understand the concepts of object-oriented programming. This course is not designed for new programmers; it is targeted at professional developers with at least 12 months experience of programming in an object-oriented environment. Prerequisites Before attending this course, students must have: • At least 12 months experience working with an Object Oriented language • Have C++ or Java knowledge: o Creating Classes o Inheritance and Abstraction o Polymorphism o Interfaces o Exceptions • Knowledge of the Visual Studio IDE. Duration Five days Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 3. MOC 10266 Programming in C# with Microsoft Visual Studio 2010 Course Outline I.Introducing C# and the .NET Framework • Multiplying Matrices This module explains the .NET Framework, and using C# and Visual Studio 2010 for building .NET After completing this module, students will be Framework applications. able to: A. Introduction to the .NET Framework • Declare variables and assign values. B. Creating Projects within Visual Studio 2010 • Create expressions by using operators. C. Writing a C# Application • Create and use arrays. D. Building a Graphical Application • Use decision statements. E. Documenting an Application • Use iteration statements. F. Running and Debugging Applications by Using Visual Studio 2010 III.Declaring and Calling Methods This module explains how to create and call Lab: Introducing C# and the .NET Framework methods. • Building a Simple Console Application A. Defining and Invoking Methods • Building a WPF Application B. Specifying Optional Parameters and Output • Verifying the Application Parameters • Generating Documentation for an Application Lab: Declaring and Calling Methods • Calculating the Greatest Common Divisor of After completing this module, students will be Two Integers by Using Euclid's Algorithm able to: • Calculating the GCD of Three, Four, or Five • Explain the purpose of the .NET Framework. Integers • Create Microsoft Visual C# projects by using • Comparing the Efficiency of Two Algorithms Visual Studio 2010. • Displaying Results Graphically • Explain the structure of a C# application. • Solving Simultaneous Equations (optional) • Use the WPF Application template to build a simple graphical application. After completing this module, students will be • Use XML comments to document an able to: application. • Describe how to declare and call methods • Use the debugger to step through a • Define and call methods that take optional program. parameters and output parameters II.Using C# Programming Constructs IV.Handling Exceptions This module explains the syntax of basic C# This module explains how to catch exceptions and programming constructs. handle them. Students will also learn how to throw A. Declaring Variables and Assigning Values exceptions. B. Using Expressions and Operators A. Handling Exceptions C. Creating and Using Arrays B. Raising Exceptions D. Using Decision Statements E. Using Iteration Statements Lab: Handling Exceptions • Making a Method Fail-Safe Lab: Using C# Programming Constructs • Detecting an Exceptional Condition • Calculating Square Roots with Improved • Checking for Numeric Overflow Accuracy • Converting Integer Numeric Data to Binary Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 4. MOC 10266 Programming in C# with Microsoft Visual Studio 2010 Course Outline (cont’d) After completing this module, students will be • Describe how to create and use structures. able to: • Explain the differences between reference • Describe how to catch and handle and value types. exceptions • Describe how to create and raise exceptions VII.Encapsulating Data and Methods This module explains how to control the visibility and V.Reading and Writing Files lifetime of members in a type. This module explains how to perform basic file I/O A. Controlling Visibility of Type Members operations in a C# application. B. Sharing Methods and Data A. Accessing the File System B. Reading and Writing Files by Using Streams Lab: Encapsulating Data and Methods • Hiding Data Members Lab: Reading and Writing Files • Using Static Members to Share Data • Building a Simple Editor • Implementing an Extension Method • Making the Editor XML Aware After completing this module, students will be After completing this module, students will be able to: able to: • Describe how to control the visibility of type • Describe how to access the file system by members. using the classes that the .NET Framework • Describe how to share methods and data. provides. • Describe how to read and write files by VIII.Inheriting From Classes and Implementing using streams. Interfaces This module explains how to use inheritance to VI.Creating New Types create new reference types This module explains how to create and use new A. Using Inheritance to Define New Reference types (enumerations, classes, and structures) Types A. Creating and Using Enumerations B. Defining and Implementing Interfaces B. Creating and Using Classes C. Defining Abstract Classes C. Creating and Using Structs D. Comparing References to Values Lab: Inheriting From Classes and Implementing Interfaces Lab: Creating New Types • Defining an Interface • Using Enumerations to Specify Domains • Implementing an Interface • Using a Struct to Model a Simple Type • Creating an Abstract Class • Using a Class to Model a More Complex Type After completing this module, students will be • Using a Nullable Struct able to: • Use inheritance to define new reference After completing this module, students will be types. able to: • Define and implement interfaces. • Describe how to create and use • Define abstract classes. enumerations. • Describe how to create and use classes. Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 5. MOC 10266 Programming in C# with Microsoft Visual Studio 2010 Course Outline (cont’d) IX.Managing the Lifetime of Objects and Controlling • Testing the Operators for the Matrix Type Resources This module explains how to manage the lifetime of After completing this module, students will be objects and control the use of resources. able to: A. Introduction to Garbage Collection • Explain how properties work and use them B. Managing Resources to encapsulate data. • Describe how to use indexers to Lab: Managing the Lifetime of Objects and access data through an array-like syntax. Controlling Resources • Describe how to use operator overloading to • Implementing the IDisposable Interface define operators for your own types. • Managing Resources Used By an Object XI.Decoupling Methods and Handling Events After completing this module, students will be This module explains how to decouple an operation able to: from the method that implements an operation, and • Describe how garbage collection works in how to use these decoupled methods to handle the .NET Framework. asynchronous events. • Manage resources effectively in an A. Declaring and Using Delegates application. B. Using Lambda Expressions C. Handling Events X.Encapsulating Data and Defining Overloaded Operators Lab: Decoupling Methods and Handling Events This module explains how to create properties and • Raising and Handling Events indexers to encapsulate data, and how to define • Using Lambda Expressions to Specify Code operators for this data. A. Creating and Using Properties After completing this module, students will be B. Creating and Using Indexers able to: C. Overloading Operators • Describe the purpose of delegates, and explain how to use a delegate to decouple Lab: Creating and Using Properties an operation from the implementing method. • Defining Properties in an Interface • Explain the purpose of lambda expressions, • Implementing Properties in a Class and describe how to use a lambda • Using Properties Exposed By a Class expression to define an anonymous method. Lab: Creating and Using Indexers • Explain the purpose of events, and describe • Implementing an Indexer to Access Bits in a how to use events to report that something Control Register significant has happened in a type that other • Using an Indexer Exposed by a Class parts of the application need to be aware of. XII.Using Collections and Building Generic Types Lab: Overloading Operators This module introduces collections, and describes • Defining the Matrix and how to use Generics to implement type-safe MatrixNotCompatible Types collection classes, structures, interfaces, and • Implementing Operators for the Matrix Type methods. Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 6. A. Using Collections B. Creating and Using Generic Types MOC 10266 Programming in C# with Microsoft Visual Studio 2010 Course Outline (cont’d) C. Defining Generic Interfaces and • Define an enumerator for a custom Understanding Variance collection class. D. Using Generic Methods and Delegates XIV.Using LINQ to Query Data Lab: Using Collections This module explains how to query in-memory data • Optimizing a Method by Caching Data by using LINQ. A. Using the LINQ Extension Methods and Lab: Building Generic Types Query Operators B. Building Dynamic LINQ Queries and • Defining a Generic Interface Expressions • Implementing a Generic Interface • Implementing a Test Harness for the BinaryTree Project Lab: Using LINQ to Query Data • Implementing a Generic Method • Using the LINQ Query Operators • Building Dynamic LINQ Queries After completing this module, students will be able to: After completing this module, students will be • Use collection classes. able to: • Define and use generic types. • Describe how to use the LINQ extension methods and query operators. • Define generic interfaces and explain the concepts of covariance and contravariance. • Describe how to build dynamic LINQ queries and expressions. • Define and use generic methods and delegates. XV.Integrating Visual C# Code with Dynamic Languages and COM Components XIII.Building and Enumerating Custom Collection This module explains how to integrate code written Classes by using a dynamic language such as Ruby and This module explains how to implement custom Python, and technologies such as COM, into a C# collection classes that support enumeration. application A. Implementing a Custom Collection Class A. Integrating C# Code with Ruby and Python B. Adding an Enumerator to a Custom B. Accessing COM Components from C# Collection Class Lab: Integrating C# Code with Dynamic Lab: Building and Enumerating Custom Languages and COM Components Collection Classes • Integrating Code Written by Using a • Implementing the IList TItem Interface Dynamic Language into a C# Application • Implementing an Enumerator by Writing • Using a COM Component from Visual C# Code Application • Implementing an Enumerator by Using an Iterator After completing this module, students will be able to: After completing this module, students will be • Integrate Ruby and Python code into a able to: Visual C# application. • Implement a custom collection class. Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC
  • 7. Invoke COM components and services from a C# application. Due to the nature of this material, this document refers to numerous hardware and software products by their trade names. References to other companies and their products are for informational purposes only, and all trademarks are the properties of their respective companies. It is not the intent of ProTech Professional Technical Services, Inc. to use any of these names generically 10266DEVELOPINGDATAACCESSSOLUTIONSWITHMICROSOFTVISUALSTUDIO2010-110311182359-PHPAPP01.DOC