使用AppleDoc快速生成iOS開發(fā)文檔

需求

一個公司隨著時間的推移會慢慢的成長起來田藐,這也就意味著公司的隊伍也會不斷的壯大缆八。在壯大的同時需要保證團隊開發(fā)的規(guī)范性铺罢。這樣有益于后期維護卖氨,同時也能夠培養(yǎng)團隊的協(xié)作能力会烙。軟件開發(fā)一直是公司的核心部門,那么作為 iOS開發(fā)部 的成員之一筒捺,就更應(yīng)該積極做好各項工作柏腻。這次我就啰里啰嗦的整理一下網(wǎng)上的關(guān)于 AppleDoc 生成開發(fā)文檔的相關(guān)知識點。此文章需要有一定的指令基礎(chǔ)的童鞋學(xué)習(xí)系吭,不然看了會比較吃力五嫂。有不懂的需要自行腦補一下,這里就不再累贅。

安裝

打開終端沃缘,執(zhí)行指令進行下載安裝

$ git clone git://github.com/tomaz/appledoc.git
$ cd ./appledoc
$ sudo sh install-appledoc.sh

當(dāng)出現(xiàn) INSTALL SUCCEEDED 時說明成功了躯枢,你也可以用appledoc --version查看驗證下。如果可以正常執(zhí)行下面指令則證明安裝成功槐臀,否則需要查看報錯說明锄蹂。

# 查看版本號
$ appledoc --version
# 查看更多文檔信息
$ appledoc --help
查看版本號

使用

  1. 使用終端進入代碼目錄

直接拖拽我們的工程文件夾到終端,然后按回車鍵
或者使用 cd+"項目名字目錄"水慨,然后按回車鍵
以上兩種方法都可以進入到我們的工程根目錄

  1. 指令用法及參數(shù)說明
# 參考指令寫法1(不生成docset文件)
$ appledoc --no-create-docset --output ./doc --project-name "QQ" --company-id "com.tencent.QQ" --project-company "Tencent Inc." /Users/superdanny/Desktop/QQ-Project/QQ/Views

# 參考指令寫法2(不生成docset文件得糜,參數(shù)使用“=”等號寫法)
$ appledoc --no-create-docset --output="./doc" --project-name="QQ" --company-id="com.tencent.QQ" --project-company="Tencent Inc." /Users/superdanny/Desktop/QQ-Project/QQ/Views

# 參考指令寫法3(生成docset文件并指定生成路徑)
$ appledoc --output ./doc --project-name "QQ" --company-id "com.tencent.QQ" --project-company "Tencent Inc." /Users/superdanny/Desktop/QQ-Project/QQ/Views --docset-install-path ./doc

參數(shù)說明

參數(shù) 說明
--no-create-docset (選填參數(shù))只生成html,不生成docset文件晰洒。如果需要生成朝抖,則去掉該參數(shù)即可
--output (必填參數(shù))生成結(jié)果輸出路徑,如“./doc”谍珊,會在工程目錄下創(chuàng)建一個doc文件夾存放生成的文檔治宣。當(dāng)然你可以指定一個完整的目錄路徑存放生成的文檔
--project-name (必填參數(shù))工程名字,如“QQ”
--project-company (必填參數(shù))公司名字砌滞,如“Tencent Inc.”
--company-id (選填參數(shù))公司ID侮邀,如“com.tencent.QQ”,會生成文件名為companyID.projectName.docset的docset文件布持。如果不設(shè)置豌拙,則文件名為com.companyname.projectname.projectName.docset
--docset-install-path (選填參數(shù))生成docset文件的目錄。如果此目錄不設(shè)置题暖,默認會在~/Library/Developer/Shared/Documentation/DocSets/目錄生成
/Users/superdanny/Desktop/QQ-Project/QQ/Views 掃描對應(yīng)路徑下的類

如果是生成docset文件按傅,則--output參數(shù)對應(yīng)的目錄會生成一個 docset-installed.txt 文件,里面記錄docset存放的目錄胧卤。
如果是不生成docset文件唯绍,則--output參數(shù)對應(yīng)的目錄會生成html文件。直接打開 index.html 文件即可查看枝誊。

支持的注釋

下面是一些常用的語法示意:

單行注釋

/// 這是單行注釋况芒。

/** 這也是單行注釋 */

/*! 同樣是單行注釋 */

/** 這也是單行注釋,
*  第二行會接上第一行叶撒。
*/

多行注釋

/** 
 @brief 這里是方法的簡介绝骚。僅對屬性、方法有效祠够,對類压汪、協(xié)議 無效,會造成后續(xù)內(nèi)容解析失敗古瓤。所以該指令不能放到類注釋里止剖。
 @param string 參數(shù)描述腺阳。
 @return 返回值描述。
 @exception NSException 可能拋出的異常穿香。
 @warning 這里是警告描述亭引。
 @bug 這里是缺陷描述。
 @see 用它來指明其他相關(guān)的method或function皮获。你可以使用多個這種標簽焙蚓。
 @sa 同@see。
 */

