Course Outline
Module 1. Principles of Object Orientation
- Model creation
- Classes and objects
- Encapsulation, specialisation, and polymorphism
Module 2. Designing Applications with UML
- Introduction to UML
- Types of UML Diagrams
- Use Case Diagrams
- Class Diagrams
- Interaction Diagrams
Module 3. Getting Started with C#
- C# and the .Net ecosystem
- The C# language syntax
- Working with the Visual Studio IDE
Module 4. C# Language Fundamentals
- Data types
- Variables
- Constants
- Strings
- Statements
- Expressions
Module 5. Branching
- Conditional branching logic
- Unconditional branching statements
- Loop structures
Module 6. Operators
- Assignment operations
- Mathematical operators
- Increment and decrement
- Relational operators
Module 7. Classes and Objects
- Class definition
- Constructor implementation
- Static versus instance members
- Object destruction
Module 8. Inside Methods
- Method overloading
- Data encapsulation via properties
- Returning multiple values
Module 9. Debugging
- Configuring 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
- Utilizing the Operator keyword
- Defining custom operators
- Logical operator pairs
- Conversion operators
Module 12. Structs
- Defining a Struct
Module 13. Interfaces
- Implementing an interface
- Implementing multiple interfaces
- Interface casting
- Extending an interface
Module 14. Arrays
- Array declaration
- Multidimensional arrays
- System.Array utilities
- Indexers
Module 15. Collection Interfaces and Types
- Core collection interfaces
- Array lists
- Queues and stacks
Module 16. Strings
- String creation
- String manipulation techniques
- The StringBuilder class
Module 17. Throwing and Catching Exceptions
- The throw statement
- Try and catch blocks
- Call stack mechanics
- Exception class methods and properties
Module 18. Delegates and Events
- Delegates
- Events
Module 19. Generics
- Introduction to Generics
- Parameterization by data type
- The System.Collections.Generics class
Requirements
To successfully participate in this course, students should demonstrate proficiency in the following areas:
- A solid understanding of basic operating system operations, including file handling and manipulation.
- A grasp of structured programming fundamentals, such as flow control, variable usage, parameters, and function invocation.
- At least three months of practical experience in application development, whether in graphical or non-graphical environments, or an equivalent level of technical knowledge.
Prior experience with object-oriented programming (OOP) and its core concepts is not a prerequisite for this course.
Target Audience
This program is specifically designed for the following profiles of software developers:
- Novice developers beginning their professional journey
- Developers with general programming knowledge who may have acquired their foundational skills using non-graphical languages in academic settings
These professionals aim to build comprehensive solutions utilizing C# within the Microsoft .NET Framework, seeking to enhance their development capabilities by adopting Object Orientated techniques.
Testimonials (1)
Tailored to our needs