Advanced Python: Master Design Patterns, APIs, Frontends, Concurrency

Advanced Python: Master Design Patterns, APIs, Frontends, Concurrency

Online event
Multiple dates
Overview

Master advanced Python programming in 9 weeks. Learn OOP, functional programming, data science, web development, and automation

Python Advanced

Course summary

  • Duration: One day per week for 9 weeks
  • Times: 11am – 5pm
  • Location: ONLINE OR IOD, 116 Pall Mall, London, SW1Y 5ED
  • Instructor-led: No training-bots in our classroom yet
  • Certificate: PCWorkshops certificate is issued on completion
  • Notes: Includes notes, exercises, code samples, some videos.
  • Laptops: Bring your own device, download anaconda.com
  • Installation assistance: Email us for assistance from our technical professional should you require help
  • Software: Necessary software will be downloaded during sessions
  • Practical: Each session will provide practical exercises to be completed for the next session. Individual mentoring and assistance can be scheduled. Final Project: the course includes a final project
  • Target Audience: Students who have completed the previous course or have intermediate Python knowledge.




Week 1: Advanced OOP and Design Patterns

  • Review of OOP: Composition vs Inheritance
  • Advanced Class Features:
    • Classmethods, Staticmethods
    • __slots__, @property, descriptors
    • Dunder methods and custom operators
  • SOLID principles in Python
  • Design Patterns in Python:
  • -->> Singleton, Factory, Strategy, Observer, Decorator, Command
  • -->> Composition over inheritance (practical examples)

Week 2: Functional Programming & Itertools

  • Functional paradigms in Python:
  • Lambda, map(), filter(), reduce(), zip()
  • Closures, decorators (nested and parameterized)
  • Generators & Coroutines
  • Generator Expressions vs List Comprehensions
  • Custom Iterators
  • itertools and functools deep dive

Week 3: Web Development with Flask

  • Web server basics
  • Flask app structure
  • Routing, templates (Jinja2), static files
  • Handling forms and user input
  • Working with sessions and cookies
  • REST API basics with Flask
  • Connecting Flask with databases (SQLite/PostgreSQL)

Week 4: REST APIs and FastAPI

  • REST architecture principles
  • FastAPI vs Flask
  • Creating APIs with FastAPI
  • Pydantic models
  • Dependency injection
  • API documentation with Swagger/OpenAPI
  • Authentication with OAuth2 and JWT (Intro)

Week 5: Web Scraping & Data Extraction

  • requests and httpx
  • Parsing HTML with BeautifulSoup and lxml
  • Extracting data from dynamic websites using Selenium
  • Anti-scraping protection and handling captchas
  • Exporting data to CSV, Excel, and databases
  • Scheduled scraping and automation


Week 6: Testing, Debugging & Logging

  • Unit Testing with unittest and pytest
  • Mocking, Fixtures
  • Writing testable code (TDD principles)
  • Debugging tools: pdb, breakpoint(), IDE debuggers
  • Logging with the logging module
  • Exception hierarchies and custom exceptions


Week 7: Concurrency & Parallelism

Week 8: Capstone Project & Career Prep

  • Choose from:
  • Full-stack Python web app
  • End-to-end ML project with deployment
  • Data pipeline (scraping → ETL → analysis → dashboard)
  • Version Control with Git (branching, merges, GitHub workflow)
  • Introduction to Docker and virtual environments
  • Packaging and publishing your Python project (setuptools, PyPI)
  • Final presentations and code reviews


Tools & Libraries Used:

  • Flask / FastAPI
  • SQLAlchemy
  • Pandas, NumPy, Matplotlib, Seaborn
  • Scikit-learn
  • Pytest
  • Git / GitHub
  • Docker (intro level)



Your trainer:

Sarah Barnard has been a software and database developer for 20+ years.

The founded, grew and sold 3 software training companies during this time.

She has published 5000+ educational programming scripts available under white label, 49 training manuals available on Shopify, manages a Udemy chanel and a Programming Languages Meetup group.


Master advanced Python programming in 9 weeks. Learn OOP, functional programming, data science, web development, and automation

Python Advanced

Course summary

  • Duration: One day per week for 9 weeks
  • Times: 11am – 5pm
  • Location: ONLINE OR IOD, 116 Pall Mall, London, SW1Y 5ED
  • Instructor-led: No training-bots in our classroom yet
  • Certificate: PCWorkshops certificate is issued on completion
  • Notes: Includes notes, exercises, code samples, some videos.
  • Laptops: Bring your own device, download anaconda.com
  • Installation assistance: Email us for assistance from our technical professional should you require help
  • Software: Necessary software will be downloaded during sessions
  • Practical: Each session will provide practical exercises to be completed for the next session. Individual mentoring and assistance can be scheduled. Final Project: the course includes a final project
  • Target Audience: Students who have completed the previous course or have intermediate Python knowledge.




Week 1: Advanced OOP and Design Patterns

  • Review of OOP: Composition vs Inheritance
  • Advanced Class Features:
    • Classmethods, Staticmethods
    • __slots__, @property, descriptors
    • Dunder methods and custom operators
  • SOLID principles in Python
  • Design Patterns in Python:
  • -->> Singleton, Factory, Strategy, Observer, Decorator, Command
  • -->> Composition over inheritance (practical examples)

Week 2: Functional Programming & Itertools

  • Functional paradigms in Python:
  • Lambda, map(), filter(), reduce(), zip()
  • Closures, decorators (nested and parameterized)
  • Generators & Coroutines
  • Generator Expressions vs List Comprehensions
  • Custom Iterators
  • itertools and functools deep dive

Week 3: Web Development with Flask

  • Web server basics
  • Flask app structure
  • Routing, templates (Jinja2), static files
  • Handling forms and user input
  • Working with sessions and cookies
  • REST API basics with Flask
  • Connecting Flask with databases (SQLite/PostgreSQL)

Week 4: REST APIs and FastAPI

  • REST architecture principles
  • FastAPI vs Flask
  • Creating APIs with FastAPI
  • Pydantic models
  • Dependency injection
  • API documentation with Swagger/OpenAPI
  • Authentication with OAuth2 and JWT (Intro)

Week 5: Web Scraping & Data Extraction

  • requests and httpx
  • Parsing HTML with BeautifulSoup and lxml
  • Extracting data from dynamic websites using Selenium
  • Anti-scraping protection and handling captchas
  • Exporting data to CSV, Excel, and databases
  • Scheduled scraping and automation


Week 6: Testing, Debugging & Logging

  • Unit Testing with unittest and pytest
  • Mocking, Fixtures
  • Writing testable code (TDD principles)
  • Debugging tools: pdb, breakpoint(), IDE debuggers
  • Logging with the logging module
  • Exception hierarchies and custom exceptions


Week 7: Concurrency & Parallelism

Week 8: Capstone Project & Career Prep

  • Choose from:
  • Full-stack Python web app
  • End-to-end ML project with deployment
  • Data pipeline (scraping → ETL → analysis → dashboard)
  • Version Control with Git (branching, merges, GitHub workflow)
  • Introduction to Docker and virtual environments
  • Packaging and publishing your Python project (setuptools, PyPI)
  • Final presentations and code reviews


Tools & Libraries Used:

  • Flask / FastAPI
  • SQLAlchemy
  • Pandas, NumPy, Matplotlib, Seaborn
  • Scikit-learn
  • Pytest
  • Git / GitHub
  • Docker (intro level)



Your trainer:

Sarah Barnard has been a software and database developer for 20+ years.

The founded, grew and sold 3 software training companies during this time.

She has published 5000+ educational programming scripts available under white label, 49 training manuals available on Shopify, manages a Udemy chanel and a Programming Languages Meetup group.


Good to know

Highlights

  • Online

Refund Policy

No refunds

Location

Online event

Frequently asked questions
Organised by
PCWorkshops
Followers--
Events32715
Hosting13 years
Report this event