Introduction to the Microsoft C# 4.0 Programming Language

Level
Total time

Introduction to the Microsoft C# 4.0 Programming Language

Perpetual Solutions
Logo Perpetual Solutions
Provider rating: starstarstarstarstar 10 Perpetual Solutions has an average rating of 10 (out of 1 reviews)

Need more information? Get more details on the site of the provider.

Starting dates and places
There are no known starting dates for this product.

Description

Prerequisites:

Delegates must understand the fundamentals of programming and should have some existing knowledge of object oriented programming concepts. This is a course for developers. Good keyboard skills are an absolute necessity.

Course Description:

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…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Didn't find what you were looking for? See also: Microsoft Visual Basic 6/.NET, Programming (general), C/C++, Microsoft Visual C#.NET, and Microsoft .NET.

Prerequisites:

Delegates must understand the fundamentals of programming and should have some existing knowledge of object oriented programming concepts. This is a course for developers. Good keyboard skills are an absolute necessity.

Course Description:

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 three-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, designed to reinforce the points covered. Additional information is provided in appendices to extend the learning experience after the course has been completed.

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, internal, protected and public visibility modifiers
  • 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 and efficiently manage resources
  • Version assemblies and know how .NET searches and loads the correct DLL's

This course includes the following modules:

ntroduction to .NET & C#

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

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

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

Types II

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

Exception Handling

  • Errors vs. Exceptions; The ?¢‚Äöá®Ä∫try block; The ?¢‚Äöá®Ä∫catch block; The ?¢‚Äöá®Ä∫finally block; Using ?¢‚Äöá®Ä∫throw
  • Creating your own exceptions; ?¢‚Äöá®Ä∫checked and ?¢‚Äöá®Ä∫unchecked expressions.

Inheritance & Polymorphism

  • Concept of inheritance; Substitutability; Extending a simple class
  • ?¢‚Äöá®Ä∫virtual, ?¢‚Äöá®Ä∫override and ?¢‚Äöá®Ä∫sealed modifiers
  • Polymorphism
  • Upcasting and safe downcasting

Abstract Classes & Interfaces

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

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

Delegates & Events

  • Delegates explained
  • Working with delegates
  • Creating your own delegate types
  • Events
  • Evolution of syntax for creating delegate instances
  • Generic delegates

Managing Resources

  • Garbage collection and its impacts; Finalizers; The ?¢‚Äöá®Ä∫Dispose pattern; IDisposable
  • The using statement for deterministic resource management.

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: Working with Text

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

For online live training advice please visit our Learning Advice Centre on our website. Be sure to follow us on Twitter to receive special course offers, news and updates!

There are no reviews yet.
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate £1.- to Stichting Edukans.

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.