Formation C#
Type Fundamentals
Create a Class.
Define Fields, Properties, and Methods
Define Static Members
Add a Constructor
Initialize Properties at Construction
Use const and readonly
Reuse Code in Multiple Constructors
Derive from a Class
Call a Base Class Constructor
Override a Base Class’s Method or Property
Create an Interface
Implement Interfaces
Create a Struct
Create an Anonymous Type
Prevent Instantiation with an Abstract Base Class
Interface or Abstract Base Class? Decide Between Float, Double, and Decimal Use Enormous Integers (BigInteger) Declare an Enumeration
Creating Versatile Types
Format a Type with ToString()
Make Types Equatable
Make Types Hashable with GetHashCode()
Make Types Sortable
Give Types an Index
Notify Clients when Changes Happen
Overload Appropriate Operators
Convert One Type to Another
Prevent Inheritance
Allow Value Type to Be Null
General Coding
Declare Variables
Defer Type Checking to Runtime (Dynamic Types)
Use Dynamic Typing to Simplify COM Interop
Declare Arrays
Create Multidimensional Arrays
Alias a Namespace
Use the Conditional Operator (?:)
Use the Null-Coalescing Operator (??)
Add Methods to Existing Types with Extension Methods
Call Methods with Default Parameters
Call Methods with Named Parameters
Defer Evaluation of a Value Until Referenced
Enforce Code Contracts
Exceptions
Throw an Exception
Catch an Exception
Catch Multiple Exceptions
Rethrow an Exception
(Almost) Guarantee Execution with finally
Get Useful Information from an Exception
Create Your Own Exception Class
Catch Unhandled Exceptions
Usage Guidelines
Generics
Create a Generic List
Create a Generic Method
Create a Generic Interface
Create a Generic Class
Create a Generic Delegate
Use Multiple Generic Types
Windows Forms
Create Modal and Modeless Forms
Add a Menu Bar
Disable Menu Items Dynamically
Add a Status Bar
Add a Toolbar
Create a Split Window Interface
Inherit a Form
Create a User Control
Use a Timer
Use Application and User Configuration Values
Use ListView Efficiently in Virtual Mode
Take Advantage of Horizontal Wheel Tilt
Cut and PasteAutomatically Ensure You Reset the Wait Cursor
Constrain the Generic Type
LINQ
Query an Object Collection
Order the Results
Filter a Collection
Get a Collection of a Portion of Objects (Projection)
Perform a Join
Query the Entity Framework
WCF
What is SOA
SOAP
WSDL
Service Contracts
Data Contracts
Message Contracts
Bindings
Clients
Workflow Services
Formation C#
Module 1: Getting Started
This module presents the concepts that are central to the Microsoft .NET Framework and platform, and the Microsoft Visual Studio .NET integrated development environment (IDE); describes how to work in the development environment; and explains how to use Visual Studio .NET to create and build applications based on Microsoft .NET.
Lessons
- Introduction to .NET and the .NET Framework
- Exploring Visual Studio .NET
- Creating a Windows Application Project
Module 2: Understanding C# Language Fundamentals
This module explains the syntax and structure of the C# programming language. These topics are essential for students to understand in order to be successful in the remainder of the course; however, it is likely that most students will come into the class with some experience applying these concepts in other languages.
Lessons
- Understanding the Fundamentals of a C# Program
- Using C# Predefined Types
- Writing Expressions
- Creating Conditional Statements
- Creating Iteration Statements
Lab : Writing a Savings Account Calculator
- Write a Savings Calculator
- Extending the Savings Calculator
Module 3: Creating Objects in C#
This module introduces the fundamentals of object-oriented programming, including the concepts of objects, classes, and methods.
Lessons
- Defining a Class
- Declaring Methods
- Using Constructors
- Using Static Class Members
Lab : Creating Classes in C#
- Creating the Bank Account Objects
Module 4: Implementing Object-Oriented Programming Techniques in C#
This module introduces the fundamentals of object-oriented programming, including the concepts of objects, classes, and methods.
Lessons
- Designing Objects
- Using Inheritance
- Using Polymorphism
Lab : Creating Classes in C#
- Creating the Bank Account Objects
Module 5: Programming with C#
This module introduces various data structures, including arrays (the System.Array class) and collections (classes in the System.Collections namespace), and explains when to use each of these data structures in an application. The module also introduces interfaces, describes the concepts and syntax of exception handling, and explains delegates and their use in event handling.
Lessons
- Using Arrays
- Using Collections
- Using Interfaces
- Using Exception Handling
- Using Delegates and Events
Lab : Using Arrays
- Sorting Numbers in an Array
Lab : Using Indexers and Interfaces
- Writing the Check Pick-up Application
- Using Interfaces
Lab : Using Delegates and Events
- Working with Events and Delegates
Module 6: Building .NET-based Applications with C#
This module presents the Microsoft .NET Framework class library, the Object Browser, and methods that are inherited from the System.Object class. This module also explains how to format strings and numbers and how to use streams and files.
Lessons
- Examining the .NET Framework Class Library
- Overriding Methods from System.Object
- Formatting Strings and Numbers
- Using Streams and Files
Lab : Using Streams
- Converting a Binary File to a Text File
Module 7: Using ADO.NET to Access Data
This module explains how to use Microsoft ADO.NET and the objects in the System.Data namespace to access data in a database. It describes how to create an application based on Microsoft Windows that uses ADO.NET. This module also describes how to use that application to connect to a database, create a query, and use a DataSet object to manage the data, bind data to controls, and insert, update, and delete records in a database.
Lessons
- ADO.NET Architecture
- Creating an Application That Uses ADO.NET to Access Data
- Changing Database Records
Lab : Creating a Data Access Application with ADO.NET
- Creating a Simple Database Table Viewer
- Writing a Simple Database Table Viewer
- (If time permits): Creating a Simple Database Table Viewer
Lab : Creating a Windows Application That Uses ADO.NET
- Creating a Windows Application That Uses ADO.NET
- (If time permits): Writing an ADO.NET Application with Windows Forms
Module 8: Creating Windows-based Applications
This module describes how to create menus, common and custom dialog boxes, status bars, and toolbars to enhance the usability of an application based on Microsoft Windows. The purpose of this module is to allow the students to apply their newly acquired C# language skills and develop useful Windows-based applications.
Lessons
- Creating the Main Menu
- Creating and Using Common Dialog Boxes
- Creating and Using Custom Dialog Boxes
- Creating and Using Toolbars
- Creating the Status Bar
- Creating and Using Combo Boxes
Lab : Building Windows Applications
- Adding Common Dialog Boxes to an Application
- Creating and Using Custom Dialog Boxes
- Creating a Status Bar
- (If Time Permits): Using ComboBox Controls
Module 9: Using XML Web Services in a C# Program
The module introduces the System.Web.Services namespace and the process of building and consuming XML Web services in a C# application.
Lessons
- Consuming an XML Web Service
- Building an XML Web Service
Lab : Using XML Web Services
- Writing the Office Building Estimation Application
Module 10: Creating a Web Application with Web Forms
In this module, students learn that in Microsoft Visual Studio .NET, you can use Web Forms to create programmable Web pages. This module introduces the System.Web.UI namespace and describes how to create a Web application with a Web Form. Students learn how to add controls to a Web Form and then use the Web Form to submit data and respond to events. The module also covers Microsoft ASP.NET state management, security, and configuration settings.
Lessons
- Creating a Web Forms Application
- Accessing Data by Using a Web Forms Application
- Configuring ASP.NET Application Settings
Lab : Developing an ASP.NET Web Application
- Completing the User Authentication Validation Code
- Completing the Code for the Master.aspx Form
- Testing the Application
Module 11: Application Settings and Deployment
This module introduces the procedures that are involved in deploying a C# application by using Microsoft Visual Studio .NET. It explains how to deploy both Web-based applications and applications that are based on Microsoft Windows. It also describes how to store user preferences and configure application settings.
Lessons
- Working with Application Settings
- Deploying Applications
Lab : Deploying an Application
- Adding a Setup Project to an Existing Application
- Installing and Testing the Setup Application
Lab : Working with Application Settings
- Adding the UserPreferences Class
- Adding User Preferences to the Form Load Event
- Adding User Preferences to the loadItem_Click Event
- Declaring an Instance of the UserPreferences Class in the Options Form
- Setting the Checkbox Controls to the Values Contained in the Registry
- Save the Checkbox Controls Values to the Registry
- Testing the Zoo Information Application
Module 12: Exploring Future Learning
This module provides an opportunity for students to explore some of the more advanced capabilities of C#, to practice the knowledge and skills that they acquired during the course, and discuss their questions as a group.
Lessons
- Exploring Additional Features of C#
Plus d’infos sur Formation C#