cm logo
To speak to a training advisor please call
All Courses / Microsoft Courses / Microsoft C# 4.0 : Introduction to the Microsoft C# 4.0 Programming Language
Share: Follow us: Bookmark with: twiter Print Page:

Microsoft C# 4.0 : Introduction to the Microsoft C# 4.0 Programming Language

Course Code: CSHPLI40      Days: 4

Course Overview

Microsoft's .NET Framework presents developers with unprecedented opportunities. From 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 and OO programming concepts.

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 and maintainable.

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

Delegates that attend a Microsoft training course are twice as motivated than those that don't?

Related Courses

Audience

This is a course for developers. Good Windows keyboard skills and an ability to 'leave the mouse alone' are an absolute necessity

Skills Gained

At the end of 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, Friend, Protected and Public visibility modifiers
  • Build exception-handling into methods, to create robust, user-friendly applications
  • Create derived classes that inherit from custom-written or .NET Framework classes
  • Create interfaces and apply techniques of polymorphism effectively and appropriately
  • Work with generic types
  • Define and use Visual Basic default properties
  • Understand the role of delegates in event handling
  • Recognise the huge role of (generic) delegates in the .NET FCL beyond event handling
  • Use lambda expressions effectively in Visual Basic code
  • Make use of the major VB 2008 feature - LINQ (Language Integrated Query)
  • Version assemblies and know how .NET searches and loads the correct DLL's(Appendix)
  • Efficiently manage resources (Appendix)
  • See the role of Attributes in .NET as metadata that can be 'reflected' upon (Appendix)

Prerequisites

Delegates must understand the fundamentals of programming and should have some existing knowledge of object oriented programming concepts.

Course Outline

Module 1: Introduction to .NET & C#

  • The .NET Framework; The Common Language Runtime; The Common Type System;
  • C# Features; Introduction to namespaces and assemblies

Module 2: Language Fundamentals

  • Procedures and statements; Data types; Declaring variables; Assignments;
  • Conversion; Arithmetic and other operators;
  • Control constructs; by value, by reference, named and optional parameters.

Module 3: Types I

  • Type concepts; Classes; Reference types;
  • Fields, properties and methods; C#3 Auto-implemented properties;
  • Accessibility modifiers; Construction and chaining;
  • Instance members; Keyword 'this';
  • The 'null' reference;

Module 4: Types II

  • Structs; Value types;
  • Object Initialisers;
  • Static; Const & ReadOnly;
  • The Singleton & Factory patterns;
  • Partial classes;
  • Enumerated types;

Module 5: Exception Handling

  • Errors vs. Exceptions; The 'try' block; The 'catch' block; The 'finally' block; Using 'throw';
  • Creating your own exceptions; 'checked' and 'unchecked' expressions.

Module 6: Inheritance & Polymorphism

  • Concept of inheritance; Substitutability; Extending a simple class;
  • 'virtual', 'override' and 'sealed' modifiers
  • Polymorphism;
  • Upcasting and safe downcasting;

Module 7: Abstract Classes & Interfaces

  • Abstract classes; Abstract methods and properties;
  • Polymorphism with interfaces; Multiple interfaces

Module 8: Generics & Collections

  • Arrays vs Collections; Array syntax;
  • Generic concepts; Using Generic collection classes; List ;
  • Generic interfaces; IComparable , IComparer & sorting;
  • Indexers; C# Iterators, IEnumerable , IEnumerator ;
  • Using generic methods;
  • Co & Contra-variance;
  • Constraints; Nullable types;
  • Boxing / UnBoxing issues

Module 9: Delegates & Events

  • Delegates explained; Working with delegates; Creating your own delegate types; Event handling delegates; Evolution of syntax for creating delegate instances; Key generic delegates of the FCL; Lambda expressions;

Module 10: Getting Started with LINQ

  • The various C#3 language features that act as LINQ enablers;
  • The Func Delegate family including Func ;
  • The LINQ API and query pattern;
  • LINQ to Objects

Module 11: More LINQ

  • Grouping; Joins; LINQ to XML;
  • LINQ to SQL;
  • Overview of LINQ to Entities

Module 12: The Way Ahead

Review Follow-on courses

Appendix Module: Namespaces & Assemblies

  • Namespaces; The 'using' statement for namespaces; Assemblies;
  • DLLs at compile time and run Time; The Global Assembly Cache (GAC)
  • Versioning using public/private key cryptography

Appendix Module: Operator Overloading

  • Why operator overloading is useful; When to overload
  • Implicit conversions; explicit conversions

Appendix Module: C# & .NET timeline

  • Which versions/functionality came when; C# syntax changes by version;

Appendix Module: Managing Resources

  • Garbage collection and its impacts; Finalizers; The 'Dispose' pattern; IDisposable
  • The Using statement

Appendix Module: Working with Files

  • System.IO namespace
  • File & Directory classes
  • Streams
  • Readers & Writers
  • Compressing and Decompressing Data

Appendix Module: Working with Data

  • ADO.NET architecture
  • Connections & Commands
  • Using DataReaders
  • Using DataSets
  • Managed Providers

Appendix Module: Working with Text

  • Class String; Class StringBuilder; Formatting Strings; Regular Expressions


How to make a booking for the CSHPLI40 course

Scheduled Dates

Request availability or enquire by clicking a date:

Sort by Location

London Region
London (Central)
£ 1,995
London (Central)
£ 1,995
London (Central)
£ 1,995
London (Central)
£ 1,995
London (Central)
£ 1,995
South East England
Berkshire
£ 1,995
North West England
Manchester (Greater)
£ 1,995
Manchester (Greater)
£ 1,995
Manchester (Greater)
£ 1,995
Scotland
Edinburgh
£ 1,995
Glasgow
£ 1,995
Glasgow
£ 1,995
South West England
Bristol
£ 1,995
Bristol
£ 1,995
East Midlands
Leicestershire
£ 1,995
Leicestershire
£ 1,995
West Midlands
Midlands (West)
£ 1,995
Yorkshire and the Humber
Yorkshire (West)
£ 1,995
Yorkshire (West)
£ 1,995
Yorkshire (West)
£ 1,995
Yorkshire (West)
£ 1,995

Sort by Date

West Midlands
£ 1,995
North West England
£ 1,995
Yorkshire and the Humber
£ 1,995
East Midlands
£ 1,995
Scotland
£ 1,995
London Region
£ 1,995
North East England
£ 1,995
Yorkshire and the Humber
£ 1,995
North West England
£ 1,995
South East England
£ 1,995
South West England
£ 1,995
London Region
£ 1,995
Scotland
£ 1,995
Yorkshire and the Humber
£ 1,995
London Region
£ 1,995
North East England
£ 1,995
Yorkshire and the Humber
£ 1,995
East Midlands
£ 1,995
London Region
£ 1,995
North West England
£ 1,995
Scotland
£ 1,995
South West England
£ 1,995
London Region
£ 1,995

No Suitable Dates?

Please click above and we will take care of the rest.

Please click above and we will be happy to discuss the benefits of onsite and bespoke courses with you.

CourseMonster books thousands of public training courses, classes and boot camps both in London, City of London and throughout the UK including: Berkshire, Birmingham, Bristol, Bournemouth, Aylesbury, Cambridge, Derby, Devon, Edinburgh, Glasgow, Hampshire, Ipswich, Leeds, Leicester, Luton, Manchester, Middlesex, Milton Keynes, Newcastle, Norwich, Nottingham, Plymouth, Reading, Sheffield, Southampton, Surrey, Sussex, Midlands and Yorkshire. Topics range from software to administration, project management and development.