Visual Studio

Programming with C Sharp
(Microsoft Training Course: 2124) - 5 days - £2640 exc VAT

> Target Audience
The goal of this course is to provide students with the knowledge and skills needed to develop C# applications for the Microsoft .NET Platform. The course focuses on C# program structure, language syntax, and implementation details
> Course outline
  1. Overview of the Microsoft .NET Platform
  2. Overview of C#
  3. Using Value-Type Variables
  4. Statements and Exceptions
  5. Methods and Parameters
  6. Arrays
  7. Essentials of Object-Oriented Programming
  8. Using Reference-Type Variables
  9. Creating and Destroying Objects
  10. Inheritance in C#
  11. Aggregation, Namespaces, and Advanced Scope
  12. Operators and Events
  13. Properties and Indexers
  14. Attributes

Supplementary InformationThis course can be delivered in .Net 2003, .Net 2005, and in .Net 2008. For those candidates wanting an indepth look at the CLR foundation classes try course [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2956.aspx}2956]] or [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2957.aspx}2957]].
Module 1: Overview of the Microsoft .NET Platform
  • Introduction to the .NET Platform
  • Overview of the .NET Framework
  • Benefits of the .NET Framework
  • The .NET Framework Components
  • Languages in the .NET Framework
  • Describe the .NET Platform.
  • List the main elements of the .NET Platform.
  • Explain the language support in the .NET Framework.
  • Describe the .NET Framework and its components.
Module 2: Overview of C#
  • Structure of a C# Program
  • Basic Input/Output Operations
  • Recommended Practices
  • Compiling, Running, and Debugging
  • Explain the structure of a simple C# program.
  • Use the Console class of the System namespace to perform basic input/output operations.
  • Handle exceptions in a C# program.
  • Generate Extensible Markup Language (XML) documentation for a C# application.
  • Compile and execute a C# program.
  • Use the debugger to trace program execution
Module 3: Using Value-Type Variables
  • Common Type System
  • Naming Variables
  • Using Built-in Data Types
  • Creating User-Defined Data Types
  • Converting Data Types
  • Describing the types of variables that you can use in C# applications.
  • Naming your variables according to standard C# naming conventions.
  • Declaring a variable by using built-in data types.
  • Assigning values to variables.
  • Converting existing variables from one data type to another.
  • Creating and using your own data types.
Module 4: Statements and Exceptions
  • Introduction to Statements
  • Using Selection Statements
  • Using Iteration Statements
  • Using Jump Statements
  • Handling Basic Exceptions
  • Raising Exceptions
  • Describe the different types of control statements.
  • Use jump statements.
  • Use selection statements.
  • Use iteration statements.
  • Handle and raise exceptions.
Module 5: Methods and Parameters
  • Using Methods
  • Using Parameters
  • Using Overloaded Methods
  • Create static methods that accept parameters and return values.
  • Pass parameters to methods in different ways.
  • Declare and use overloaded methods.
Module 6: Arrays
  • Overview of Arrays
  • Creating Arrays
  • Using Arrays
  • Create, initialise, and use arrays of varying rank.
  • Use command-line arguments in a C# program.
  • Describe the relationship between an array variable and an array instance.
  • Use arrays as parameters for methods.
  • Return arrays from methods
Module 7: Essentials of Object-Oriented Programming
  • Classes and Objects
  • Using Encapsulation
  • C# and Object Orientation
  • Defining Object-Oriented Systems
  • Define the terms object and class in the context of object-oriented programming.
  • Describe the three core aspects of an object: identity, state, and behaviour.
  • Describe abstraction and how it helps you to create reusable classes that are easy to maintain.
  • Use encapsulation to combine methods and data in a single class.
  • Explain the concepts of inheritance and polymorphism.
  • Create and use classes in C#.
Module 8: Using Reference-Type Variables
  • Using Reference-Type Variables
  • Using Common Reference Types
  • The Object Hierarchy
  • Namespaces in the .NET Framework
  • Data Conversions
  • Describe the important differences between reference types and value types.
  • Use common reference types such as string.
  • Explain how the object type works and become familiar with the methods it supplies.
  • Describe common namespaces in the .NET Framework.
  • Determine whether different types and objects are compatible.
  • Explicitly and implicitly convert data types between reference types.
  • Perform boxing and unboxing conversions between reference and value data.
Module 9: Creating and Destroying Objects
  • Using Constructors
  • Initialising Data
  • Objects and Memory
  • Using Destructors
  • Destroying Objects
  • Use constructors to initialise objects.
  • Create overloaded constructors that can accept varying parameters.
  • Describe the lifetime of an object and what happens when it is destroyed.
  • Create destructors and using Finalize methods.
Module 10: Inheritance in C#
  • Deriving Classes
  • Implementing Methods
  • Using Sealed Classes
  • Using Interfaces
  • Using Abstract Classes
  • Derive a new class from a base class and calling members and constructors of the base class from the derived class.
  • Declare methods as virtual and override or hiding them as required.
  • Seal a class so that it cannot be derived from.
  • Implement interfaces by using both the implicit and the explicit methods.
  • Describe the use of abstract classes and their implementation of interfaces.
Module 11: Aggregation, Namespaces, and Advanced Scope
  • Using Internal Classes, Methods, and Data
  • Using Aggregation
  • Using Namespaces
  • Using Modules and Assemblies
  • Use internal access to allow classes to have privileged access to each other.
  • Use aggregation to implement powerful patterns such as Factories.
  • Use namespaces to organize classes.
  • Create simple modules and assemblies.
  • TOP <vb6e.html>
Module 12: Operators and Events
  • Introduction to Operators
  • Operator Overloading
  • Creating and Using Delegates
  • Defining and Using Events
  • Define operators to make a class or struct easier to use.
  • Use delegates to decouple a method call from a method implementation.
  • Add event specifications to a class to allow subscribing classes to be notified of changes in object state.
Module 13: Properties and Indexers
  • Using Properties
  • Using Indexers
  • Create properties to encapsulate data within a class.
  • Define indexers to gain access to classes by using array-like notation.
Module 14: Attributes
  • Overview of Attributes
  • Defining Custom Attributes
  • Retrieving Attribute Values
  • Use common predefined attributes.
  • Create simple custom attributes.
  • Query attribute information at run time.
> Pre-Requisites
Before attending this course, students must have the following prerequisites:
  • Experience with programming in C, C++, Visual Basic, Java, or another programming language.
  • Familiarity with Microsoft's .NET strategy.
  • Familiarity with the .NET Framework
> Purpose
At the end of the course, students will be able to list the major elements of the .NET Framework and explain how C# fits into the .NET Platform, analyse the basic structure of a C# application and be able to document, debug, compile, and run a simple application, create and assign values to variables, use common statements to implement flow control, looping, and exception handling, create methods (functions and subroutines) that can return values and take parameters, create, initialise, and use arrays, explain the basic concepts and terminology of object-oriented programming, use common objects and references types, create, initialise, and destroy objects in a C# application, build new C# classes from existing classes, create self-contained classes and frameworks in a C# application, define operators, use delegates, and add event specifications, implement properties and indexers, use predefined and custom attributes
> Supplementary Information
This course can be delivered in .Net 2003, .Net 2005, and in .Net 2008. For those candidates wanting an indepth look at the CLR foundation classes try course [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2956.aspx}2956]] or [[{http://www.F1Comp.Co.UK/computer_training/Microsoft_Training_Courses/Visual-Studio-2005/2957.aspx}2957]].