Course 10266A: Programming in C# with Microsoft® Visual Studio® 2010
20 July 2010
About this course
Audience profileThe course focuses on C# program structure, language syntax, and implementation detailswith .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.At course completionThis 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.After completing this course, students will be able to:
- Explain the purpose of the .NET Framework, and understand how to use C# and Visual Studio 2010 to build .NET Framework applications.
- Understand the syntax of basic C# programming constructs.
- Create and call methods in a C# application.
- Catch, handle and throw exceptions.
- Perform basic file IO operations in a C# application.
- Create and use new types (enumerations, classes, and structures), and understand the differences between reference types and value types.
- Control the visibility and lifetime of members in a type.
- Use inheritance to create new reference types.
- Manage the lifetime of objects and control the use of resources.
- Define properties and indexers to encapsulate data, and define operators for this data.
- Decouple an operation from the method that implements an operation, and use these decoupled operations to handle asynchronous events.
- Use collections to aggregate data, and use Generics to implement type-safe collection classes, structures, interfaces, and methods.
- Implement custom collection classes that support enumeration.
- Query in-memory data by using LINQ.
- Integrate code written by using a dynamic language such as Ruby and Python, or technologies such as COM, into a C# application
- Course details
Course OutlineModule 1: Introducing C# and the .NET FrameworkThis module explains the .NET Framework, and using C# and Visual Studio 2010 for building .NET Framework applications.Lessons
Module 2: Using C# Programming ConstructsThis module explains the syntax of basic C# programming constructs.LessonsAfter completing this module, students will be able to:
- Introduction to the .NET Framework
- Creating Projects Within Visual Studio 2010
- Writing a C# Application
- Building a Graphical Application
- Documenting an Application
- Running and Debugging Applications by Using Visual Studio 2010
- Explain the purpose of the .NET Framework.
- Create Microsoft Visual C# projects by using Visual Studio 2010.
- Explain the structure of a C# application.
- Use the 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 3: Declaring and Calling MethodsThis module explains how to create and call methods.LessonsAfter completing this module, students will be able to:
- Declaring Variables and Assigning Values
- Using Expressions and Operators
- Creating and Using Arrays
- Using Decision Statements
- Using Iteration Statements
- Declare variables and assign values.
- Create expressions by using operators.
- Create and use arrays.
- Use decision statements.
- Use iteration statements.
Module 4: Handling ExceptionsThis module explains how to catch exceptions and handle them. Students will also learn how to throw exceptions.LessonsAfter completing this module, students will be able to:
- Defining and Invoking Methods
- Specifying Optional Parameters and Output Parameters
- Describe how to declare and call methods
- Define and call methods that take optional parameters and output parameters
Module 5: Reading and Writing FilesThis module explains how to perform basic file I/O operations in a C# application.LessonsAfter completing this module, students will be able to:
- Handling Exceptions
- Raising Exceptions
- Describe how to catch and handle exceptions
- Describe how to create and raise exceptions
Module 6: Creating New TypesThis module explains how to create and use new types (enumerations, classes, and structures)LessonsAfter completing this module, students will be able to:
- Accessing the File System
- Reading and Writing Files by Using Streams
- 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.
Module 7: Encapsulating Data and MethodsThis module explains how to control the visibility and lifetime of members in a type.LessonsAfter completing this module, students will be able to:
- Creating and Using Enumerations
- Creating and Using Classes
- Creating and Using Structs
- Comparing References to Values
- 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 8: Inheriting From Classes and Implementing InterfacesThis module explains how to use inheritance to create new reference typesLessonsAfter completing this module, students will be able to:
- Controlling Visibility of Type Members
- Sharing Methods and Data
- Describe how to control the visibility of type members.
- Describe how to share methods and data.
Module 9: Managing the Lifetime of Objects and Controlling ResourcesAfter completing this module, students will be able to:
- Using Inheritance to Define New Reference Types
- Defining and Implementing Interfaces
- Defining Abstract Classes
This module explains how to manage the lifetime of objects and control the use of resources.Lessons
- Use inheritance to define new reference types.
- Define and implement interfaces.
- Define abstract classes.
Module 10: Encapsulating Data and Defining Overloaded OperatorsAfter completing this module, students will be able to:
- Introduction to Garbage Collection
- Managing Resources
This module explains how to create properties and indexers to encapsulate data, and how to define operators for this data.Lessons
- Describe how garbage collection works in the .NET Framework.
- Manage resources effectively in an application.
Module 11: Decoupling Methods and Handling EventsThis module explains how to decouple an operation from the method that implements an operation, and how to use these decoupled methods to handle asynchronous events.LessonsAfter completing this module, students will be able to:
- Creating and Using Properties
- Creating and Using Indexers
- Overloading Operators
- Explain how properties work and use them to encapsulate data.
- Describe how to use indexers to access data through an array-like syntax.
- Describe how to use operator overloading to define operators for your own types.
Module 12: Using Collections and Building Generic TypesThis module introduces collections, and describes how to use Generics to implement type-safe collection classes, structures, interfaces, and methods.LessonsAfter completing this module, students will be able to:
- Declaring and Using Delegates
- Using Lambda Expressions
- Handling Events
- 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 13: Building and Enumerating Custom Collection ClassesAfter completing this module, students will be able to:
- Using Collections
- Creating and Using Generic Types
- Defining Generic Interfaces and Understanding Variance
- Using Generic Methods and Delegates
This module explains how to implement custom collection classes that support enumeration.Lessons
- 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 14: Using LINQ to Query DataThis module explains how to query in-memory data by using LINQ.LessonsAfter completing this module, students will be able to:
- Implementing a Custom Collection Class
- Adding an Enumerator to a Custom Collection Class
- Implement a custom collection class.
- Define an enumerator for a custom collection class.
Module 15: Integrating Visual C# Code with Dynamic Languages and COM ComponentsThis module explains how to integrate code written by using a dynamic language such as Ruby and Python, and technologies such as COM, into a C# applicationLessonsAfter completing this module, students will be able to:
- Using the LINQ Extension Methods and Query Operators
- Building Dynamic LINQ Queries and Expressions
- Describe how to use the LINQ extension methods and query operators.
- Describe how to build dynamic LINQ queries and expressions.
After completing this module, students will be able to:
- Integrating C# Code with Ruby and Python
- Accessing COM Components from C#
- Integrate Ruby and Python code into a Visual C# application.
- Invoke COM components and services from a C# application.
Before attending this course, students must have:
- At least 12 months experience working with an Object Oriented language
- Have C++ or Java knowledge:
- Creating Classes
- Inheritance and Abstraction
- Knowledge of the Visual Studio IDE.
Looking for training resources, events and advice from peers? Join the Microsoft Training and Certification Community.
Preparing for an exam now? Find your Microsoft Certification Study Group.
Talk to us on these social networks: