Course Catalog
Enterprise Python
Code: Next Python
Duration: 4 Day
$2195 USD

OVERVIEW

This comprehensive course explores advanced Python topics and skills with a particular focus on utilization of Python for enterprise development. You’ll learn how to leverage OS services, code graphical application interfaces, interact with network series, query databases, and process XML and other data types. As part of a deep dive into the programming language, you’ll gain an understanding of some of Python's lesser known but incredibly powerful functions such as meta-programming, decorators, context managers, generators, iterators, and descriptors. At the end of the course, you will be able to use Python to complete advanced tasks and write secure and scalable enterprise-grade code.

DELIVERY FORMAT

This course is available in the following formats:

Virtual Classroom

Duration: 4 Day
Classroom

Duration: 4 Day

CLASS SCHEDULE

Delivery Format: Virtual Classroom
Date: May 20 2024 - May 23 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Jun 03 2024 - Jun 06 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Jul 15 2024 - Jul 18 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Aug 26 2024 - Aug 29 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Sep 16 2024 - Sep 19 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Oct 28 2024 - Oct 31 2024 | 08:30 - 16:30 EDT
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Nov 18 2024 - Nov 22 2024 | 08:30 - 16:30 EST
Location: Online
Course Length: 4 Day

$ 2195

Delivery Format: Virtual Classroom
Date: Dec 09 2024 - Dec 12 2024 | 08:30 - 16:30 EST
Location: Online
Course Length: 4 Day

$ 2195

GOALS
  • Common practices for writing scalable and legible Python code
  • Effective data processing practices and features like generators and decorators to improve complex computations on large datasets
  • Pythonic design patterns for secure, large-scale applications.
  • Enhancements to classes
  • Advanced Python metaprogramming concepts
  • Leveraging OS services
  • Interacting with network services
  • Coding graphical interfaces for applications
  • Designing professional scripts
  • Querying databases
  • Processing XML, CSV, and JSON data
OUTLINE

Day 1: Pythonic Python

  1. Pythonic Programming
    • The Zen of Python
    • Comments, docstrings, annotations
    • String Handling
    • List and Array optimization
    • Tuple tricks
    • Control structures in Python – effective use of Lambda functions, List comprehensions
    • Creating efficient dictionaries
    • Advanced unpacking
    • Essential conventions for Pythonic classes
    • Clean Python code patterns
    • Code quality enforcement tools – Style and Logic guides
    • Pythonic class conventions
    • Effective handling of import
    • Handling Decorators – Classes, Functions, accepting arguments, Multi decorators, singleton
    • Decorators and the DRY principle
    • Context Manager
    • Iterators
    • Generators for performance improvement
    • Coroutines – yield from, async def, await
    • Descriptors – types, chains, accessing attributes, benefits

Day 2: Python System Scripting

  1. OS Services
    • The os and os.path modules
    • Environment variables
    • Launching external commands with subprocess
    • Walking directory trees
    • Paths, directories, and filenames
    • Working with file systems
  2. Network Programming
    • Built-in classes
    • Using requests
    • Grabbing web pages
    • Sending email
    • Working with binary data
    • Remote access (SSH)
    • Using FTP
  3. Scripting for System Administration
    • Running external programs
    • Parsing arguments
    • Creating filters to read text files
    • Logging

Day 3: Python Data Processing

  1. Serializing data – XML and JSON
    • Working with XML
    • XML modules in Python
    • Getting started with ElementTree
    • Parsing XML
    • Updating an XML tree
    • Creating a new document
    • About JSON
    • Reading JSON
    • Writing JSON
    • Translating JSON to Pythonic data
    • Validating JSON data
    • Reading/writing CSV files
    • YAML, other formats as time permits
    • Time Permitting Sessions
  2. Database access
    • The DB API
    • Available Interfaces
    • Connecting to a server
    • Creating and executing a cursor
    • Fetching data
    • Parameterized statements
    • Using Metadata
    • Transaction control
    • ORMs and NoSQL overview

