C# Course Details

C#] (pronounced as see sharp) is a multi-paradigm programming language encompassing strong typing, imperative, declarative,functional, generic, object-oriented (class-based), and component-oriented programming disciplines. It was developed by Microsoft within its .NET initiative and later approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270:2006). C# is one of the programming languages designed for the Common Language Infrastructure.
C# is a general-purpose, object-oriented programming language. Its development team is led by Anders Hejlsberg.


• Introduction to the C# Language
The evolution of C#
• Comparing different versions of C#
• Expressing C# models in UML
C# and the .NET infrastructure
• Common Language Infrastructure (CLI)
• Managed code philosophy
• Common Intermediate Language (CIL) and metadata
• Language Fundamentals
Data types and control constructs
• Declaring implicit and explicit variables
• Value and reference types
• Unicode characters and strings
Defining and calling methods
• The Main method specification
• Passing arguments and returning values
• The scope and lifetime of variables
• Named and symbolic methods
• Handling exceptions
• Recovering resources
Employing .NET library classes
• Avoiding collisions by using namespaces
• Performing I/O using the stream class and serialization
• Standard and Generic Collections
• Developing C# Classes
Defining classes
• Encapsulating attributes with methods and properties
• Providing consistent initialization using constructors
• Overloading methods and constructors
• Achieving reuse through inheritance and polymorphism
Creating and using objects
• Allocating object memory with new
• Passing initial values to constructors
• Choosing value or reference allocation
• Invoking methods and accessing properties
• Interconnecting Objects
Associating classes
• Manipulating references
• Physical vs. logical equivalence
• Selecting collection library classes
• Increasing reliability using generics
Exposing interfaces
• Defining an interface specification
• Interface polymorphism
• Events and delegates
• Simplifying Component Development
Component features of .NET
• Manifests and assemblies
• .NET assembly metamodel
Writing .NET components in C#
• Creating and calling custom components
• Extending System.ComponentModel.Component
Interfacing legacy components
• Accessing COM/DCOM
• Tools for forward and backward compatibility
• Calling existing components
Integrating C# with other languages
• Harmonizing components through the CLI
• Accessing metadata
• Handling cross-language differences
• Implementing and Enhancing C# Solutions
Building multitier applications
• Leveraging solid architectures (MVC and EDM)
• Substituting the user interface
• Coding industry-standard design patterns in C#
Working with relational databases
• Accessing databases with the Entity Framework (EF)
• Integrating C# extended features with LINQ
Advanced techniques
• Implementing the IEnumerable<T> interface
• Invoking extension methods
• Employing events, delegates and lambda expressions
• Multithreading using asynchronous keywords

Last modified: Friday, 29 July 2016, 1:27 AM