C#
=====
——
* Course Id : PROG-CSHP
* Duration : 40 Hours
Overview
—–
* C# is a object oriented programming language that is type safe and robust
* It enables developers to build variety of secure and robust applications to execute on the .NET framework
* Developers can create Windows client applications, XML web services, distributed components, client – server applications and database applications
* C# supports encapsulation, inheritance, polymorphism
* C# supports pointers and unsafe code for memory access
* C# supports the interoperability feature
Pre-Requisites
—–
* Basic understanding of C or C++ programming
Training Objectives
—–
* Develop correct, well-documented programs using the C# programming language
* Learn to develop object-oriented programs using C# classes and objects
* Learn to use Windows Forms and WPF to create GUI-based programs
Course Structure
—–
* We provide more focus on hands-on in our technical courses (typically 80% hands-on/20% theory)
* Students get the capability to apply the material they learn to real-world problems
Materials Provided
—–
* PDF of slides and hands-on exercises
* Access to instance with lab environment
Software Requirements
—–
* Any current internet browser
Hardware Requirements
—–
* Processor: 1.2 GHz
* RAM: 512 MB
* Disk space: 1 GB
* Network Connection with low latency (<250ms) to Internet
## Daywise Course Outline
—–
## Day 1
—–
* Unit 1 : Introduction to Object Orientation
* Unit 2 : Object Orientation in C#
* Unit 3 : Introduction to .NET Visual Studio & C#
## Day 2
—–
* Unit 4 : C# Syntax
* Unit 5 : C# Syntax Contd..
## Day 3
—–
* Unit 6 : Collections
* Unit 7 : Inheritance & Polymorphism
* Unit 8 : Interfaces
## Day 4
—–
* Unit 9 : Delegates and Lambdas
* Unit 10 : LINQ
* Unit 11 : Handling Exceptions
## Day 5
—–
* Unit 12 : Consuming Events
* Unit 13 : Producing Events
* Unit 14 : Garbage Collection
## Detailed Course Outline
—–
Unit 1 : Introduction to Object Orientation
—–
Unit 2 : OO and C Sharp
—–
Unit 3 : Introduction to .NET Visual Studio & C#
—–
* The .NET Framework
* The Common Language Runtime
* The Common Type System
* C# Features
* Introduction to namespaces and assemblies
* Get to know your way around Visual Studio
Unit 4 : C# Syntax
—–
* Procedures and statements
* Data types
* Declaring variables
* Assignments
* Conversion
* Arithmetic and other operators
* Flow of control constructs
* Passing parameters by value
* Passing parameters by reference
* Named and optional parameters
Unit 5 : C# Syntax Contd..
—–
* Type concepts
* Classes
* Reference types
* Fields, properties and methods
* Accessibility modifiers
* Object initialisation, Constructors and Constructor chaining
* Instance members
* Keyword ‘this’
* The ‘null’ reference
* const&readonly
* Enumerated types
* Arrays
Unit 6 : Collections
—–
* Generic Collections
* Iterating collections
* Indexers
Unit 7 : Inheritance & Polymorphism
—–
* Concept of inheritance
* Substitutability
* Extending a simple class
* ‘virtual’, ‘override’ and ‘sealed’ modifiers
* Polymorphism
* Abstract classes
* Upcasting and safe downcasting
Unit 8 : Interfaces
—–
* Polymorphism with interfaces
* Multiple interfaces
Unit 9 : Delegates and Lambdas
—–
* Delegates explained
* Working with delegates
* Creating your own delegate types
* The evolution of Lambdas from anonymous delegates
* Generic Delegates
* Using the framework-supplied generic delegates
Unit 10 : LINQ
—–
* The language features behind LINQ
* The LINQ API and query pattern
* Grouping and Joins
Unit 11 : Handling Exceptions
—–
* Errors vs. Exceptions
* The ‘try’, ‘catch’, ‘finally’ paradigm
* Using ‘throw’
* Creating your own exceptions
* ‘checked’ and ‘unchecked’ expressions.
Unit 12 : Consuming Events
—–
* Understanding events in .NET
* Writing event handlers
Unit 13 : Producing Events
—–
* The event conventions
* Raising custom events
Unit 14 : Garbage Collection
—–
* Garbage collection and its impact
* Finalizers
* The ‘Dispose’ pattern
* IDisposable
* The ‘using’ statement
