The C# 3.0 Programming Language
Starting dates and places
Description
Prerequisites:
Delegates must understand the fundamentals of programming and should have had some prior exposure to object oriented programming techniques.Course Description:
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 Visu…
Frequently asked questions
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
Prerequisites:
Delegates must understand the fundamentals of programming and should have had some prior exposure to object oriented programming techniques.Course Description:
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
This course includes the following modules:
Introduction 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
Types
- Type concepts
- Value and reference types
- Fields, properties and methods
- Accessibility modifiers
- Construction
- Assignment
- The simple types
- The 'null' reference
- Static and instance members
- Enumerated types
- Partial classes
- Static classes
Exception Handling
- Errors vs. Exceptions
- The 'try' block
- Using 'throw'
- The 'catch' block
- The 'finally' block
- Creating your own exceptions
- 'checked' and 'unchecked' expressions
Inheritance
- Concept of inheritance
- Extending a simple class
- Polymorphism
- 'virtual', 'override', 'new' and 'sealed' modifiers
Abstract Classes & Interfaces
- Abstract classes
- Abstract methods, properties and indexers
- Polymorphism with interfaces
- Multiple interfaces
Arrays & Indexers
- Arrays
- Array initialisers
- Multi-dimensional arrays
- Jagged arrays
- Indexers
- Standard collections
- C# 2.0 Iterators
Generic Types
- The need for generics
- Writing and using generic types
- Applying constraints
- Other aspects of generic programming
- Nullable types
- Generic collections
Attributes
- Attributed code explained
- Using attributes
- Custom attributes
- Introduction to reflection
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
Managing Resources
- Garbage collection and its impacts
- Finalizers
- The 'Dispose' method
- IDisposable interface
- The using statement for deterministic resource management
Delegates & Events
- Delegates explained
- Working with delegates
- Creating your own delegate types
- Events
- Generic delegate EventHandler
- Anonymous delegates
- Asynchronous invocation patterns
- Late binding using delegates
C# 3.0 Language Enhancements
- Object & Collection initialisers
- Anonymous types
- ?¢‚Äöá®Ä∫var & inferred data types
- Delegate type Func
- Using lambda expressions
- Extension methods
- LINQ and how LINQ uses and relies on all these new C#3.0 language enhancements
Brief Introduction to ASP.NET & Windows Forms
- Putting the language into practice
- Creating a simple ASP.NET Web Forms application using ADO.NET
- Creating a simple Windows Forms application
- Using a Web Service
Operator Overloading
- Why operator overloading is useful
- When to overload
- Implicit and explicit conversions
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!
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.