이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 54.3. 오류 토토 핫 스타일 가이드버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

44.3. 오류 와이즈 토토 스타일 가이드

이 스타일 가이드는 모든 와이즈 토토 전반에 걸쳐 일관되고 사용자 친화적인 스타일 생성자PostgreSQL.

44.3.1. 무엇이 어디로 가는가

기본 와이즈 토토는 짧고 사실적이어야 하며 피해야 합니다. 특정 기능 등 구현 세부 사항 참조 이름."짧음"의미"보통 아래 한 줄에 맞아야 합니다. 조건". 유지하려면 필요한 경우 세부 와이즈 토토를 사용하십시오. 기본 와이즈 토토는 짧거나 언급할 필요가 있다고 느끼는 경우 특정 시스템 호출과 같은 구현 세부 사항 실패했습니다. 기본 와이즈 토토와 세부 와이즈 토토는 모두 사실이어야 합니다. 사용 문제를 해결하기 위해 수행할 작업에 대한 제안에 대한 힌트 와이즈 토토 특히 제안이 항상 그렇지 않을 수도 있는 경우 문제가 발생합니다. 해당됩니다.

예를 들어, 대신에

IpcMemoryCreate: shmget(키=%d, 크기=%u, 0%o) 실패: %m
(기본적으로 힌트인 긴 부록도 포함)

쓰기

기본: 공유 메모리 세그먼트를 생성할 수 없습니다: %m
세부 정보: 실패한 syscall은 shmget(key=%d, size=%u, 0%o)입니다.
힌트: 부록

이유: 기본 메시지를 짧게 유지하면 메시지를 유지하는 데 도움이 됩니다. 요점까지 설명하고 클라이언트가 화면 공간을 오류 메시지에는 한 줄이면 충분하다고 가정합니다. 세부정보 힌트 메시지는 장황한 모드로 강등될 수 있습니다. 아마도 팝업 오류 세부 정보 창이 나타날 것입니다. 또한 세부정보와 힌트도 제공됩니다. 일반적으로 공간을 절약하기 위해 서버 로그에서 표시되지 않습니다. 사용자는 구현 세부 사항에 대한 참조를 피하는 것이 가장 좋습니다. 자세한 내용은 아직 모릅니다.

44.3.2. 서식

형식 지정에 대해 특정 가정을 넣지 마십시오. 메시지 텍스트. 클라이언트와 서버 로그가 줄 바꿈을 예상합니다. 자신의 필요에 맞게. 긴 메시지에서는 개행 문자 (\n)은 제안된 단락 구분을 나타내는 데 사용될 수 있습니다. 하지 마십시오 줄 바꿈으로 메시지를 끝냅니다. 탭이나 기타 도구를 사용하지 마세요 서식 문자. (오류 컨텍스트 표시에서 개행 문자는 다음과 같습니다. 다음과 같은 별도의 컨텍스트 수준에 자동으로 추가됩니다. 함수 호출.)

이유: 메시지가 반드시 표시되는 것은 아닙니다. 터미널형 디스플레이. GUI 디스플레이 또는 브라우저에서는 다음을 수행합니다. 형식 지정 지침은 기껏해야 무시됩니다.

44.3.3. 따옴표

영어 텍스트는 인용할 때 큰따옴표를 사용해야 합니다. 적절하다. 다른 언어로 된 텍스트는 일관되게 사용해야 합니다. 출판관습에 부합하는 인용문의 일종 그리고 다른 프로그램의 컴퓨터 출력.

이유: 작은 따옴표보다 큰 따옴표를 선택하는 것은 다음과 같습니다. 다소 임의적이지만 선호되는 용도로 사용되는 경향이 있습니다. 일부 에 따라 인용문 종류를 선택하는 것이 좋습니다. SQL 규칙에 따른 객체 유형(즉, 문자열 작은따옴표, 식별자는 큰따옴표). 그러나 이것은 많은 사용자가 인지하지도 못하는 언어 내부의 기술적 문제 익숙하기 때문에 다른 종류의 인용 용어로는 확장되지 않습니다. 다른 언어로 번역되지 않고 예쁘네요 그것도 무의미해.

44.3.4. 인용문 사용

파일 이름을 구분하려면 항상 따옴표를 사용하십시오. 사용자 제공 식별자 및 단어를 포함할 수 있는 기타 변수. 마 단어를 포함하지 않는 변수를 마크업하는 데 사용하지 마세요. (예: 연산자 이름).

백엔드에 큰따옴표를 사용하는 함수가 있습니다 필요에 따라 자체 출력(예:format_type_be()). 추가로 넣지 마세요 그러한 함수의 출력 주위에 따옴표를 붙입니다.