Day 4: Beyond Python

  1. Pythonic Architecture
    • Python Design Patterns
    • Architecture of Python applications
    • Event driven programming architecture
    • Microservices architecture
    • Scaling Python applications
    • Differentiate the features of event-based, microservice, and API architectures.
    • Application security guidelines
  2. PyQt
    • Overview
    • Qt Architecture
    • Using designer
    • Standard widgets
    • Event handling
    • Creating a simple application
  3. Type hinting
    • Annotate variables
    • Learn what type hinting does NOT do
    • Use the typing module for detailed type hints
    • Understand union and optional types
    • Write stub interfaces
  4. Writing real-life applications
    • Reading input files in Unix
    • Parsing command-line options
    • Detecting the current platform
    • Implementing logging
    • Creating a calculator application in PyQt
    • Perform CRUD operations by connecting to DB

Day 1: Pythonic Python

  1. Pythonic Programming
    • The Zen of Python
    • Comments, docstrings, annotations
    • String Handling
    • List and Array optimization
    • Tuple tricks
    • Control structures in Python – effective use of Lambda functions, List comprehensions
    • Creating efficient dictionaries
    • Advanced unpacking
    • Essential conventions for Pythonic classes
    • Clean Python code patterns
    • Code quality enforcement tools – Style and Logic guides
    • Pythonic class conventions
    • Effective handling of import
    • Handling Decorators – Classes, Functions, accepting arguments, Multi decorators, singleton
    • Decorators and the DRY principle
    • Context Manager
    • Iterators
    • Generators for performance improvement
    • Coroutines – yield from, async def, await
    • Descriptors – types, chains, accessing attributes, benefits

Day 2: Python System Scripting

  1. OS Services
    • The os and os.path modules
    • Environment variables
    • Launching external commands with subprocess
    • Walking directory trees
    • Paths, directories, and filenames
    • Working with file systems
  2. Network Programming
    • Built-in classes
    • Using requests
    • Grabbing web pages
    • Sending email
    • Working with binary data
    • Remote access (SSH)
    • Using FTP
  3. Scripting for System Administration
    • Running external programs
    • Parsing arguments
    • Creating filters to read text files
    • Logging

Day 3: Python Data Processing

  1. Serializing data – XML and JSON
    • Working with XML
    • XML modules in Python
    • Getting started with ElementTree
    • Parsing XML
    • Updating an XML tree
    • Creating a new document
    • About JSON
    • Reading JSON
    • Writing JSON
    • Translating JSON to Pythonic data
    • Validating JSON data
    • Reading/writing CSV files
    • YAML, other formats as time permits
    • Time Permitting Sessions
  2. Database access
    • The DB API
    • Available Interfaces
    • Connecting to a server
    • Creating and executing a cursor
    • Fetching data
    • Parameterized statements
    • Using Metadata
    • Transaction control
    • ORMs and NoSQL overview

Day 4: Beyond Python

  1. Pythonic Architecture
    • Python Design Patterns
    • Architecture of Python applications
    • Event driven programming architecture
    • Microservices architecture
    • Scaling Python applications
    • Differentiate the features of event-based, microservice, and API architectures.
    • Application security guidelines
  2. PyQt
    • Overview
    • Qt Architecture
    • Using designer
    • Standard widgets
    • Event handling
    • Creating a simple application
  3. Type hinting
    • Annotate variables
    • Learn what type hinting does NOT do
    • Use the typing module for detailed type hints
    • Understand union and optional types
    • Write stub interfaces
  4. Writing real-life applications
    • Reading input files in Unix
    • Parsing command-line options
    • Detecting the current platform
    • Implementing logging
    • Creating a calculator application in PyQt
    • Perform CRUD operations by connecting to DB
LABS

This very hands-on course includes more than 15 practical lab-based activities.

This very hands-on course includes more than 15 practical lab-based activities.

WHO SHOULD ATTEND

This in an intermediate and beyond level course designed for students who have experience writing Python scripts and who want to master design and architecture best practices and write enterprise-grade code.

PREREQUISITES

Students should have experience writing Python scripts, as well as a user-level knowledge of Unix/Linux, Mac, or Windows.