Get in Touch

Course Outline

Module 1. Core Principles of Object Orientation

  • Model creation
  • Classes and objects
  • Encapsulation, specialisation, and polymorphism

Module 2. Application Design using UML

  • Introduction to UML
  • Types of UML diagrams
  • Use Case diagrams
  • Class diagrams
  • Interaction diagrams

Module 3. Introduction to C#

  • C# and the .NET ecosystem
  • Overview of the C# language
  • The Visual Studio IDE

Module 4. C# Language Essentials

  • Data types
  • Variables
  • Constants
  • Strings
  • Statements
  • Expressions

Module 5. Control Flow and Branching

  • Conditional branching statements
  • Unconditional branching statements
  • Loops

Module 6. Operators

  • Assignment
  • Mathematical operators
  • Increment and decrement
  • Relational operators

Module 7. Classes and Objects in Depth

  • Defining classes
  • Constructors
  • Static and instance members
  • Object destruction

Module 8. Method Internals

  • Method overloading
  • Data encapsulation via properties
  • Returning multiple values

Module 9. Debugging Techniques

  • Setting breakpoints
  • Analyzing the Call stack

Module 10. Inheritance and Polymorphism

  • Specialisation and generalisation
  • Inheritance mechanisms
  • Polymorphism
  • Abstract and sealed classes
  • The root class: object
  • Boxing and unboxing types

Module 11. Operator Overloading

  • Utilising the Operator keyword
  • Defining custom operators
  • Logical operator pairs
  • Conversion operators

Module 12. Structures (Structs)

  • Defining a Struct

Module 13. Interfaces

  • Implementing interfaces
  • Implementing multiple interfaces
  • Casting to interfaces
  • Extending interfaces

Module 14. Arrays

  • Declaring arrays
  • Multidimensional arrays
  • The System.Array class
  • Indexers

Module 15. Collection Interfaces and Types

  • Core collection interfaces
  • ArrayLists
  • Queues and stacks

Module 16. Advanced String Handling

  • String creation
  • String manipulation
  • The StringBuilder class

Module 17. Exception Handling

  • The throw statement
  • The try and catch blocks
  • Understanding the call stack during exceptions
  • Exception class methods and properties

Module 18. Delegates and Events

  • Delegates
  • Events

Module 19. Generics

  • Introduction to Generics
  • Parameterisation by data type
  • The System.Collections.Generic class

Requirements

To succeed in this course, participants should possess competence in the following areas:

  • Confidence with fundamental operating system tasks, including file management.
  • A solid grasp of structured programming basics, such as flow control, variable management, parameters, and function calls.
  • A minimum of three months of experience building applications in either graphical or non-graphical settings, or equivalent practical knowledge.

No prior experience with object-oriented programming or concepts is necessary.

Target Audience

This course is tailored for the following types of software developers:

  • Emerging developers
  • Developers who have a theoretical understanding of computer programming, particularly those who may have studied through non-graphical languages in an academic setting

These individuals aim to develop solutions using C# within the Microsoft .NET Framework and seek to refine their capabilities by applying Object-Oriented techniques.

 35 Hours

Number of participants


Price per participant

Testimonials (1)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories