Найти Ρ‚Π΅ΠΌΡƒ
10,2 тыс подписчиков

πŸ”Ž Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ°ΠΊΠΈΡ… инструмСнтов ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ статичСский Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π°?


Для статичСского Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π° Π΅ΡΡ‚ΡŒ нСсколько инструмСнтов:

Pylint - это инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ исходный ΠΊΠΎΠ΄ Π½Π° соотвСтствиС PEP8, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Π΅Ρ‚ ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… Π² ΠΊΠΎΠ΄Π΅.

Flake8 - это ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² сСбС Pylint, PyFlakes ΠΈ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ», ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… соотвСтствиС стиля написания ΠΊΠΎΠ΄Π° ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… ошибки Π² исходном ΠΊΠΎΠ΄Π΅.

Mypy - это статичСский Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ‚ΠΎΡ€ для Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки Π² Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² исходном ΠΊΠΎΠ΄Π΅.

Bandit - это инструмСнт для поиска уязвимостСй Π² исходном ΠΊΠΎΠ΄Π΅ Python.

Black - это инструмСнт для автоматичСского форматирования ΠΊΠΎΠ΄Π° Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ придСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ стиля написания ΠΊΠΎΠ΄Π°.

Pycodestyle β€” это простая консольная ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° для Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π° Python, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ΄Π° Π½Π° соотвСтствиС PEP8. Один ΠΈΠ· ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΡ… Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠΎΠ΄Π°, Π΄ΠΎ 2016 Π³ΠΎΠ΄Π° носил Π½Π°Π·Π²Π°Π½ΠΈΠ΅ pep8, Π½ΠΎ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ ΠΏΠΎ ΠΏΡ€ΠΎΡΡŒΠ±Π΅ создатСля языка Python Π“Π²ΠΈΠ΄ΠΎ Π²Π°Π½ Россума.

Vulture β€” это нСбольшая ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° для поиска β€œΠΌΠ΅Ρ€Ρ‚Π²ΠΎΠ³ΠΎβ€ ΠΊΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Python. Она ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ast стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ создаСт абстрактныС синтаксичСскиС Π΄Π΅Ρ€Π΅Π²ΡŒΡ для всСх Ρ„Π°ΠΉΠ»ΠΎΠ² исходного ΠΊΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Π”Π°Π»Π΅Π΅ осущСствляСтся поиск всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, Π½ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Vulture ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ для очистки ΠΈ нахоТдСния ошибок Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ΄Π°Ρ….

Π­Ρ‚ΠΈ инструмСнты ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ качСство ΠΊΠΎΠ΄Π°, ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок, связанных с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ уязвимостями бСзопасности.

ΠŸΠΈΡˆΠΈΡ‚Π΅ Π² коммСнтариях, ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π²Ρ‹ πŸ‘‡

1 ΠΌΠΈΠ½ΡƒΡ‚Π°