The Python Programming 2 course comprises sessions dealing with advanced object orientation,iterators and generators,comprehensions,decorators,multithreading,functional p... [+]
COURSE OVERVIEW
The delegate will learn how to exploit advanced features of the Python language to build complex and efficient applications.
Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.
TARGET AUDIENCE
The Python Programming 2 course is designed for existing Python developers who have a good grounding in the basics and want to exploit some of the advanced features of the language.
For the delegate for whom Python is their first programming language,we recommend taking the Python Programming 1 course first,then taking some time to practice the skills gained,before returning to take the Python Programming 2 course.
COURSE OBJECTIVES
This course aims to provide the delegate with the knowledge to be able to interpret,write,and troubleshoot complex Python applications exploiting inheritance and polymorphism,mixins,composition and aggregation,iterators,generators,decorators,comprehension,concurrency,functional programming,and RESTful web services.
COURSE CONTENT
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
Introspection with __dict__,__name__,__module__,__bases__
The hasattr(obj,attr),dir(obj),help(obj) functions
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: DECORATORS
Decorators
Decorator Functions
Decorator Annotations
Decorator Use Cases
Labs
SESSION 5: FUNCTIONAL PROGRAMMING
Functional Programming
Lambdas
Immutability
Mapping
Filtering
Reducing
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
FOLLOW ON COURSES
Data Analysis Python [-]
Les mer