소스 검색

Обновить 'Лекции/Linter/Linter.md'

u20lyashkov 2 년 전
부모
커밋
b3a328ae17
1개의 변경된 파일23개의 추가작업 그리고 35개의 파일을 삭제
  1. 23 35
      Лекции/Linter/Linter.md

+ 23 - 35
Лекции/Linter/Linter.md

@@ -1,35 +1,23 @@
-# Linter  
-
-Что такое линтер: зачем, когда и кем используется
-
-Что такое линтер
-Линтер (от англ. слова lint) – статический анализатор кода, который указывает на “подозрительные” участки программы и тем самым помогает программисту писать
- более качественный код. Подозрительными участками может быть любой код, в котором есть ошибка (по мнению линтера). Обычно, линтер устанавливается на компьютер 
-программиста, а точнее в IDE.
-
-IDE – это среда разработки, например, Xcode, Android Studio, Visual Code Studio.
-
-Зачем нужен линтер
-Когда несколько программистов работают на одном большом проекте, возникают проблемы – у каждого программиста свой стиль написания кода, свое понимание того как нужно 
-реализовывать различные участки программы. Из-за того что все пишут так как они этого хотят, другим разработчикам сложно быстро вовлечься в процесс работы в новом для них 
-проекте.
-
-В линтер можно “установить” определенный набор правил, которым должен будет соответствовать написанный программистом код. Например, можно ограничить длину строки до 100 
-символов, запретить вложенные тернарные операторы и лишние пробелы. Это может помочь привести код проекта к более единому стилю.
-
-Также, когда программист пишет код, он может забывать убирать лишние переменные и пробелы в коде. Линтер же будет “подсвечивать” весь мусор, поэтому программист сможет на 
-это вовремя обратить внимание.
-
-Какие бывают линтеры?
-
-Самые простые проверяют только стиль, например, Flake8. В какой-то степени ещё и Black, но скорее это автоформатор-линтер. Линтеры сложнее проверяют семантику, а не только 
-стилистику: что вы делаете, зачем, и бьют вас по рукам, если пишете с ошибками. Хороший пример — Pylint, который мы все знаем, пользуемся и любим. Я называю такие линтеры — 
-Best practices. Третий тип — Type checking, эти линтеры немного в стороне. Type checking в Python — новинка, её сейчас делают две конкурирующие платформы: Mypy и Pyre.
-
-Как работает линтер
-Обычно линтер работает в реальном времени и анализирует файлы и написанный код на ходу. Хотя, все зависит и от самого инструмента (ага, он не один): есть линтеры работающие 
-в реальном времени, а есть линтеры, которые необходимо запустить, например, перед отправкой кода в GitHub.
-
-Стоит отметить, что для каждого языка программирования существует свой анализатор кода, и даже не один. Например, у языка программирования JavaScript есть ESlint, JSLint, 
-JSHint. У PHP есть PHP_CodeSniffer, NoVerify. А у Python есть Flake8 и Pylint. Они плюс-минус похожи, но некоторые аспекты в них могут отличаться. Одни ищут больше ошибки, 
-другие следят за “красотой” кода. Одни работают в реальном времени, другие срабатывают перед компиляцией программы.
+# Linter  
+  
+### Что такое линтер  
+**Линтер** (от англ. слова lint) – статический анализатор кода, который указывает на “подозрительные” участки программы и тем самым помогает программисту писать более качественный код. Подозрительными участками может быть любой код, в котором есть ошибка (по мнению линтера). Обычно, линтер устанавливается на компьютер программиста, а точнее в IDE.  
+  
+IDE – это среда разработки, например, Xcode, Android Studio, Visual Code Studio.  
+  
+### Зачем нужен линтер  
+Когда несколько программистов работают на одном большом проекте, возникают проблемы – у каждого программиста свой стиль написания кода, свое понимание того как нужно  
+реализовывать различные участки программы. Из-за того что все пишут так как они этого хотят, другим разработчикам сложно быстро вовлечься в процесс работы в новом для них проекте.  
+  
+В линтер можно “установить” определенный набор правил, которым должен будет соответствовать написанный программистом код. Например, можно ограничить длину строки до 100 символов, запретить вложенные тернарные операторы и лишние пробелы. Это может помочь привести код проекта к более единому стилю.  
+
+Также, когда программист пишет код, он может забывать убирать лишние переменные и пробелы в коде. Линтер же будет “подсвечивать” весь мусор, поэтому программист сможет на это вовремя обратить внимание.  
+  
+### Какие бывают линтеры?  
+  
+Самые простые проверяют только стиль, например, Flake8. В какой-то степени ещё и Black, но скорее это автоформатор-линтер. Линтеры сложнее проверяют семантику, а не только стилистику: что вы делаете, зачем, и бьют вас по рукам, если пишете с ошибками. Хороший пример — Pylint, который мы все знаем, пользуемся и любим. Я называю такие линтеры — Best practices. Третий тип — Type checking, эти линтеры немного в стороне. Type checking в Python — новинка, её сейчас делают две конкурирующие платформы: Mypy и Pyre.  
+  
+### Как работает линтер
+Обычно линтер работает в реальном времени и анализирует файлы и написанный код на ходу. Хотя, все зависит и от самого инструмента (ага, он не один): есть линтеры работающие в реальном времени, а есть линтеры, которые необходимо запустить, например, перед отправкой кода в GitHub.  
+  
+Стоит отметить, что для каждого языка программирования существует свой анализатор кода, и даже не один. Например, у языка программирования JavaScript есть ESlint, JSLint, JSHint. У PHP есть PHP_CodeSniffer, NoVerify. А у Python есть Flake8 и Pylint. Они плюс-минус похожи, но некоторые аспекты в них могут отличаться. Одни ищут больше ошибки, другие следят за “красотой” кода. Одни работают в реальном времени, другие срабатывают перед компиляцией программы.