TGN

The C# Language


This 3 day course covers C# as a language without targetting any particular application type. A basic knowledge of programming is assumed, though not any particular language. We also offer alternative courses for those interested in the language as well as a particular target such as Windows Forms, ASP.Net or WPF.

The 3 day course costs £1770 in total for up to 6 students, plus VAT and the instructor's reasonable expenses. Each student beyond 6 would cost £20 for the additional course materials.

If you are interested in this course, please contact us by email at enquiries@tgn.co.uk or by phone on
+44 (0)1285 713297.

Introducing C# and .Net

Layout and white space. Blocks, braces and semicolons. Classes, methods and the use of '.'. The Main method. Basic input and output. Compiling and running programs.

Using Variables

Variable types and sizes. Integer versus floating point. Local variables and scope. Declaring and initializing variables. Operators. Pre and post increment operators. Strings and characters. Special characters and escape sequences. Verbatim literal strings.

Control Flow

if and else. The for loop. while and do while. The switch statement. Conditional expressions. Writing and calling methods. Passing arguments. Returning values. Method overloading.

Object Oriented Programming

Data types and nullable types. Value and reference types. Implicit types. Classes, objects and the use of 'new'. Encapsulation. The heap and the stack. Strings and StringBuilders. Collections, generics and concurrency. Arrays, jagged arrays and Indexers. Namespaces, ‘using’ and assemblies. Attributes.

Inheritance

Inheritance and the use of ‘virtual’ and ‘override’. Benefits of inheritance. Hiding and the other use of 'new'. Abstract classes. Constructors and initialization. Casting, ‘as’ and ‘is’.

Interfaces

The benefits of interfaces. Interfaces vs classes. Defining and implementing an interface. Common interfaces. Sorting and finding.

Exception Handling

How exception handling works. try…catch and throw. Handling multiple exception types. try…finally. Deriving exception classes.

Advanced Language Features

Optional and named parameters. Delegates. Anonymous methods and lambda expressions. Memory management and the workings of the garbage collector. Calling legacy and unmanaged code. Using unsafe code. The Marshal and IntPtr types. Operator overloading and indexers.

The Dynamic Language Runtime

Supporting dynamic languages. The dynamic keyword. Comparing dynamic and object. ExpandoObject. DynamicObject. Office support.

Multitasking

Parallel execution. Parallel For and ForEach. Tasks, threads and the thread pool. Controlling and synchronizing tasks and threads. .Net 4 synchronization mechanisms. Monitors. Delegates and asynchronous method calls. Asynchronous methods in .Net. Using callbacks. Cross-thread calls and the user interface.

Copyright © 1996 - 2010 The Graphics Network Ltd. Registered in England No. 2549085
All trademarks used on this site are respectfully acknowledged.
Microsoft is a registered trademark of Microsoft Corporation in the United States and other countries.