Python® Programming: Advanced
Python® continues to be a popular programming language, perhaps owing to its ability to get a lot of work done in few lines of code, and its versatility. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you’ll build upon your basic Python skills, learning more advanced topics such as object-oriented programming patterns, development of graphical user interfaces, data management, threading, unit testing, and creating and installing packages and executable applications.
In this course, you will expand your Python proficiencies.
- Create object-oriented Python applications.
- Design and create a GUI.
- Store data in a database from Python applications.
- Communicate using client/server network protocols.
- Manage multiple processes with threading.
- Implement unit testing.
- Package an application for distribution.
This course is designed for existing Python programmers who have at least one year of Python experience and who want to expand their Python proficiencies.
To ensure your success in this course, you should have experience with object-oriented programming and Python 2.x or 3.x. You can obtain this level of skill and knowledge by taking the following Logical Operations course:
- Python® Programming: Introduction
Course-specific Technical Requirements – Software
- Windows® 10/8.1/8/7/Vista (64-bit).
NOTE: This course was successfully keyed on Windows 10. Some activity steps may not key exactly as written if students key on a different version of Windows.
- Python version 3.4.2 (python-3.4.2.amd64.msi, provided with the course data files).
- PyCharm Community Edition version 3.4.1 ( pycharm-community-3.4.1.exe, provided with the course data files).
NOTE: Python is distributed under the Python Software Foundation License (PSFL). PyCharm Community Edition is distributed under the Apache® License 2.0.
- If necessary, software for viewing the course slides. (Instructor machine only.)
Lesson 1: Using Object-Oriented Python
Topic A: Create and Use Classes in an Application
Topic B: Use Magic Methods
Topic C: Incorporate Class Factories
Lesson 2: Creating a GUI
Topic A: Design a GUI
Topic B: Create and Arrange a GUI Layout
Topic C: Interact with User Events
Lesson 3: Using Databases
Topic A: Basics of Data Management
Topic B: Use SQLite Databases
Topic C: Manipulate SQL Data
Lesson 4: Network Programming
Topic A: Basics of Network Programming
Topic B: Create a Client/Server Program
Lesson 5: Managing Multiple Processes with Threading
Topic A: Create a Threaded Application
Topic B: Manage Thread Resources
Lesson 6: Implementing Unit Testing
Topic A: Test-Driven Development
Topic B: Write and Run a Unit Test Case
Topic C: Create a Test Suite
Lesson 7: Packaging an Application for Distribution
Topic A: Create a Package Structure
Topic B: Generate the Package Distribution Files
Topic C: Generate a Windows Executable