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#
- Overview of C# and .Net
- The C# Language
- Visual Studio IDE
Module 4. Essentials of the C# Language
- Data Types
- Variables
- Constants
- Strings
- Statements
- Expressions
Module 5. Control Flow and Branching
- Conditional branching statements
- Unconditional branching statements
- Loops
Module 6. Operators in C#
- Assignment operations
- Mathematical operators
- Increment and decrement operations
- Relational operators
Module 7. Working with Classes and Objects
- Defining classes
- Constructors
- Static and instance members
- Object disposal and destruction
Module 8. Method Implementation
- 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
- Type boxing and unboxing
Module 11. Operator Overloading
- Utilizing the Operator Keyword
- Developing custom operators
- Logical operator pairs
- Conversion operators
Module 12. Structs
- Defining a Struct
Module 13. Interfaces
- Implementing an interface
- Implementing multiple interfaces
- Casting to an interface
- Extending an interface
Module 14. Arrays
- Array declaration
- Multidimensional arrays
- The System.Array class
- Indexers
Module 15. Collection Interfaces and Data Structures
- Core collection interfaces
- Array lists
- Queues and stacks
Module 16. String Handling
- String creation
- String manipulation
- Using the StringBuilder class
Module 17. Exception Handling
- The throw statement
- Try and catch statements
- Understanding the call stack behavior
- Exception class methods and properties
Module 18. Delegates and Events
- Delegates
- Events
Module 19. Generics
- Introduction to Generics
- Parameterizing by data type
- The System.Collections.Generics class
Requirements
Prospective students are expected to possess foundational competence in the following areas prior to enrollment:
- Proficiency in basic operating system operations, including file management and manipulation.
- A solid grasp of structured programming principles, encompassing flow control, variable usage, parameters, and function calls.
- At least three months of hands-on experience developing applications in either graphical or non-graphical environments, or possession of equivalent technical knowledge.
While experience with object-oriented programming concepts is beneficial, it is not a mandatory prerequisite for this course.
Target Audience
This course is specifically designed for the following categories of software developers:
- Novice developers entering the field
- Developers with a background in computer programming who may have primarily learned using non-graphical languages during their academic studies
These professionals aim to leverage C# within the Microsoft .NET Framework to build solutions. They also seek to integrate Object-Oriented techniques to significantly enhance their development capabilities.
Testimonials (1)
Tailored to our needs