Book Image

Python GUI Programming - A Complete Reference Guide

By : Alan D. Moore, B. M. Harwani
Book Image

Python GUI Programming - A Complete Reference Guide

By: Alan D. Moore, B. M. Harwani

Overview of this book

A responsive graphical user interface (GUI) helps you interact with your application, improves user experience, and enhances the efficiency of your applications. With Python, you’ll have access to elaborate GUI frameworks that you can use to build interactive GUIs that stand apart from the rest. This Learning Path begins by introducing you to Tkinter and PyQt, before guiding you through the application development process. As you expand your GUI by adding more widgets, you'll work with networks, databases, and graphical libraries that enhance its functionality. You'll also learn how to connect to external databases and network resources, test your code, and maximize performance using asynchronous programming. In later chapters, you'll understand how to use the cross-platform features of Tkinter and Qt5 to maintain compatibility across platforms. You’ll be able to mimic the platform-native look and feel, and build executables for deployment across popular computing platforms. By the end of this Learning Path, you'll have the skills and confidence to design and build high-end GUI applications that can solve real-world problems. This Learning Path includes content from the following Packt products: Python GUI Programming with Tkinter by Alan D. Moore Qt5 Python GUI Programming Cookbook by B. M. Harwani
Table of Contents (28 chapters)
Title Page

Separating concerns

Proper architectural design is essential for any project that needs to scale. Anyone can prop up some studs and build a garden shed, but a house or skyscraper takes careful planning and engineering. Software is no different; simple scripts can get away with shortcuts such as global variables or manipulating class properties directly, but as the program grows, our code needs to isolate and encapsulate different functionalities in a way that limits the amount of complexity we need to understand at any given moment.

We call this separation of concerns, and it's accomplished through the use of architectural patterns that describe different application components and how they interact.

The MVC pattern

Probably the...