새 프로젝트에 참여하거나 오픈 소스 코드를 읽을 때 일부 프로젝트는 균일하게 조직되고 잘 구조화 된 반면 다른 프로젝트는 지저분하고 얽혀 있다는 것을 눈치 챘을 것입니다. 우리는 코드베이스에 이러한 효과를 산출 요인을 요약하는 경우,우리는 코드 규칙의 개념을 건너.

발견하자:

  • 코드 규칙은 무엇입니까?
  • 그들의 채택은 어떻게 당신의 프로젝트에 큰 이익을 가져올 수 있습니까?
  • 스위프트린트란?
  • 그리고 어떤 스위프트 코드 스타일을 선택해야합니까?

스위프트 코드 컨벤션 정의

코드 컨벤션은 파일 구성,프로그래밍 관행,디자인 패턴,아키텍처 접근 방식 등을 설명하는 일련의 것과하지 말아야 할 것입니다. 팀,조직 또는 개인이 따르는 공식적인 규칙 집합이거나 특정 코딩 관행을 적용하는 습관처럼 비공식적 일 수 있습니다.

코드 스타일은 들여 쓰기,쉼표 위치,중괄호,대문자 등과 같은 파일 형식을 제어하는 코드 규칙의 하위 집합입니다. 스위프트 커뮤니티에서 둘 사이의 구별은 일반적으로 만들어지지 않고 일반적인 용어 스위프트 코드 스타일 또는 때로는 스위프트 스타일 가이드가 사용됩니다.

코딩 규칙은 다음과 같습니다:

  • 파일 이름 지정:단일 형식을 포함하는 파일의 이름은 해당 형식과 같아야 합니다.
  • 줄 길이 제한:한 줄의 코드는 160 자를 초과해서는 안 됩니다.
  • 명명:변수는lowerCamelCase입니다.

스위프트 코드 스타일을 사용하는 이유

모든 스위프트 개발자는 언어가 엄청난 잠재력을 가지고 있다는 것을 알고 있으며,이는 많은 복잡성을 가져오고 코드를 얽히고 읽고 유지하기가 어렵습니다. 따라서 스위프트 코드 스타일의 핵심 목표는 스위프트 코드 작성의 좋고 나쁜 관행을 설명함으로써 이러한 복잡성을 줄이는 것입니다.

왜 코드를 읽기 쉽게 만드는 것이 중요합니까?

로버트 마틴에 따르면,우리가 코드를 읽는 데 쓰는 시간은 코드를 쓰는 것보다 10 배 이상 많다. 또한 새로운 코드를 작성하기 위해 기존 코드를 지속적으로 읽고 있습니다.

소프트웨어 공학의 사실과 오류에 대한 또 다른 연구에 따르면 전체 프로그램 비용의 40%-80%가 유지 보수로 이동한다고합니다.

스위프트 스타일 가이드에서 얻을 수있는 이점을 요약 해 보겠습니다.:

  • 프로젝트 구조를 이해하는 데 도움이됩니다.
  • 은 코드 가독성을 향상시킵니다.
  • 는 정비를 쉽게 합니다.
  • 새 팀 구성원을 위한 온보딩 속도가 빨라집니다.
  • 은 최상의 프로그래밍 관행을 마스터 할 수있는 가능성을 제공합니다.
  • 은 커뮤니티의 프로그래머 간의 커뮤니케이션 도구가 된다.

이러한 큰 영향으로 인해 코딩 규칙은 일반적으로 조직과 전체 프로그래밍 커뮤니티에서 채택됩니다.

처음부터 코드 스타일을 디자인하는 것은 사소한 작업이며 통합된 노력이 필요합니다. 다행히 스위프트 개발자로서 휠을 재발견 할 필요가 없으며 기존의 여러 스위프트 스타일 가이드를 활용할 수 있습니다.

가장 눈에 띄는 스위프트 코딩 스타일을 더 자세히 살펴 보겠습니다.

스위프트 코드 스타일 탐색

