Rock Solid Python with Python Typing Course

4h 27m 54s
English
Paid

Course description

When Python was originally invented way back in 1989, it was a truly dynamic and typeless programming language. But that all changed in Python 3.5 when type "hints" were added to the language. Over time, amazing frameworks took that idea and ran with it. They build powerful and type safe(er) frameworks. Some of these include Pydantic, FastAPI, Beanie, SQLModel, and many many more. In this course, you'll learn the ins-and-outs of Python typing in the language, explore some popular frameworks using types, and get some excellent advice and guidance for using types in your applications and libraries.

Read more about the course

In this course, you will:

  1. Compare popular static languages with Python (such as Swift, C#, TypeScript, and others)
  2. See a exact clone of a dynamic Python codebase along side the typed version
  3. Learn how and when to create typed variables
  4. Understand Python's strict nullability in its type system
  5. Specify constant (unchangeable) variables and values
  6. Reduce SQL injection attacks with LiteralString
  7. Uses typing with Python functions and methods
  8. Use typing with classes and class variables
  9. Work with multiple numerical types with Python's numerical type ladder
  10. Use Pydantic to model and parse complex data in a type strict manner
  11. Create an API with FastAPI that exchanges data with type integrity
  12. Query databases with Pydantic using the Beanie ODM
  13. Create CLI apps using type information to define the CLI interface
  14. Leverage mypy for verifying the integrity of your entire codebase in CI/CD
  15. Add runtime type safety to your application
  16. Marry duck typing and static typing with Python's new Protocol construct
  17. Learn design patterns and guidance for using types in Python code

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 73 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing

Watch Online Rock Solid Python with Python Typing Course

0:00
/
#1: Welcome

All Course Lessons (73)

#Lesson TitleDurationAccess
1
Welcome Demo
01:57
2
Python Language Typing Definition
02:41
3
What We'll Cover
02:42
4
Goal: Not 100%
01:11
5
You'll Need Python 3.10 or Newer
01:07
6
git the Repo
01:22
7
Meet Your Instructor
01:38
8
Spectrum of Type Strictness
06:37
9
Running the Source Code
03:26
10
Motorcycle Class, Untyped
05:36
11
Using the Untyped Motorcycle
02:21
12
Duck Typing
03:03
13
TypeScript Motorcycles
04:40
14
C# Motorcycle and Why Types Can Detract from Readability
05:02
15
A Very Swift Motorcycle
04:04
16
Typed Python Motorcycles
07:38
17
Python Typing Introduction
00:33
18
Where Do Python Type Hints Come From?
01:14
19
Typing and Variables
03:23
20
Survey of Core Types
03:05
21
Nullable Types
05:22
22
Unions
03:11
23
If You Don't Know the Type
02:03
24
Constants
03:37
25
Avoiding Injection Attacks with LiteralString
06:02
26
Functions: Basic Typing
05:13
27
Functions: void Functions
02:44
28
Functions: Functions as Objects
05:34
29
Typing for Container Data Types
07:22
30
More Complex Containers
08:28
31
Classes and Typing
06:27
32
Externally Defining Types
04:27
33
Adding Our Own Types
03:56
34
Representing Multiple Numerical Types
04:13
35
Generics Available in Python 3.12
01:45
36
Gradual Typing
03:11
37
Frameworks Introduciton
00:46
38
Pydantic Foundations
02:24
39
Pydantic Code Example
01:00
40
pip-tools for Adding Requirements
03:16
41
Parsing Basic Data with Pydantic
08:57
42
Data-Rich Pydantic Example
06:03
43
Web frameworks using Type Hints
04:58
44
Database Frameworks Built on Pydantic
03:40
45
CLIs with Python Types
02:09
46
Setting up Our FastAPI Example
03:43
47
FastAPI, Beanie, and Pydantic MongoDB Example
04:27
48
Setting up the DB to Run the Code Yourself
02:08
49
Tools Introduction
00:42
50
Editors (Round 2)
02:26
51
Full Project Inspection
06:12
52
Static Type Checkers
01:32
53
mypy in Action
05:14
54
Runtime Type Checking with Beartype
01:56
55
Getting Started with Beartype
06:43
56
Beartype Speed Test
07:01
57
Orthogonal/Structural Typing Introduction
01:06
58
Inheritance Gone Wrong, an Example
06:11
59
Static duck typing with Protocols
08:24
60
Structural Typing Visualized
01:19
61
Patterns Introduction
01:11
62
Types on the Boundary
02:05
63
Public Packages
01:30
64
Autocomplete
01:10
65
To Optional or Not
03:11
66
Versions of Python
04:19
67
Minimalism Overview
04:12
68
Minimalism Code
01:45
69
Refactoring Motivation
01:31
70
Refactoring with Types
02:37
71
Point of No Return
07:39
72
Collection Advice
02:27
73
Conclusion
05:05

Unlock unlimited learning

Get instant access to all 72 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Make a Location-Based Web App With Django and GeoDjango

Make a Location-Based Web App With Django and GeoDjango

Sources: realpython.com
Throughout this course, you’ll learn how to use Django and GeoDjango to build a location-based web application from scratch. You’ll be building a simple nearby
56 minutes 48 seconds
100 Days of Code: The Complete Python Pro Bootcamp

100 Days of Code: The Complete Python Pro Bootcamp

Sources: udemy
Welcome to the 100 Days of Code - The Complete Python Pro Bootcamp, the only course you need to learn to code with Python. With over 100,000 reviews and a 4...
54 hours 16 minutes 30 seconds
The Ultimate Django Series: Part 2

The Ultimate Django Series: Part 2

Sources: codewithmosh (Mosh Hamedani)
Do you want to take your Django skills to the next level and become that professional back-end developer that companies love to hire? This is exactly the course you need.
5 hours 41 minutes 6 seconds
Python Jumpstart by Building 10 Apps

Python Jumpstart by Building 10 Apps

Sources: Talkpython
Programming is fun and profitable. Learning to become a software developer should be equally fun! This course will teach you everything you need to know about the Python languag...
7 hours 8 minutes 59 seconds
Coding with AI

Coding with AI

Sources: Jeremy Morgan
Let's be realistic. You would like to delegate many tedious software development tasks to an assistant - and now it's possible! Tools for...