https://github.com/talkpython/rock-solid-python-with-type-hints-course
Rock Solid Python with Type Hints Course Student Materials
https://github.com/talkpython/rock-solid-python-with-type-hints-course
beanie best-practices course design-patterns fastapi pydantic python static-typing tutorial type-hints
Last synced: 9 months ago
JSON representation
Rock Solid Python with Type Hints Course Student Materials
- Host: GitHub
- URL: https://github.com/talkpython/rock-solid-python-with-type-hints-course
- Owner: talkpython
- License: mit
- Created: 2023-08-03T20:05:37.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-08T19:51:00.000Z (over 1 year ago)
- Last Synced: 2024-07-09T00:40:43.320Z (over 1 year ago)
- Topics: beanie, best-practices, course, design-patterns, fastapi, pydantic, python, static-typing, tutorial, type-hints
- Language: Python
- Homepage: https://training.talkpython.fm/courses/python-type-hint-course-with-hands-on-examples
- Size: 433 KB
- Stars: 15
- Watchers: 1
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Rock Solid Python with Type Hints Course
[](https://training.talkpython.fm/courses/python-type-hint-course-with-hands-on-examples)
## Course summary
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.
## What topics are covered
In this course, you will:
* **Compare popular static languages with Python** (such as Swift, C#, TypeScript, and others)
* See a exact clone of a **dynamic Python codebase along side the typed version**
* Learn how and when to **create typed variables**
* Understand **Python's strict nullability** in its type system
* Specify **constant** (unchangeable) variables and values
* Reduce SQL injection attacks with LiteralString
* Uses **typing with Python functions** and methods
* Use **typing with classes** and class variables
* Work with multiple numerical types with **Python's numerical type ladder**
* Use **Pydantic to model and parse** complex data in a type strict manner
* **Create an API with FastAPI** that exchanges data with type integrity
* **Query databases with Pydantic** using the Beanie ODM
* **Create CLI apps using type information** to define the CLI interface
* Leverage **mypy for verifying the integrity** of your entire codebase in CI/CD
* Add runtime type safety to your application
* **Marry duck typing and static typing** with Python's new Protocol construct
* Learn **design patterns and guidance** for using types in Python code
* And lots more, see the full [course outline](https://training.talkpython.fm/courses/python-type-hint-course-with-hands-on-examples#course_outline).
## Learn more
Visit [the course page at Talk Python](https://training.talkpython.fm/courses/python-type-hint-course-with-hands-on-examples) to learn more and take the course!