좋은 코드 스타일의 정의는 주관적이며 내 개인적인 추천은 여러 스타일에 대해 자세히 설명하고 프로젝트 요구에 따라 모양을 만드는 것입니다. 아래 목록은 도움이 여기에 있습니다.

1. Swift.org

이 가이드는 스위프트 커뮤니티에서 기본적으로 표준입니다. 그것은 모든 스위프트 개발자가 이해하고 따라야 규칙의 절대 최소 세트를 통합합니다.

이 가이드는 모든 시스템 프레임워크가 뒤따르는 스위프트 아피디자인디자인의 기본적 측면에 초점을 맞추고 있다. 또한 코코아 프레임워크를 더 쉽게 읽고 이해할 수 있도록 합니다.

그 자체로,Swift.org 코드 스타일은 포괄적 인 규칙 집합을 제공하기에 충분하지 않지만 아래에 나열된 다른 가이드에 큰 도움이됩니다.

링크:Swift.org 코드 스타일

2. 구글

당신은 일반적으로’구글’과’스위프트’를 한 문장으로 접하지는 않지만 이번에는 그렇지 않습니다. 구글은 의심 할 여지없이 코드 규칙의 중요성을 이해하고 구글 스타일 가이드에 명시된 바와 같이,모든 주요 오픈 소스 프로젝트에 대한 규칙을 만듭니다. 내 생각 엔 우리는이 신속한 가이드에 대한 텐서 플로우에 감사해야한다는 것입니다.

이 스위프트 코드 스타일은 포괄 성이 뛰어납니다. 그것은 단순히 여기에 나열이 문서를 두 배로 만들 것 이라고 너무 많은 측면을 커버.

이 가이드에 대해 정말로 가치있는 것은 모든 언어의 기초가되는 훌륭한 프로그래밍 관행을 나열함으로써 모든 점이 잘 확립되어 있다는 것입니다. 내가보기 엔 당신이 신속한 가이드 여부를 찾고 있는지 여부를 읽을 것을 권장 프로그래밍 사례 섹션은 정말이 측면에서 빛난다.

이 가이드를 읽고 이해 한 후 당신은 자신에게 일반적으로 더 나은 프로그래머를 찾을뿐만 아니라 주머니에 신속한 트릭의 무리를 추가합니다.

링크:구글 스위프트 코드 스타일

3. 레이 웬 더 리치

뒤에 팀 raywenderlich.com 이오스 커뮤니티에서 잘 알려져 있으며 특별한 소개가 필요하지 않습니다. 레이의 기사처럼,가이드는 명확하고 이해할 수있는 방식으로 작성 및 신속한 이민자에 특히 적합하다

이 가이드는 의심 할 여지없이 명확하고 일관되고 간단한 존재의 명시된 목표에 도달합니다. 각 규칙 뒤에는 완전한 설명,추론 및해야 할 일과하지 말아야 할 예가 있습니다.

이 가이드에 대해 내가 좋아하는 것은 신속한 구문과 코드 서식을 뛰어 넘고 사용되지 않는 코드를 피하는 것과 같은 훌륭한 프로그래밍 관행을 설명하고 가치와 참조 유형의 차이,지연 초기화의 개념,액세스 제어,조기 반환 등을 설명합니다.

이 글을 쓰는 시점에서 이미 137 개의 닫힌 끌어오기 요청이 있으며,이는 이 가이드가 커뮤니티에서 크게 지원된다는 것을 보여줍니다.

링크:레이 웬더 리치 스위프트 코드 스타일

4. 링크드 인

링크드 인은 내부 구성 요소를 오픈 소싱에 훌륭한 일을하고 스위프트 사람도 예외는 아니다. 그들의 스위프트 스타일 가이드는 3 년 이상 존재했으며 오픈 소스 커뮤니티와 링크드 인 팀 모두에서 많은 개선을 통합했습니다.

링크드 인 스위프트 가이드,간단한 간결하고 잘 구조화되어있다. 짧은 이론적 설명은 종종 더 나은 특정 규칙 뒤에 추론을 이해하기 위해 제공됩니다. 이 예제는 항상 자명하며 요점을 명확하게 보여줍니다.

