Bazel 문서 스타일 가이드

문제 신고 소스 보기 Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Bazel 문서에 참여해 주셔서 감사합니다. 이 내용은 시작하는 데 도움이 되는 빠른 문서 스타일 가이드 역할을 합니다. 이 가이드에서 답변하지 못한 스타일 관련 질문은 Google 개발자 문서 스타일 가이드를 따르세요.

원칙 정의

Bazel 문서는 다음과 같은 원칙을 준수해야 합니다.

  • 간결함 최대한 적은 단어를 사용합니다.
  • 명확함. 쉬운 표현 사용 전문 용어 없이 5학년 수준으로 작성합니다.
  • 일관성. 문서 전체에서 반복되는 개념에 동일한 단어 또는 문구를 사용합니다.
  • 정답입니다. 시간 기반 정보와 미래 약속을 피하여 콘텐츠가 최대한 오래 올바르도록 작성합니다.

쓰기

이 섹션에는 기본적인 작성 도움말이 포함되어 있습니다.

제목

  • 페이지 수준 제목은 H2에서 시작합니다. H1 제목은 페이지 제목으로 사용됩니다.
  • 헤더를 가능한 한 짧게 만드세요. 이렇게 하면 래핑 없이 목차에 맞게 표시됩니다.

    • : 권한
    • 아니요: 권한에 관한 간략한 참고사항
  • 제목에 문장 첫 글자 대문자 사용

    • : 작업공간 설정
    • 아니요: Workspace 설정
  • 제목은 작업에 기반하거나 실행 가능한 것으로 설정하세요. 제목이 개념적일 경우, 이해를 기반으로 할 수 있지만 사용자가 하는 일에 대해 작성하세요.

    • : 그래프 순서 유지
    • 아니요: 그래프 순서 유지

이름

  • Bazel, Starlark와 같은 고유 명사는 대문자로 작성합니다.

    • Yes: 빌드가 끝나면 Bazel이 요청된 대상을 출력합니다.
    • 아니요: 빌드가 끝나면 bazel이 요청된 대상을 출력합니다.
  • 일관성을 유지해야 합니다. 기존 개념에 새 이름을 도입하지 마세요. 해당하는 경우 용어집에 정의된 용어를 사용하세요.

    • 예를 들어 터미널에서 명령어 실행에 관해 작성하는 경우 페이지에서 터미널과 명령줄을 모두 사용하지 마세요.

페이지 범위

  • 각 페이지에는 하나의 목적이 있어야 하며 이 목표는 처음부터 정의해야 합니다. 이렇게 하면 독자가 필요한 것을 더 빠르게 찾을 수 있습니다.

    • : 이 페이지에서는 Windows에 Bazel을 설치하는 방법을 설명합니다.
    • 아니요: (서론 문구 없음)
  • 페이지 끝에서 독자에게 다음으로 할 일을 알려줍니다. 명확한 조치가 없는 페이지의 경우 유사한 개념, 예시 또는 기타 탐색 경로의 링크를 포함할 수 있습니다.

제목

