C# Programming for none C# Developers

For enquiries contact us on 0121 288 3079 - email:client.contact@celestial.co.uk

C# Programming for none C# Developers

his course designed to introduce developers who are or not familiar with Object Oriented languages to the C# language. Designed by software developers for software developers, this course aims to bring to the software developer a pragmatic view of the language. The student will not only learn how to program in C#, but also best practices, how to use the class libraries and software patterns the C# way. This course focuses on the fundamentals of software engineering with a C# perspective.

Details

Course code:

CSHARP-5

Duration:

5 days

List Price:

£1995

Pre-requisites:

A basic programming background and some experience with Object Oriented concepts would be beneficial.

Delegates will learn:

How to write; basic C# applications, define well formed classes, stable code bases, effective string manipulation routines, dynamic class loading applications, multi-threaded applications, and basic sockets applications. Students will also learn some basic debugging and optimisation techniques, effective resource management, core C# libraries and how to construct their own frameworks. At the end of this course a student would be well qualified to sit the C# programmer exam.

Customization:

This course is suitable for customization to meet your needs

 

Topics Covered

C# architecture

In this introduction to the language we look at the history and architecture of the language.

Platform independence

A brief look at Virtual Machine concepts and platform neutrality

Frontline security

We look at the different levels of security available to C# developers, built-in, programmatic and config file based.

C# program structure

The basic structure of a C# program and application are examined.

Datatypes and fundamentals

Core language data types such as int, short and double are introduced.

Declarations and access control

Core language features for declaring data types and variables and specifying access modifiers.

Flow control and exceptions

A complete list of C# keywords (for, while etc.) as well as working with exceptions.

Working with objects

An examination of a C# object’s life cycle; loading, linking and verification. What is a C# class, how is a class initialised, constructors, the initialisation of field members, and basic garbage collection theory.

Working with interfaces

What is an interface and how is it different to a class? Moving away from inheritance to interfaces only.

Class loaders

Dynamic linking and resolution, class loader theory, and writing class loaders.

IO and Streams

Difference between byte streams and character streams, working with source/sinks, streams and processors.

C# threading

Threading vs multi-tasking theory, the Thread class, interrupting and stopping threads, thread safety through synchronization, worker thread pattern.

C# networking

Sockets theory, server and client sockets, working with sockets in multi-threaded applications, and sockets and exceptions.

C# strings

Strings, tuning String manipulation, comparisons and internationalisation.

Unmanaged code

Interoperating the C# language with other languages, and system level programming.

Optimising C# applications

Profiling, CDK features, object creation and deletion, exceptions, casting, variables and threading issues. Strategies for altering user perception on timing issues etc.

Celestial Consulting UK, enabaling change since 1998.