이유: 객체는 다음과 같은 경우 모호함을 만드는 이름을 가질 수 있습니다. 메시지에 포함됩니다. 어디에 있는지 표시하는 데 일관성을 유지하세요. 플러그인 이름이 시작되고 끝납니다. 하지만 메시지를 복잡하게 만들지 마세요. 불필요하거나 중복된 따옴표가 있습니다.

44.3.5. 문법 및 구두점

기본 오류 메시지와 오류 메시지에 대한 규칙은 다릅니다. 세부정보/힌트 메시지:

주요 오류 와이즈 토토: 첫 글자를 대문자로 쓰지 마십시오. 와이즈 토토를 마침표로 끝내지 마세요. 생각도 하지 마세요 느낌표로 와이즈 토토를 끝냅니다.

세부사항 및 힌트 와이즈 토토: 완전한 문장을 사용하고 끝 각각 마침표가 있습니다. 문장의 첫 단어를 대문자로 표기하세요.

이유: 구두점을 피하면 클라이언트가 더 쉽게 작업할 수 있습니다. 다양한 문법에 와이즈 토토를 삽입하는 애플리케이션 컨텍스트. 종종 기본 와이즈 토토는 문법적으로 맞지 않습니다. 어쨌든 문장을 완성하세요. (그리고 그것들이 충분히 길다면 문장이 두 개 이상이면 기본 문장과 문장으로 나누어야 합니다. 세부사항 부분.) 그러나 세부사항 및 힌트 와이즈 토토는 더 길고 여러 문장을 포함해야 할 수도 있습니다. 일관성을 위해 그들은 오직 문장만 있는 경우에도 완전한 문장 스타일을 따라야 합니다. 한 문장.

44.3.6. 대문자 대 소문자

첫 번째 문자를 포함하여 와이즈 토토 문구에 소문자를 사용하십시오. 주요 오류 와이즈 토토의 편지. SQL에는 대문자 사용 와이즈 토토에 나타나는 명령 및 키워드.

이유: 모든 것을 더 멋지게 보이게 만드는 것이 더 쉽습니다. 일부 와이즈 토토는 완전한 문장이기 때문에 이런 식으로 일관성을 유지합니다. 일부는 그렇지 않습니다.

44.3.7. 수동태를 피하세요

활성태를 사용하세요. 있을 때는 완전한 문장을 사용하세요. 연기하는 주제 ("A는 할 수 없었습니다 ㄴ"). 제목이 있는 경우 제목 없이 텔레그램 스타일을 사용하십시오. 프로그램 자체가 될 것입니다. 사용하지 마세요"나"프로그램용.

이유: 이 프로그램은 인간이 아닙니다. 척하지 마세요 그렇지 않으면.

44.3.8. 현재 vs 과거 시제

어떤 일을 하려는 시도가 실패했지만, 실패했다면 과거형을 사용하세요. 아마도 다음 번에는 성공할 수 있을 것입니다(아마도 일부를 수정한 후). 문제). 실패가 확실하다면 현재시제를 사용하세요. 영구적입니다.

문장 사이에는 의미론적 차이가 있습니다. 형식의

"%s" 파일을 열 수 없습니다: %m

그리고

"%s" 파일을 열 수 없습니다

첫 번째는 파일을 열려고 시도했다는 의미입니다. 실패했습니다. 메시지는 다음과 같은 이유를 제공해야 합니다."디스크가 가득 참"또는"파일은 그렇지 않습니다 존재한다". 다음 시간이므로 과거형이 적절합니다. 디스크가 더 이상 가득 차지 않거나 문제의 파일이 존재합니다.

두 번째 형식은 열기 기능을 나타냅니다. 명명된 파일이 프로그램에 전혀 존재하지 않거나 개념적으로는 불가능해요. 현재시제가 적절하다 왜냐하면 그 상태는 무기한 지속되기 때문입니다.

이유: 물론입니다. 일반 사용자는 다음을 수행할 수 없습니다. 단지 메시지의 시제만으로 훌륭한 결론을 도출할 수 있으며, 하지만 언어는 우리에게 사용해야 할 문법을 제공하기 때문에 맞습니다.

44.3.9. 객체의 유형

객체 이름을 인용할 때 어떤 종류의 객체인지 명시하세요. 그렇죠.

근거: 그렇지 않으면 아무도 무엇을 알지 못할 것입니다."foo.bar.baz"을 참조합니다.

44.3.10. 괄호

대괄호는 명령 개요에서만 (1) 사용됩니다. 선택적 인수를 나타내기 위해 또는 (2) 배열을 나타내기 위해 아래첨자.

