Course Outline
Module 1: Principles of Object Orientation
- Creating models
- Classes and objects
- Encapsulation, specialisation, and polymorphism
Module 2: Designing Applications with UML
- What is UML?
- UML diagrams
- Use case diagrams
- Class diagrams
- Interaction diagrams
Module 3: Getting Started with C#
- C# and .NET
- The C# language
- Visual Studio IDE
Module 4: C# Language Fundamentals
- Data types
- Variables
- Constants
- Strings
- Statements
- Expressions
Module 5: Branching
- Conditional branching statements
- Unconditional branching statements
- Loops
Module 6: Operators
- Assignment
- Mathematical operators
- Increment and decrement
- Relational operators
Module 7: Classes and Objects
- Defining classes
- Constructors
- Static and instance members
- Destroying objects
Module 8: Inside Methods
- Overloading methods
- Encapsulating data with properties
- Returning multiple values
Module 9: Debugging
- Setting a breakpoint
- The call stack
Module 10: Inheritance and Polymorphism
- Specialisation and generalisation
- Inheritance
- Polymorphism
- Abstract and sealed classes
- The root class: object
- Boxing and unboxing types
Module 11: Operator Overloading
- Using the operator keyword
- Creating useful operators
- Logical pairs
- Conversion operators
Module 12: Structs
- Defining a struct
Module 13: Interfaces
- Implementing an interface
- Implementing more than one interface
- Casting to an interface
- Extending an interface
Module 14: Arrays
- Declaring arrays
- Multidimensional arrays
- System.Array
- Indexers
Module 15: Collection Interfaces and Types
- The collection interfaces
- Array lists
- Queues and stacks
Module 16: Strings
- Creating strings
- Manipulating strings
- The StringBuilder class
Module 17: Throwing and Catching Exceptions
- The throw statement
- The try and catch statement
- How the call stack works
- Exception class methods and properties
Module 18: Delegates and Events
- Delegates
- Events
Module 19: Generics
- Generics: A primer
- Parameterising by data type
- System.Collections.Generic class
Requirements
Before attending this course, students must be competent in the following areas:
- Familiarity and comfort with basic operating system functions, such as file manipulation.
- Understanding of the fundamentals of structured programming, including concepts like flow control, variables, parameters, and function calls.
- At least three months of experience developing applications in either a graphical or non-graphical environment, or equivalent knowledge.
Experience with object-oriented programming and its concepts is not required.
Testimonials (1)
Tailored to our needs