Xcode 5의 새로운 기능 중 하나는 특별한 주석 구문으로 자신의 코드를 문서화하는 기능입니다. 형식은 doxygen과 유사하지만 해당 기능 의 서브 세트 만 지원하는 것으로 보입니다 .
어떤 명령이 지원되고 어떤 명령이 지원되지 않습니까?
사용법 중 독소와 다른 점이 있습니까?
답변
다음은 Xcode 5.0.2에서 찾은 모든 옵션의 예입니다.
이 코드로 생성되었습니다.
/** First line text.
Putting \\n doesn't create a new line.\n One way to create a newline is by making sure nothing is on that line. Not even a single space character!
@a Italic text @em with @@a or @@em.
@b Bold text with @@b.
@p Typewritter font @c with @@p or @@c.
Backslashes and must be escaped: C:\\foo.
And so do @@ signs: user@@example.com
Some more text.
@brief brief text
@attention attention text
@author author text
@bug bug text
@copyright copyright text
@date date text
@invariant invariant text
@note note text
@post post text
@pre pre text
@remarks remarks text
@sa sa text
@see see text
@since since text
@todo todo text
@version version text
@warning warning text
@result result text
@return return text
@returns returns text
@code
// code text
while (someCondition) {
NSLog(@"Hello");
doSomething();
}@endcode
Last line text.
@param param param text
@tparam tparam tparam text
*/
- (void)myMethod {}
노트:
- 명령이 있어야합니다
/** block */
,/*! block */
또는 접두어///
나//!
. - 명령은
@
( headerdoc 스타일) 또는\
( doxygen 스타일) 접두사로 작동합니다. (IE@b
와\b
모두 같은 일을한다.) - 명령은 일반적으로 설명하는 항목 앞에옵니다. (당신이 재산을 문서화하려는 경우 즉, 주석이 앞에 와야합니다
@property
텍스트입니다.) 그들은 함께 같은 줄에, 이후에 올 수 있습니다/*!<
,/**<
,//!<
,///<
. - 클래스, 함수, 속성 및 변수 에 설명서를 추가 할 수 있습니다 .
- 이 명령은 모두을 제외한 유효한 명령임을 나타 내기 위해 짙은 녹색 텍스트로 나타납니다
@returns
. - 최신 문서 변경 사항이 나타나기 전에 프로젝트를 빌드하거나 Xcode를 다시 시작해야 할 수도 있습니다.
설명서를 볼 수있는 곳 :
1. 코드 작성 중에 간단한 텍스트가 표시됩니다.
간단한 텍스트가 표시됩니다 (서식 없음). 간단한 텍스트가 없으면 첫 번째 @block까지 모든 텍스트의 연결을 보여줍니다. 존재하지 않는 경우 (예 : @return으로 시작) 모든 @ 명령을 제거하는 모든 텍스트를 연결합니다.
2. 식별자 이름을 옵션 클릭 :
3. 빠른 도움말 관리자 패널에서
(첫 번째 스크린 샷 참조)
4. Doxygen에서
Xcode 5의 명령은 Doxygen과 호환되므로 Doxygen을 다운로드하여 사용하여 설명서 파일을 생성 할 수 있습니다.
기타 사항
Doxygen에 대한 일반적인 소개와 Objective-C 코드를 문서화하는 방법에 대해서는 이 페이지 가 좋은 자료 인 것 같습니다.
지원되는 일부 명령에 대한 설명 :
@brief
: 설명 필드의 시작 부분에 텍스트를 삽입하며 코드 완료시 표시되는 유일한 텍스트입니다.
다음은 작동하지 않습니다.
\n
: 개행을 생성하지 않습니다. 개행을 작성하는 한 가지 방법은 해당 행에 아무것도 없는지 확인하는 것입니다. 단일 공백 문자도 아닙니다!\example
다음은 지원되지 않습니다 (진한 녹색으로 표시되지 않음).
- \인용하다
- \ docbookonly
- \ enddocbookonly
- \ endinternal
- \ endrtfonly
- \ endsecreflist
- \ idlexcept
- \ mscfile
- \ refitem
- \ relatedalso
- \ rtfonly
- \ secreflist
- \짧은
- \단편
- \ tableofcontents
- \ vhdlflow
- ~~
- \ “
- .
- ::
- \ |
Apple 예약 키워드 :
Apple은 문서에서만 작동하는 예약 키워드 인 것을 사용합니다. 짙은 녹색으로 보이지만 Apple처럼 사용할 수없는 것 같습니다. AVCaptureOutput.h와 같은 파일에서 Apple의 사용 예를 볼 수 있습니다.
이러한 키워드 중 일부는 다음과 같습니다.
- @abstract, @availibility, @class, @discussion, @deprecated, @method, @property, @protocol, @related, @ref.
기껏해야 키워드가 설명 필드에 새 줄을 표시합니다 (예 : @discussion). 최악의 경우 키워드와 그 뒤에 나오는 텍스트는 빠른 도움말에 표시되지 않습니다 (예 : @class).
답변
Swift 2.0 은 다음 구문을 사용합니다.
/**
Squares a number.
- parameter parameterName: number The number to square.
- returns: The number squared.
*/
@param
지금 어떻습니까 - parameter
.
이제 문서에 글 머리 기호를 포함 할 수도 있습니다.
/**
- square(5) = 25
- square(10) = 100
*/
답변
감각 :
최신 문서 변경 사항이 나타나기 전에 프로젝트를 빌드해야 할 수도 있습니다.
때때로 이것은 나에게 충분하지 않았습니다. Xcode를 닫고 프로젝트를 백업하면 일반적으로 이러한 경우가 해결됩니다.
.h 파일과 .m 파일에서 다른 결과를 얻습니다. 설명서 주석이 헤더 파일에 있으면 줄을 바꿀 수 없습니다.
답변
Swift 2.0에서 대부분의 서식이 변경되었습니다 (Xcode7 ß3 기준, ß4에서도 참).
대신 :param: thing description of thing
(Swift 1.2에서와 같이)
지금이야 - parameter thing: description of thing
대부분 의 키워드가 - [keyword]: [description]
대신에 대체되었습니다 :[keyword]: [description]
. 현재 작업을 포함하지 않는 키워드의 목록, abstract
, discussion
, brief
, pre
,post
, sa
, see
, availability
, class
, deprecated
, method
, property
, protocol
, related
, ref
.