An Introduction to C# Programming
Course
Inhouse
Description
-
Type
Course
-
Level
Beginner
-
Methodology
Inhouse
-
Duration
5 Days
This course helps attendees to develop object oriented programming skills, and the application of those skills to developing C# applications running in a .NET environment. Suitable for: Attendees should have a basic knowledge of object oriented programming and a good working knowledge of programming with data structures and algorithms
Reviews
Course programme
The course provides an intensive overview of the .NET framework, the key features of C# and how it fits into the .NET framework. Where appropriate, differences between C# and either C++ or Java are pointed out (for the benefit of those attendees who are coming onto the course from a C++ or Java programming background). UML 2 diagrams are used to illustrate various aspects of class and application design.
This is a taught course with labs, with a split of about 60% teaching and 40% labs.
Course Benefits
This course helps attendees to develop object oriented programming skills, and the application of those skills to developing C# applications running in a .NET environment.
Course Contents
Overview of C# and the .NET Framework
- Microsoft's Programming Philosophy
- Component Oriented Programming
- .NET Platform
- .NET Framework
- Compilation and the MSIL
- Types
- Variables and Constants
- Expressions
- Statements
- Operators
- Preprocessor directives
- Classes
- Defining classes
- Creating objects (instances of a class)
- Static members of a class
- Destroying objects
- Parameter passing and call semantics (by val, by ref)
- Overloading Methods and Constructors
- Encapsulating data with properties
- Readonly fields
- UML 2 Class Diagrams for representing C# classes
- Specialisation and Generalisation
- Inheritance
- Polymorphism
- Abstract classes
- UML 2 class diagrams for showing inheritance, polymorphism and abstract classes
- System.Object - the root of all classes
- Boxing and Unboxing types
- Nesting Classes
- operator keyword
- Creating operators - some practical examples
- Logical pairs
- Equality operator
- Conversion operators
- Definition and implementation
- Accessing interface methods
- Overriding an interface implementation
- Explicit interface implementation
- Arrays
- foreach statement
- Indexers
- Collection interfaces
- Constraints
- List
- Queues
- Stacks
- Dictionaries
- Throwing and Catching exceptions
- Exception objects
- Custom exceptions
- Rethrowing exceptions
- Delegates
- Multicasting
- Events
- Use of Anonymous Methods
- Fetching values from Multicast Delegates
- Simple Windows Forms
- Windows Form based applications
- Overview of relational databases and SQL
- ADO.NET object model
- Data-Bound controls
- Overview of Web Forms
- Creating Web Forms
- Controls
- Data Binding
- Web Services
- An overview of SOAP, WSDL and Discovery
- Implementing a Web Service
- Assemblies and Versioning
- Attributes and Reflection
- Marshaling and Remoting
- Threads and synchronisation
- Streams
- Interworking between .NET and COM
An Introduction to C# Programming