Python

I'm not a great programmer; I'm just a good programmer with great habits. - Kent Beck

Style and Syntax

PEP 8 – Style Guide for Python Code https://peps.python.org/pep-0008/arrow-up-right

Style and Syntax Tools

Pylint https://www.pylint.org/arrow-up-right Code analysis for Python

Flake8 https://flake8.pycqa.org/en/latest/arrow-up-right Your Tool For Style Guide Enforcement

Testing

Write tests until fear is transformed into boredom - Kent Beck, Test-Driven Development: By Example

Testing Tools

Unitest https://docs.python.org/3/library/unittest.htmlarrow-up-right The unittest unit testing framework was originally inspired by JUnit and has a similar flavor as major unit testing frameworks in other languages. It supports test automation, sharing of setup and shutdown code for tests, aggregation of tests into collections, and independence of the tests from the reporting framework.

Pytest https://docs.pytest.org/arrow-up-right The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries.

Coverage.py https://coverage.readthedocs.io/arrow-up-right Coverage.py is a tool for measuring code coverage of Python programs. It monitors your program, noting which parts of the code have been executed, then analyzes the source to identify code that could have been executed but was not.

Docstrings

PEP 257 - Docstring Conventions https://peps.python.org/pep-0257/arrow-up-right

Sphinx https://www.sphinx-doc.org/en/master/tutorial/automatic-doc-generation.htmlarrow-up-right Sphinx is a documentation generator or a tool that translates a set of plain text source files into various output formats, automatically producing cross-references, indices, etc. That is, if you have a directory containing a bunch of reStructuredText or Markdown documents, Sphinx can generate a series of HTML files, a PDF file (via LaTeX), man pages and much more.

doxygen https://www.doxygen.nl/arrow-up-right Doxygen is a widely-used documentation generator tool in software development. It automates the generation of documentation from source code comments, parsing information about classes, functions, and variables to produce output in formats like HTML and PDF. By simplifying and standardizing the documentation process, Doxygen enhances collaboration and maintenance across diverse programming languages and project scales.

Last updated