The C# 3.0 Programming Language

Overview

Microsoft's .NET Framework presents developers with unprecedented opportunities. From 'geo-scalable' web applications to desktop and mobile platform applications - all can be built with equal ease, using substantially the same skill-set. But to make the most of this potential, developers must have a thorough grasp of core language skills.

This course is intended for developers who will use C# to write .NET Framework applications and who are new to the C# programming language. This includes those currently working with Visual Basic 6.0, C++ or Java.

This four-day workshop concentrates on the C# programming language itself, to prepare delegates fully in readiness for exploring the .NET Framework. From basic procedural syntax to sophisticated object-oriented programming techniques, delegates will learn how to write .NET applications with code that is robust, maintainable and efficient.

The course is presented as a mixture of lectures and hands-on exercises. Practical sessions follow each topic, designed to reinforce the points covered. Additional information is provided in appendices to extend the learning experience after the course has been completed.

Course Objectives

On completing this course, you will be able to:

- Write efficient procedural code that includes sequence, selection and iteration constructs- Create and use classes and structures (types), including fields, properties and methods- Use private, internal, protected and public scope- Create derived classes that inherit from custom-written or .NET Framework classes- Create interfaces and apply techniques of polymorphism effectively and appropriately- Build exception-handling into methods, to create robust, user-friendly applications- Work effectively with delegates and events and understand how they operate- Leverage the power of C# features such as indexers and iterators- Work with generic types, operator overloading and other advanced language capabilities- Make use of the major new C# 3.0 feature – LINQ (Language Integrated Query)- Use attributes to configure program behaviour and efficiently manage resources- Version assemblies and know how .NET searches and loads the correct DLL’s