注意事項

@brief洒宝、@see主届、@sa僅對屬性、方法有效待德,對類、協(xié)議 無效枫夺,會造成后續(xù)內(nèi)容解析失敗将宪。所以該指令不能放到類注釋里。

@see <name>
@sa <name>
其中<name>為:
1) 當(dāng)前類(或協(xié)議)中的屬性或方法橡庞。(注意Objective-C方法簽名的寫法较坛,一般為“方法名:參數(shù)1:參數(shù)2:??”的格式)
2) 類(或協(xié)議)名。(注意AppleDoc不支持當(dāng)前類)
3) 將@see或@sa指令放在注釋的最后面扒最,避免內(nèi)容丟失

類注釋

 /** 第一行是類的簡介

 在簡介的下面,就是類的詳細介紹了丑勤。
 沒有間隔換行會被消除,就像HTML那樣吧趣。
 
 下面是常用的markdown語法
 
 分割線:
 
 - - -
 
 無序列表: (每行以 '*'法竞、'-'、'+' 開頭):
 
 * this is the first line
 * this is the second line
 * this is the third line
 
 有序列表: (每行以 1.2.3强挫、a.b.c 開頭):
 
 a. this is the first line
 b. this is the secode line
 
 多級列表:
 
 * this is the first line
 a. this is line a
 b. this is line b
 * this is the second line
 1. this in line 1
 2. this is line 2
 
 標題:
 
 # This is an H1
 ## This is an H2
 ### This is an H3
 #### This is an h4
 ##### This is an h5
 ###### This is an H6
 
 鏈接:
 
 普通URL直接寫上岔霸,appledoc會自動翻譯成鏈接: http://superdanny.link
 
 這個 [鏈接](http://example.net/) 會隱藏實際URL.

 表格:
 
 | header1(默認) | header2(居中) | header3(左對齊) | header4(右對齊) |
 |---------|:-------:|:--------|--------:|
 | normal  |  center |  left  |  right  |
 | cell    | cell    | cell    | cell    |
 
 引用:
 
 這里會引用到方法 `pinyinFromChiniseString:`,這里會引用到類 `AreaListViewController`
 
 這里會引用到一個代碼塊俯渤。具體辦法是在每行內(nèi)容的前面按tab鍵進行縮進呆细,不然會無法正常識別。
 
    void CMYK2RGB(float c, float m, float y, float k, float *r, float *g, float *b) {
        *r = (1 - c) * (1 - k);
        *g = (1 - m) * (1 - k);
        *b = (1 - y) * (1 - k);
    }
 */

最后我們來看看效果怎么樣吧??

主頁效果

類說明詳情

注釋

再一次感謝您花費時間閱讀這篇文章八匠!

微博: @Danny_呂昌輝
博客: SuperDanny

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末絮爷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子梨树,更是在濱河造成了極大的恐慌坑夯,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件劝萤,死亡現(xiàn)場離奇詭異渊涝,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門跨释,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胸私,“玉大人,你說我怎么就攤上這事鳖谈∷晏郏” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵缆娃,是天一觀的道長捷绒。 經(jīng)常有香客問我,道長贯要,這世上最難降的妖魔是什么暖侨? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮崇渗,結(jié)果婚禮上字逗,老公的妹妹穿的比我還像新娘。我一直安慰自己宅广,他們只是感情好葫掉,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著跟狱,像睡著了一般俭厚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上驶臊,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天挪挤,我揣著相機與錄音,去河邊找鬼关翎。 笑死电禀,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的笤休。 我是一名探鬼主播尖飞,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼店雅!你這毒婦竟也來了政基?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤闹啦,失蹤者是張志新(化名)和其女友劉穎沮明,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體窍奋,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡荐健,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年酱畅,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片江场。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡纺酸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出址否,到底是詐尸還是另有隱情餐蔬,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布佑附,位于F島的核電站樊诺,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏音同。R本人自食惡果不足惜词爬,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望权均。 院中可真熱鬧缸夹,春花似錦、人聲如沸螺句。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蛇尚。三九已至,卻和暖如春顾画,著一層夾襖步出監(jiān)牢的瞬間取劫,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工研侣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谱邪,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓庶诡,卻偏偏與公主長得像惦银,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子末誓,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理扯俱,服務(wù)發(fā)現(xiàn),斷路器喇澡,智...
    卡卡羅2017閱讀 134,665評論 18 139
  • 1迅栅、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明先生_X自主閱讀 15,982評論 3 119
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,168評論 2 33
  • 記錄時間:2018年1月4日 記錄地點:湖南長沙 http://www.meipai.com/media/9472...
    能量蓄水池閱讀 213評論 0 0
  • 一、Dispatch Queue 二晴玖、基本概念:異步 同步 串行隊列 并發(fā)隊列 三读存、dispatch_set_ta...
    寫代碼寫到人生巔峰閱讀 227評論 0 1