We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Writing Good Python

Formale Metadaten

Titel
Writing Good Python
Untertitel
Tools and libraries for achieving code consistency
Serientitel
Anzahl der Teile
130
Autor
Lizenz
CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Like other programming languages, it is easy to write cryptic, unmaintainable, and rigid Python code. Moreover, in teams, this problem escalates due to varied coding styles of developers. How to ensure code quality and consistency? My goal with this talk is to educate my audience about some tools and libraries that can help us in making our code more consistent. I was a Software Engineer who wrote Automation systems in Python for some of the fortune 500s. I intend to cover the following major ideas: • What is a high-quality code? How consistency is an important aspect of maintainability? • Ways to achieve consistency in Python o What is PEP8? o “pylint” - a source code, bug, and quality checker for python and follows the style recommended by PEP 8 o What is PEP257? o “pydocstyle” checks compliance with Python docstring conventions. o What is PEP484? o “mypy” provides optional static type checking. o “bandit” which can find common security issues in Python code. o “black” which is a Python source code formatter. • Ways to integrate mentioned tools in development life cycle o While writing (IDE extensions) o During commit (pre-commit hooks) o After push (Build pipelines) • “pre-commit” is a framework for managing and maintaining multi-language pre-commit hooks • Example of an Azure DevOps pipeline integrating all mentioned tools. pylint, pydocstyle, mypy, bandit, black and pre-commit are available on PyPI. My audience should know how to install Python libraries from PyPi using pip.