Introduction to C# Training
Course 4194 DAY COURSE
Course Outline
In this hands-on introduction to C# training course, you’ll gain a comprehensive introductory coverage of C# as an object-oriented programming language for application development. You will obtain practical experience using C# and learn how to leverage the .NET Framework Library to quickly produce production-level programs.
In this C# training course, you will gain the programming skills needed to create applications using the C# language. You will learn the basics of C# program structure, language syntax, and implementation details. Use of C# in all three tiers is discussed (user interface, business logic and data access) with focus on proper object-oriented coding.
Introduction to C# Training Benefits
- Create, compile, debug, deploy and run C# programs
- Write and understand C# language constructs, syntax, and semantics
- Develop applications using the object-oriented concepts of encapsulation, inheritance, and polymorphism
- Produce solid programs using industry-recognized multilayer architectures
Introduction to C# Instructor-Led Course Outline
Important Course Information
Prerequisites
This course is an introduction to C# but not an introduction to computer programming. Experience using a modern procedural language, such as Visual Basic, Pascal, Java, or C/C++ is needed. It is not a sufficient prerequisite if you have only used SQL and/or HTML. Attendees require an understanding of concepts such as data types, variables, declarations, conditionals, loops, expressions, functions, parameter passing, and procedural language flow.
For those without the pre-requisite background, Course 502, Introduction to .NET Programming Training is recommended.
Module 1: 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
Module 2: 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
Module 3: 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
Module 4: 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
Module 5: Implementing and Enhancing C# Solutions
Components and Deployment
- Manifests and assemblies
- .NET assembly meta-model
Building multi-tier applications
- Leveraging solid architectures (MVC and EDM)
- Changing the user interface
- Dealing with data using LINQ and Entity Framework
- Employing delegates and lambda expressions
- choosing a selection results in a full page refresh