Scala 용 정적 분석 도구의 현재 상태는 무엇입니까?
Scala의 정적 분석에 관한 StackOverflow 질문을 보았지만 그 질문은 2009 년에 답변되었습니다. 아시다시피 Scala 도구는 매우 빠르게 변화하고 있습니다.
따라서 Scala의 정적 분석 도구의 현재 상태에 익숙한 사람이 Scala에 해당하는 Findbugs가 있는지 말해 줄 수 있는지 궁금합니다. 나는 Findbugs가 Scala에 대해 불필요한 경고를 많이 발행한다는 것을 발견했습니다. 아마도 "객체"싱글 톤이 특성 등으로 인해 바이트 코드로 컴파일되는 방식과 관련이 있습니다. Scalastyle이 Java CheckStyle의 Scala 버전 일뿐만 아니라 Findbugs 및 PMD 비트를 포함합니다. 그러나 Findbug 및 / 또는 PMD를 모두 구현하지 않는 경우이를 보완하는 다른 도구가 있습니까? 아니면 Scalastyle은 스타일 검사뿐만 아니라 코드 품질 향상에도 좋은가요?
또한 Scala와 Sonar의 통합은 어떻습니까? Scala Sonar 플러그인 (Scalastyle과 함께 작동)은 신뢰할 수 있습니까?
다음은 Scala를 겨냥하거나 잘 작동하는 일부에 대한 2014 년 8 월 현재 업데이트 된 답변입니다.
개인적으로 저는 JVM 또는 Java가 너무 많은 오탐으로 끝나거나 대부분 Java 특정 클래스를 대상으로하는 검사를한다고 생각합니다. 예를 들어 Scala에서는 Java 컬렉션을 사용하지 않기 때문에 모든 findbugs 컬렉션 기반 검사가 필요하지 않습니다. 또 다른 예는 Scala에서 관련이없는 정적 필드 사용에 대한 검사입니다.
- Scalastyle https://github.com/scalastyle/scalastyle
- Scapegoat https://github.com/sksamuel/scalac-scapegoat-plugin
- 사마귀 제거제 https://github.com/typelevel/wartremover
- Linter https://github.com/HairyFotr/linter
- CPD https://github.com/sbt/cpd4sbt
- Abide https://github.com/scala/scala-abide
- Codacy-scalameta https://github.com/codacy/codacy-scalameta
것 wartremover는 대안으로 계산? 또한 -Xlint
및 -Ywarn-adapted-args
scalac의 힘 도움의 명령 줄 매개 변수 버그의 특정 유형을 잡기.
Codacy 는 사용자 정의하기 쉬운 도구를 개발했습니다 -scala -meta : https://github.com/codacy/codacy-scalameta
구경하다
그리고 find-sec-bugs 는 스칼라를 약간 지원 한다고 생각합니다.
Codacy에 따르면 다음은 도구입니다 (2015 년 10 월까지 업데이트 됨).
- ScalaStyle
- 사마귀 제거제
- 머물다
- Scapegoat -Scala 2.11.x +에서 작동하는 sbt-scapegoat
출처 : Scala 정적 분석 도구에 대한 Codacy 블로그
매우 강력한 Scalac 컴파일러를 사용하지 않는 이유는 무엇입니까? 예를 들어 몇 가지 유용한 옵션이 있습니다.
- -선택 안 함
- -천칭
- -특색
...기타.
'IT박스' 카테고리의 다른 글
삽입 모드로 들어 가지 않고 개행을 삽입하십시오. (0) | 2020.12.09 |
---|---|
Scala 제네릭 메서드-T에 사용할 수있는 ClassTag 없음 (0) | 2020.12.09 |
CSS만으로 사전에 줄 번호 만들기 (0) | 2020.12.09 |
C #에서 임의의 10 진수 생성 (0) | 2020.12.09 |
양식 인증 시간 초과와 세션 시간 초과 (0) | 2020.12.09 |