Bazel 문서의 대상은 주로 Bazel을 사용하여 소프트웨어를 빌드하는 사용자여야 합니다.

  • 독자를 '당신'이라고 지칭합니다. (어떤 이유로든 '귀하'를 사용할 수 없다면 다음과 같이 성 중립적인 표현을 사용하세요.

    • : Bazel을 사용하여 자바 코드를 빌드하려면 JDK를 설치해야 합니다.
    • MAYBE: 사용자가 Bazel을 사용하여 Java 코드를 빌드하려면 JDK를 설치해야 합니다.
    • 아니요: 사용자가 Bazel을 사용하여 자바 코드를 빌드하려면 JDK를 설치해야 합니다.
  • 일반 Bazel 사용자가 아닌 경우 페이지 시작 부분이나 섹션에서 잠재고객을 정의합니다. 다른 대상에는 유지관리자, 참여자, 이전자 또는 기타 역할이 포함될 수 있습니다.

  • '저희'를 사용하지 마세요. 사용자 문서에는 작성자가 없으며, 무엇이 가능한지 사람들에게 알려주기만 하면 됩니다.

    • : Bazel이 발전함에 따라 호환성을 유지하기 위해 코드베이스를 업데이트해야 합니다.
    • 아니요: Bazel은 계속 발전하고 있으며, Bazel을 변경할 때는 호환되지 않거나 Bazel 사용자가 일부를 변경해야 하는 경우가 있습니다.

시간적

가능하면 특정 날짜(2022년 2분기)를 언급하거나 '지금', '현재', '곧'과 같이 시간에 관한 용어를 사용하지 마세요. 이러한 데이터는 빠르게 비활성화되며 향후 예측인 경우 잘못될 수 있습니다. 대신 버전 수준을 지정하세요. 예를 들어 'Bazel X.x 이상에서는 <feature> 또는 GitHub 문제 링크를 지원합니다.

  • : Bazel 0.10.0 이상에서는 원격 캐싱을 지원합니다.
  • 아니요: Bazel은 곧 원격 캐싱을 지원할 예정입니다(2017년 10월 예정).

긴장감 있는 음악

  • 현재 시제를 사용합니다. 명확히 하는 데 꼭 필요한 경우가 아니라면 과거 또는 미래 시제를 피하세요.

    • : Bazel이 이 규칙을 준수하지 않는 종속 항목을 발견하면 오류를 표시합니다.
    • 아니요: Bazel이 이 규칙을 준수하지 않는 종속 항목을 발견하면 오류가 발생합니다.
  • 가능하면 주체가 물체에 대해 작업을 수행하는 수동태가 아닌 능동태(대상이 대상에 대해 행동하는 경우)를 사용하세요. 일반적으로 능동태는 누가 책임을 지는지 보여주기 때문에 문장을 더 명확하게 만듭니다. 능동태를 사용하면 명확성이 떨어지는 경우 수동태를 사용합니다.

    • : Bazel이 X를 시작하고 출력을 사용하여 Y를 빌드합니다.
    • 아니요: X가 Bazel에 의해 시작된 후 Y가 출력으로 빌드됩니다.

분위기

비즈니스 친화적 어조로 작성해 줘.

  • 구어체를 사용하지 마세요. 영어로 된 문구는 번역하기가 더 어렵습니다.

    • : 규칙 집합이 양호함
    • 아니요: 그렇다면 좋은 규칙 집합이란 무엇인가요?
  • 지나치게 격식을 차린 표현을 피합니다. 테크에 관심이 있지만 세부 사항은 모르는 사람에게 그 개념을 설명하는 것처럼 작성하세요.

형식 지정

파일 형식

가독성을 위해 줄을 80자(영문 기준)로 래핑합니다. 긴 링크나 코드 스니펫은 더 길 수 있지만 새 줄에서 시작해야 합니다. 예를 들면 다음과 같습니다.

  • '여기' 또는 '아래' 대신 구체적인 링크 텍스트를 사용하세요. 이렇게 하면 문서를 더 쉽게 스캔할 수 있고 스크린 리더에 더 적합합니다.

    • : 자세한 내용은 [Bazel 설치]를 참고하세요.
    • 아니요: 자세한 내용은 [여기]를 참고하세요.
  • 가능하면 문장을 링크로 끝맺습니다.

    • : 자세한 내용은 [링크]를 참고하세요.
    • 아니요: 자세한 내용은 [링크]를 참고하세요.

목록

  • 순서가 지정된 목록을 사용하여 단계별로 작업을 완료하는 방법을 설명합니다.
  • 작업 기반이 아닌 항목을 나열하려면 정렬되지 않은 목록을 사용합니다. (알파벳순, 중요도 등의 정렬 순서는 사용해야 합니다.)
  • 병렬 구조로 쓰기 예를 들면 다음과 같습니다.
    1. 모든 목록 항목을 문장으로 만듭니다.
    2. 같은 시제의 동사부터 시작합니다.
    3. 따라야 할 단계가 있다면 순서가 지정된 목록을 사용합니다.

자리표시자

  • 사용자가 변경해야 하는 변수를 표시하려면 꺾쇠괄호를 사용합니다. 마크다운에서는 백슬래시(\<example\>)를 사용하여 각괄호를 이스케이프 처리합니다.

    • : bazel help <command>: <command> 도움말 및 옵션을 출력합니다.
    • 아니요: bazel help command: 'command'의 도움말 및 옵션을 출력합니다.
  • 특히 복잡한 코드 샘플의 경우 컨텍스트에 맞는 자리표시자를 사용하세요.

목차

사이트에서 지원하는 자동 생성 TOC를 사용합니다. 수동 TOC를 추가하지 마세요.

코드

코드 샘플은 개발자에게 최고의 친구입니다. 작성 방법을 이미 알고 있겠지만 몇 가지 팁을 알려드립니다

작은 코드 스니펫을 참조하는 경우 문장에 삽입할 수 있습니다. 명령어 복사와 같이 리더에서 코드를 사용하도록 하려면 코드 블록을 사용하세요.

코드 블록

  • 간략하게 만듭니다. 코드 샘플에서 중복되거나 불필요한 텍스트를 모두 제거합니다.
  • Markdown에서는 샘플의 언어를 추가하여 코드 블록의 유형을 지정합니다.
```shell
...
  • 명령어와 출력을 다른 코드 블록으로 구분합니다.

인라인 코드 형식 지정

  • 파일 이름, 디렉터리, 경로, 코드의 작은 부분에 코드 스타일을 사용하세요.
  • 기울임꼴, '따옴표' 또는 굵게 대신 인라인 코드 스타일을 사용하세요.
    • : bazel help <command>: <command> 도움말 및 옵션을 출력합니다.
    • 아니요: bazel help command: 'command'의 도움말 및 옵션을 출력합니다.