Course Outline
Module 1. Core Object-Oriented Concepts
- Building models
- Classes & objects
- Encapsulation, specialization, & polymorphism
Module 2. Application Design with UML
- Introduction to UML
- UML notations
- Use Case Diagrams
- Class Diagrams
- Interaction Diagrams
Module 3. Introduction to C#
- C# and .Net
- Overview of the C# language
- Visual Studio IDE
Module 4. C# Core Language Concepts
- Data Types
- Variables
- Constants
- Strings
- Statements
- Expressions
Module 5. Control Flow & Branching
- Conditional branching
- Unconditional branching
- Loops
Module 6. Operators
- Assignment operators
- Mathematical operators
- Increment & decrement
- Relational operators
Module 7. Classes & Objects
- Defining classes
- Constructors
- Static & instance members
- Object disposal
Module 8. Method Internals
- Method overloading
- Encapsulating data via properties
- Returning multiple values
Module 9. Debugging
- Setting breakpoints
- Inspecting the call stack
Module 10. Inheritance & Polymorphism
- Specialization & generalization
- Inheritance mechanisms
- Polymorphism
- Abstract & sealed classes
- The base object class
- Boxing & unboxing types
Module 11. Operator Overloading
- Using the Operator keyword
- Defining practical operators
- Logical 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
- Declaring arrays
- Multidimensional arrays
- System.Array
- Indexers
Module 15. Collection Interfaces & Types
- Collection interfaces
- Array lists
- Queues & stacks
Module 16. Strings
- Creating strings
- Manipulating strings
- The StringBuilder class
Module 17. Exception Handling
- Throwing exceptions
- Catching exceptions (try/catch)
- Understanding the call stack
- Exception class members
Module 18. Delegates & Events
- Delegates
- Events
Module 19. Generics
- Introduction to Generics
- Parameterizing by data type
- System.Collections.Generics class
Requirements
To participate in this course, students are expected to possess foundational skills in the following areas:
- Working knowledge of basic OS operations, including file management.
- Grasp of structured programming core concepts, such as flow control, variable and parameter handling, and function calls.
- Minimum of three months of application development experience (graphical or non-graphical), or equivalent expertise.
Prior experience with object-oriented programming (OOP) or its core concepts is not a prerequisite.
Audience
This course is designed for software developers who:
- Are new to the field,
- Or have a general programming background but may have learned via non-visual languages in academic settings,
and wish to develop solutions using C# and the Microsoft .NET Framework. The program also helps you integrate object-oriented techniques to elevate your development proficiency.
Testimonials (1)
Tailored to our needs