Detailed Course Outline
Day 1
Course Introduction
- Administration and Course Materials
- Course Structure and Agenda
- Delegate and Trainer Introductions
Session 1: ADVANCED OBJECT ORIENTATION
- The self Keyword
- Constructors and Destructors
- Encapsulation
- Inheritance
- Polymorphism
- Abstract Classes
- Multiple Inheritance and Mixins
- Composition and Aggregation
- Static Members
Session 2: ITERATORS & GENERATORS
- Iterables
- Iterators
- Custom Iterators
- Generators
- Yield vs. Return
Session 3: COMPREHENSIONS
- List Comprehension
- Set Comprehension
- The zip Function
- Dictionary Comprehension
Day 2
Session 4: FUNCTIONAL PROGRAMMING
- Functional Programming
- Lambdas
- Immutability
- Mapping
- Filtering
- Reducing
Session 5: DECORATORS
- Decorators
- Decorator Functions
- Decorator Annotations
- Decorator Use Cases
- Labs
Session 6: MULTITHREADING
- Threads
- Multithreading
- Thread Construction
- Thread Execution
- Thread Sleep
- Joins
- Data Sharing
- Synchronisation
- Multithreading vs. Multiprocessing
Day 3
Session 7: WEB SERVICES
- RESTful Web Services
- JSON Data
- CRUD and HTTP
- RESTful Clients
- RESTful APIs
Session 8: UNIT TESTING
- Unit Testing Terminology
- Test Classes
- Test Fixtures
- Test Cases
- Assertions
- Test Runners