Software development in Python: A practical approach
Created by Amoh - Gyebi Ampofo, Last Updated 14-Oct-2020, Language:English
Software development in Python: A practical approach
Build with the new Qml 3 | Learn how to build a python bundled app (.exe, .dmg, .sh, etc) and a wheel (.whl)
Created by Amoh - Gyebi Ampofo, Last Updated 14-Oct-2020, Language:English
What Will I Get ?
- Learn the new Qml 3
- Learn Python native threading
- Qt Signals and Slots in Qml 3
- Learn how to build a wheel (.whl) for PyPi
- Design an app according to a UI/UX design prototype
- Build GUI Applications with Python
- Bundle an app into a .exe, .dmg, etc file
Requirements
- Knowledge in basic python programming
Description
The reason I got into python, I wanted to be a software engineer, I had just built a chat app in PHP and JQuery and a girl asked me if it could run on phone. I responded yes, but I knew that would only be possible using help using non-native means. I wanted native builds, not some complex framework which will only allow me to make a web app whiles I could use the time to study a full fledge programming language. There were others like making a web view app, I didn't like the Idea because there would definetely be setbacks. And I also wanted to be a software engineer or developer, I had built two almost identical CMSs with PHP and I felt I was ready to move into the software development space.
So I made up my mind to go straight into software development, what language should I use? I turned to Google, and Google made it clear that I should turn to python.
The exact thing they did was, they mentioned two things:
1. It is easier to learn and,
2. Some modern applications are built with it. What application? Blender3d. I knew blender, it is a beautiful 3d software.
So I got into python because I wanted to build softwares with it.
Today most python programmers actually want to build web apps, python has been so popular, its power is been used to almost overthrow PHP. Personally I don't like it for two reasons:
1. I love PHP, it made me feel like a programmer, more than JavaScript ever did.
2. Python is capable of a lot more, that is not its preserve. Its domain is in the software development world.
The many python developers should be building softwares with it, not web apps. Web apps has many alternatives, but in the software developement space python is almost alone when it comes to learnability, readability and availability. Even on Android we are leaking there soon we will be so there.
I hope you take my humble advice and study software development with python. It is awesome. This course is focused on that. Enjoy lets go.
Course Content
-
Introduction
4 Lectures 00:13:59-
Qt's Official Video
Preview00:01:36 -
Introduction
Preview00:03:51 -
Qt's preference of Qml
00:02:46 -
Comparisons between QtWidgets and Qml
00:05:46
-
-
Installation
11 Lectures 00:18:52-
Anaconda
00:01:44 -
Fix, if python is not on path
00:04:15 -
Config Pip if need be
00:02:05 -
PyQt5
00:04:37 -
Ninja-Preview
00:00:49 -
Ninja-Preview via pip
00:01:34 -
Download VSCode
00:01:25 -
Install PyInstaller
00:00:40 -
Install Twine
00:01:11 -
Install an ico converter
00:00:32 -
Exercise Files
-
-
The Path
1 Lectures 00:04:09-
Front end first
00:04:09
-
-
Transition to intermediate
2 Lectures 00:14:23-
Declaring star(*) function parameters
00:05:31 -
Decorators
00:08:52
-
-
Hands on PyQt
6 Lectures 00:17:51-
Create project files
Preview00:00:46 -
Script the python file
Preview00:03:50 -
Script the qml file
Preview00:02:33 -
Run the python file
Preview00:06:33 -
Add text "Hello World"
Preview00:03:57 -
Lets get started
Preview00:00:12
-
-
The basics
10 Lectures 00:52:34-
First Window
Preview00:04:55 -
Window flags
Preview00:05:36 -
Rectangle
00:02:43 -
Property
00:06:24 -
ID
00:07:04 -
Anchors
00:05:30 -
Text
00:07:59 -
Label
00:03:59 -
Image
00:04:36 -
Component
00:03:48
-
-
The Layouts
6 Lectures 00:42:22-
Layouts Introduction
-
RowLayouts
00:08:14 -
Column Layouts
00:07:57 -
Grid Layout
00:09:16 -
Stack Layout
00:03:14 -
Custom type
00:13:41
-
-
The Views
5 Lectures 00:46:18-
List View
00:13:44 -
List Model
00:06:04 -
Grid View
00:13:54 -
Stack View
00:06:31 -
Swipe View
00:06:05
-
-
The control types
5 Lectures 00:31:13-
Buttons
00:03:34 -
Text Field
00:02:41 -
Dial
00:07:57 -
How to customize controls
00:17:01 -
Customize controls
-
-
Communicate
6 Lectures 01:22:21-
Connection (Qml 3)
-
Slots (Qml 3)
-
Signals (Qml 3)
-
Signals and Slots (Qml 2)
00:21:34 -
Signals and Slots 2 (Qml 2)
00:25:26 -
Threading
00:35:21
-
-
Resources
2 Lectures 00:26:11-
Design a qml UI again
00:09:51 -
The RCC
00:16:20
-
-
Build
2 Lectures 00:17:33-
Build the app
00:09:45 -
Build the installer
00:07:48
-
-
PyPI | Make a python library
5 Lectures 01:03:46-
How are folders structured
00:03:22 -
How files are structured
00:08:32 -
Basic build with minimal setup parameters
00:11:00 -
More on setup parameters
00:28:59 -
Make several files for different operating systems
00:11:53
-
-
Project for Qt | Calculator based partly on Android's Calculator
34 Lectures 03:05:56-
Create project files
00:02:15 -
Add import statements
00:03:40 -
Add the first column layout
00:02:40 -
Add a border to the screen
00:02:09 -
Add a rect for the small size
00:02:00 -
Add a rect for the full size
00:02:13 -
Add a grid layout to the small size
00:01:42 -
Customise the button
00:04:11 -
Put the customised button in a seperate qml file
00:05:29 -
Duplicate twenty-three times
00:05:57 -
Change text and background colors of some duplicates
00:03:50 -
Put in the numbers
00:05:13 -
Put in the Glyphs
00:04:41 -
Change color
00:02:06 -
Add a rowlayout to full screen's rectangle
00:03:03 -
Put in the gridlayout for the functions rectangle
00:06:48 -
Put in the equal sign
00:01:58 -
Put in the grid layout and buttons
00:03:17 -
Put in the Column layout and Rectangle
00:03:51 -
Put in the Label and the Flickable
00:05:52 -
Duplicate the lable and the flickable
00:04:05 -
Create new signals
00:10:54 -
Add DeleteText signal
00:05:53 -
Script BtnClick signal
00:05:03 -
Create the onUniClick signal handler
00:04:53 -
Make screen to flick
00:03:17 -
Connect to the python
00:06:12 -
Connect to the equal sign signal
00:10:48 -
Create the compute property
00:04:36 -
Return the solutions answer to Qml
00:07:38 -
Improve on solve using Reversed BODMAS
00:08:27 -
Improve on solve
00:19:01 -
Add Percentage functionality
00:17:18 -
Project resources
00:04:56
-