Introduction to C# Training
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