제1부분: 사운드 클라우드에서의 코드 품질 개념
6185 단어 githubsonarcloudcloudcodequality
공사팀/팀에서 우리는 항상 자신이 양난에 빠져 적합하고 효율적인 코드 분석 도구를 선택할 수 없다는 것을 발견한다.이것은 우리가 가장 좋은 디자인 실천 분석 코드 라이브러리를 사용하는 데 필요한 모든 기본 특성과 지표를 제공할 수 있는 도구이다.팀은 코드 냄새, 버그, 빈틈을 더 빨리 검출함으로써 코드 문제의 합병을 방지하기를 바란다.그 밖에 그들은 각자의pull 요청과 저장소의 코드 통합에서 피드백을 신속하고 정확하게 보기를 희망한다.
소프트웨어 품질 공학의 주요 목표는 다음과 같다.
개술
여러 해 동안 저는 많은 코드 분석 도구와 협력하여 서로 다른 팀의 개발자, 예를 들어Codacy, code Climate, DeepScan과 Sonar Cloud를 도왔습니다.많은 시간을 들여 수나운 프로젝트를 시험하고 설치한 후에 나는 그것이 사람들 속에서 뛰어나다는 것을 깨달았다.그것은 상술한 모든 소프트웨어 품질 공사 목표를 포함하는 기능을 제공하는 전면적인 분석 엔진을 가지고 있다.나와 나의 팀을 매혹시키는 몇 가지 특징은 다음과 같다.
우리는 음향 나운 생태계와 그의 모든 핵심 기능이 어떻게 결합되는지 탐색하여 귀하께 전면적인 코드 분석 체험을 제공할 것입니다.
소나운 생태계
항목
Sonar Cloud에서 단일 저장소는 단일 항목에 해당합니다.이것이 바로 그들이 당신이 가지고 있는 모든 메모리 라이브러리에 독특한 코드 품질 데이터와 도량 기준을 어떻게 유지하는가입니다.
Monorepo 지원
사운드 클라우드는 확실히 monorepo 프로젝트를 지원합니다.여러 개의 항목을 만들 수 있습니다. 항목마다 하나의 단독monorepo 항목에 대응하고, 이 항목들은 같은 저장소에 귀속됩니다.이를 통해 다음을 수행할 수 있습니다.
표준 접근 방식:
{organisationName-project-monorepoName}
Project 1: sampleorg-domain-frontend
Project 2: sampleorg-domain-backend
만약에 조직이 서로 다른 공사팀에서 대량의monorepo 프로젝트를 유지한다면 수나 클라우드에서 이 프로젝트들을 쉽게 식별할 수 있다는 점은 매우 유용합니다.그러나, 너는 네가 너에게 적합하다고 생각하는 모든 명명 관례를 따를 수 있다.새 코드 정의
소나 클라우드는 Clean As You Code의 개념을 따른다.핵심 사상은 새로운 코드에 주의력과 정력을 집중하는 것이다.기능을 개발하고 개선할 때 SonarCloud은 제출할 때마다 코드를 분석하고 코드의 품질 문제와 빈틈을 알려 줍니다.이것은 즉시 문제를 해결하고 프로젝트에 추가된 모든 새 코드가 항상 깨끗한지 확인합니다.자세한 내용은 해당 문서를 참조하십시오.
이에 따라 새로운 코드 정의가 나왔다.프로젝트에 대한 정확한 새 코드 정의를 설정하는 것은 Sonar Cloud를 충분히 이용하는 데 매우 중요합니다. 어떤 코드 변경이 최신으로 여겨지는지 확인하고, 코드의 문제를 해결할 때 '코드를 작성할 때 깨끗하게 유지하는' 방법을 사용할 수 있습니다.새 코드 정의를 구성할 때 고려해야 할 몇 가지 옵션이 있습니다.
초기 버전: 프로젝트
특정 버전: 프로젝트
일수: 지정된 일수(숫자)
특정 날짜: 지정된 날짜
초기 코드 분석을 실행할 때 '새 코드' 분석을 제공하지 않습니다.반대로 전체 프로젝트를 스캔하여 전체 코드의 품질 건강 상태를 제공합니다.새로운 제출을 계속 분석할 때, Sonar Cloud는 당신에게 전면적이고 새로운 코드 품질 건강 분석을 제공할 것입니다. (위의 그림과 같습니다.)
프로젝트 단계나 조직 단계에서 새로운 코드 정의를 설정할 수 있습니다. 후자는 이미 만든 새로운 프로젝트에 정의를 자동으로 적용하는 방법을 제공합니다.
품질 게이트
기술적으로 말하자면, 품질 게이트는 일종의 도량 표준으로, 코드가 프로젝트에 필요한 최저 품질 등급을 충족시키는지 알려줄 것이다.이것은 매번 분석 결과에 적용되는 조건 그룹을 포함한다.결과가 품질 게이트 조건을 충족시키거나 초과하면 통과 또는 실패 상태 중 하나가 표시됩니다.새 코드와 전체 코드의 조건을 정의할 수 있습니다.이러한 상황의 몇 가지 예는 다음과 같다.
master
), 기타 분기 및 Pull 요청에서 품질 게이트를 분석하고 계산합니다.프로젝트에 대해 임의의 수량의 품질 문을 만들고, 모든 프로젝트에 사용하거나, 생성된 모든 프로젝트에 적용되는 기본 품질 문을 만들 수 있습니다.품질 관문 사용자정의 예는 다음과 같습니다.
품질 개요
품질 개요 파일은 코드 분석 기간에 적용되는 프로그래밍 언어 규칙임을 알 수 있습니다.기본적으로 Sonar Cloud에서 지원하는 프로그래밍 언어에는'Sonar 방식'이라는 내장 프로필이 있는데 현재 시장의 표준 모범 사례를 사용합니다.대부분의 프로젝트에 음향 수신 방식이 가장 적합하지만, 어떤 경우, 엔지니어링 팀은 그들의 요구에 가장 적합한 프로필을 맞춤형으로 설정하기를 원한다.
나뭇가지
수나운에는 단명분지와 장수명분지 두 가지 유형의 분지 분석이 있다.
단명 분지
말하자면, 이 지점들은 임시로 그것들에 대한 분석을 수행하는 데 사용되며, 통상적으로pull 요청을 통해 사용된다.단기 지점은 30일 후에 자동으로 삭제되며 분석할 필요가 없다.
장수의 갈래
부락이 민첩한 방법을 따를 때 이 지점들은 매우 유용하다. 그들은 Git류 기술을 이용하여 상류 지점 (sprint,release) 을 유지한다.이 지점들은 삭제될 때까지 사운드 클라우드 프로젝트 기록에 보존될 것입니다.일부 기업은 오랜 기간 상위 지점을 유지해 왔기 때문에 이 옵션은 주 지점(
master
) 옆에서 이러한 지점에 대한 코드 분석에 유용합니다.장수 분기 정의
장수 지점은 프로젝트 단계에서 정의된다.프로젝트 설정 > 관리 > 분기 및 끌어오기 요청으로 이동하기만 하면 됩니다.장수 분지는 정규 표현식 모델을 따른다.
기본값은
(branch|release)-.*
입니다.이는 지점의 이름이 branch-
또는 release-
으로 시작할 때 장수 지점으로 간주된다는 뜻이다.프로젝트 설정
이러한 모든 개념과 용어는 사실상 프로젝트와 조직 설정(질량문, 질량개요, 장수지분, 새로운 코드 정의, Monorepo 지원)이다.코드 덮어쓰기 배제, 테스트 파일 포함과 배제, 복사 포함, 원본 파일 배제와 포함 등 일반적인 설정과 수반된다.documentation을 참조하여 설치할 수 있습니다.
요약
나는 이 제1부분의 문장이 당신에게 음향 나운의 어떻게 운행하는지와 그것이 가져오는 소프트웨어 공학의 질에 대한 견해를 제공하기를 바랍니다.본고의 두 번째 부분은 GitHub 메모리 라이브러리로 Sonar 클라우드 프로젝트를 설정하고 GitHub 조작으로 코드 분석을 수행하는 방법을 소개할 것입니다.
사진 출처: https://alexandrebrisebois.files.wordpress.com/2014/05/2011-09-18_code_reviews.png
Reference
이 문제에 관하여(제1부분: 사운드 클라우드에서의 코드 품질 개념), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/jeiman/part-1-concepts-of-code-quality-in-sonar-cloud-318j
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(제1부분: 사운드 클라우드에서의 코드 품질 개념), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jeiman/part-1-concepts-of-code-quality-in-sonar-cloud-318j텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)