이 가이드는 주로 코드 서식에 초점을 맞추고이 목록의 다른 스위프트 코드 스타일과 함께 사용하는 것이 좋습니다.

링크드 인 스위프트 코드 스타일

5. 에어비앤비

에어비앤비 팀은 에어비앤비 커뮤니티에 대한 소중한 기여로 잘 알려져 있습니다. 당시 나는이 기사를 쓰고 있어요,에어 비앤비 스위프트 스타일 가이드는 단지 1 이 목록에 신선한 만드는 것 주 오래.

처음부터 가이드는 코드 스타일이 필요한 이유를 설명함으로써 올바른 컨텍스트를 설정하고 각 점에 완전히 동의합니다.

이 가이드는 읽을 수있는 즐거움입니다:그것은 잘 구조화되어 있으며,규칙은 정확하게 설명되어 있습니다. 그것이 의미가 있다면,각 요점은 도스와 그나마 및 이론적 맥락의 예를 동반합니다. 거의 각 규칙은 스위프트 린트-아래의 몇 단락을 논의 할 것이다 정적 분석기 도구입니다.

나는 특히 에어 비앤비는 내가보기 엔 확인하는 것이 좋습니다 실용적인 신속한 조언을 제공 패턴 섹션을 좋아한다. 예를 들어 변경 가능한 값 대신 변경 불가능한 값을 사용하도록 규정하고 열거 형 정의에 대한 팁을 제공합니다. 내가 가장 좋아하는 것은 어설 션,전제 조건 및 치명적인 오류의 사용이 매우 자세하게 설명되는 예기치 않은 조건을 처리하는 것입니다.

가이드도 쉽게 스크립트의 수단이 될 적용 할 수있는 서식 섹션에서 규칙을 충족하기 위해 엑스 코드 편집기 설정을 제공합니다.

링크:에어비앤비 스는 스타일 가이드

Swift Code 린터 SwiftLint

우리는 모든 인간을 의도적으로 또는 아니지만,우리 모두 잘못을 저지릅니다. 따라서 신속한 코딩 규칙을 문서화하거나 구두로 동의하는 것만으로는 충분하지 않습니다. 실수 수를 최소화하려면 규칙을 린터라고 하는 자동화된 도구로 적용해야 합니다.

린터는 프로그래밍 오류,버그,서식 오류 및 잠재적으로 유해한 구문을 찾는 정적 코드 분석기입니다.

스위프트린트는 사용자 지정 규칙에 따라 구성할 수 있는 가장 널리 사용되는 스위프트 코드 분석기입니다. 당신이 이미 그것을 사용하지 않는 경우,나는 매우 스위프트 린트를 확인하고 가능한 한 빨리 당신의 스위프트 프로젝트에서 그것을 사용하기 시작하는 것이 좋습니다.

스위프트린트에 대해 이해해야 할 가장 중요한 것은’하나의 진정한 스타일’을 강요하지 않고 프로젝트 내에서 일관성을 유지하는 데 도움이된다는 것입니다.

요약

균일 한 코드 규칙은 프로그래밍 생산성에 많은 기여를하며 항상 가능한 한 생산적이기를 원합니다.

가장 주목할 만한 스위프트 코딩 스타일이 있는 목록은 스위프트 모범 사례의 훌륭한 소스이며,사용자 고유의 규칙을 자세히 설명하는 출발점입니다.

좋은 스위프트 코드 스타일은 주관적이고 당신과 당신의 팀의 배려에 남아 있어야합니다. 일단 그것이 승인되고 문서화되면,그런 작풍은 기준이 되고 수많은 이득 귀착되는 가독성을 개량하기 위하여 계획사업의 맞은편에 일관되어야 한다.

스위프트린트는 코딩 규칙을 적용하는 데 도움이 스위프트 커뮤니티에서 널리 채택 된 도구입니다. 그것은 일찍 인간의 실수를 방지하는 데 도움이 프로젝트의 도구 스택에 가치있는 추가 될 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다.