근거: 다른 것은 널리 알려진 내용에 해당하지 않습니다. 관례적인 사용법으로 사람들을 혼란스럽게 할 것입니다.

44.3.11. 오류 와이즈 토토 취합

와이즈 토토에 다른 곳에서 생성된 텍스트가 포함된 경우, 이 스타일로 삽입하세요:

%s 파일을 열 수 없습니다: %m

이유: 가능한 모든 것을 설명하는 것은 어려울 것입니다. 오류 코드를 사용하여 하나의 부드러운 문장으로 붙여넣을 수 있습니다. 일종의 구두점이 필요합니다. 삽입된 텍스트 넣기 괄호 안에도 제안되었지만 다음과 같은 경우에는 부자연스럽습니다. 삽입된 텍스트가 가장 중요한 부분이 될 가능성이 높습니다. 흔히 그렇듯이 메시지입니다.

44.3.12. 오류 이유

와이즈 토토에는 항상 오류 이유가 명시되어야 합니다. 발생했습니다. 예를 들면:

나쁜: %s 파일을 열 수 없습니다.
더 나은 점: %s 파일을 열 수 없습니다(I/O 실패).

이유를 알 수 없다면 코드를 수정하는 것이 좋습니다.

44.3.13. 함수 이름

오류에 보고 루틴의 이름을 포함하지 마십시오 텍스트. 우리는 언제 그것을 알아낼 수 있는 다른 메커니즘을 가지고 있습니다. 필요하며 대부분의 사용자에게는 유용한 정보가 아닙니다. 만약 오류 텍스트는 함수 없이는 의미가 없습니다. 이름을 다시 말해 보세요.

나쁜: pg_atoi: "z"에 오류가 있습니다: "z"를 구문 분석할 수 없습니다.
더 좋음: 정수에 대한 잘못된 입력 구문: "z"

호출된 함수 이름을 언급하지 마세요. 대신에 말해 코드가 무엇을 하려고 했는지:

나쁜: open() 실패: %m
나은 점: %s 파일을 열 수 없습니다: %m

정말 필요하다고 생각되면 세부 메시지. (어떤 경우에는 실제 값을 제공합니다. 시스템 호출에 전달된 내용은 다음에 대한 적절한 정보일 수 있습니다. 세부 메시지입니다.)

이유: 사용자는 이러한 모든 기능이 무엇을 하는지 모릅니다.

44.3.14. 피해야 할 까다로운 단어

불가능합니다. "불가능"이다 거의 수동태. 더 나은 사용"할 수 없습니다"또는"할 수 있어요 아니"적절하게.

나쁜.다음과 같은 오류 메시지"나쁜 결과"지능적으로 해석하기가 정말 어렵습니다. 결과가 왜 나오는지 쓰는 것이 좋습니다."나쁜"예:"잘못됨 형식".

불법입니다. "불법"법 위반을 의미하며 나머지는 다음과 같습니다."잘못됨". 더 나은 방법은 그 이유를 말해주는 것입니다. 유효하지 않습니다.

알 수 없음.피하려고 노력하세요"알 수 없음". 고려하세요"오류: 알 수 없는 응답". 당신이 모른다면 응답이 무엇인지, 오류인지 어떻게 알 수 있나요?"인식되지 않음"종종 더 나은 경우가 많습니다. 선택. 또한 불만이 제기되는 값을 포함해야 합니다. ~의.

나쁨: 알 수 없는 노드 유형
더 좋음: 인식할 수 없는 노드 유형: 42

찾기 대 존재함.프로그램이 중요하지 않은 것을 사용하는 경우 리소스를 찾는 알고리즘(예: 경로 검색) 알고리즘이 실패하면 프로그램이 실패했다고 말하는 것이 타당합니다."찾기"자원. 만약에, 반면에 리소스의 예상 위치는 알려져 있습니다. 하지만 프로그램이 거기에 접근할 수 없다면 리소스는 그렇지 않습니다."존재". 사용"찾기"이 경우에는 약한 것 같습니다 문제를 혼란스럽게 합니다.

44.3.15. 올바른 철자법

단어 전체를 철자하세요. 예를 들어 다음을 피하세요.

  • 사양

  • 통계

  • 파렌스

  • 인증

  • 정확함

근거: 이렇게 하면 일관성이 향상됩니다.

44.3.16. 현지화

오류 메시지 텍스트를 번역해야 한다는 점을 명심하십시오 다른 언어로. 다음 지침을 따르세요.섹션 45.2.2에 번역가의 삶을 어렵게 만들지 마십시오.