📋 Linter에 대하여
어디선가 한번씩 보이는 lint / linter라는말... 뭘까?
정의내리자면, linter는 내 코드를 개선시켜주는 tool 이다.
(내 코드를 분석함으로서 내 코드를 개선시켜준다!)
linter의 어원은 다음과 같다고 한다.
원래 C소스 코드를 분석하는 lint
라는 도구가 있었는데 이것 때문인 것 같고, lint
뿐만 아니라 이 당시의 여러 utility
들이 컴파일러 최적화를 위해 소스코드를 분석했다고 한다.
하지만, 현재에는 linter
들은 컴파일러에 국한되지 않고 소스코드 자체를 개선해주는것으로 넓게 사용된다.
오히려 interpreted language
들에게는 개발할 때 에러를 발견해주는 컴파일러가 없다는것을 상기해봤을 때 더욱 소중한것 아닐까?
📋 linter를 사용하는것의 장점
- 에러를 줄일 수 있다.
- 가독성 + 유지보수하기에 좋아진다.
- 리뷰시 코드스타일에 대한 이슈를 줄일 수 있다.
- 객관적인 코드 품질측정이 가능해진다.
- 등등...
📋 Types of checks Linters provide
- Syntax Errors
- Code standards adherence(코드 표준 준수) -> 요것이 내가 lint에 대해 정리한 이유
- Potential problems (a.k.a code smells)
- Security checks
📋 Static analysis(정적분석)
이러한 linter들은 결국 정적분석의 일환으로 생각할 수 있을 것 같다.
정적분석이란? pre-run debug
정도로 생각하면 좋을 것 같다.
이것을 통해 error, convention adherence 등의 잠재적인 문제를 찾을 수 있다.
📋 Swift Lint
이름과 같이 swift언어의 linter이다.
누군진 모르지만, 누군가가 swift의 code convention을
정해놨고, swift lint
를 적용하면, 내 코드에서 그 convention을 지키고있는지를 확인해주는 tool!
현재 수 많은 rule들이 존재하고 그 것은 이 링크에서 확인할 수 있다. 당연히 지금도 개발중이겠지?
🍎 결론
🧐 조금 더 복잡한코드를 개발할 때가 되면 lint의 사용은 나에게 매우 도움이 될 수 있을 것 같다!
그 때가 되면 아래 첨부 링크들을 확인하고, 한 번 사용해보자!
참고했던 글
What is a linter? Here's a Definition and Quick-Start Guide
Swift Link 써보기
linter를 이용한 코딩스타일과 에러 체크하기(Subicura님 블로그)
내 프로젝트에 Swift Lint를 적용해보자(Zedd님 블로그)
'공부 > [개발 관련]' 카테고리의 다른 글
[개발 관련] Design pattern(디자인 패턴)에 대하여 (0) | 2022.01.29 |
---|---|
[개발 관련] 객체지향 프로그래밍에 대하여 (0) | 2022.01.15 |
[PR: Pull Request에 대하여] PR의 목적과, 좋은 PR이란 어떤 것일까? (0) | 2022.01.04 |
공부/[개발관련][ Django(장고)] - 파이썬을 이용한 서버개발 3 - 장고의 기초적인 개발 순서 (0) | 2021.07.07 |
[VS Code] - pylint import error 관련 해결 방법 (0) | 2021.06.17 |
댓글