Static typing in Python
Lupuliak, Vasilii (2025)
Kandidaatintyö
Lupuliak, Vasilii
2025
School of Engineering Science, Tietotekniikka
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2025081282230
https://urn.fi/URN:NBN:fi-fe2025081282230
Tiivistelmä
Python is well-known as a dynamically typed language, meaning that type checks are moved into runtime and type annotations in the code are not required. However, it can still be statically typed with the help of type hints and external type checking tools. This research explores this practice in-depth, looking at the benefits it offers, and studies several documented cases of applying static typing in large, commercial Python projects.
Existing academic research in this area demonstrates the impact of static typing on software quality by performing various experiments and empirical studies. Overall, the use of type hints and static type checkers is proven to prevent a large portion of type-related errors.
Reports from various software companies highlight the importance of static types in large Python projects, emphasizing their positive effect on code maintainability, readability and type safety. Static typing especially enhances collaboration between developers, clarifying the interfaces via which various modules of the software interact with each other.
Existing academic research in this area demonstrates the impact of static typing on software quality by performing various experiments and empirical studies. Overall, the use of type hints and static type checkers is proven to prevent a large portion of type-related errors.
Reports from various software companies highlight the importance of static types in large Python projects, emphasizing their positive effect on code maintainability, readability and type safety. Static typing especially enhances collaboration between developers, clarifying the interfaces via which various modules of the software interact with each other.
