Xcode插件神器
標(biāo)哥的技術(shù)博客
作為iOS開發(fā)人員什乙,不了解些常用的插件,不使用插件燎悍,開發(fā)效率怎么會(huì)夠快呢敬惦?那么問題來了,現(xiàn)在的你谈山,使用過哪些xcode插件仁热?如果沒有使用過插件,那么很遺憾,您錯(cuò)過了很多好用的工具抗蠢!
插件管理器
既然使用xcode插件举哟,就應(yīng)該想想有沒有插件管理器呢?是的迅矛,有一個(gè)灰常有名的插件管理器叫Alcatraz妨猩,關(guān)于這個(gè)插件管理器如何安裝,請(qǐng)參考官方文檔
如果您已經(jīng)安裝過這個(gè)插件管理器秽褒,那么恭喜您可以直接看下面的內(nèi)容了:琛!销斟!
安裝完成以后庐椒,需要重啟Xcode后,然后在Xcode的菜單欄上就可以看到這樣package manager:
第一神器:注釋
開發(fā)必須有規(guī)范蚂踊,不然維護(hù)成本就會(huì)提高约谈。那么寫api時(shí)就應(yīng)該配上非常明確的注釋,而有一個(gè)插件VVDocument就是一個(gè)注釋神器犁钟。有了它棱诱,我們只需要使用///就會(huì)自動(dòng)觸發(fā)生成格式化的注釋±远看下面的例子迈勋,我們寫好這個(gè)API后,直接輸入///醋粟,就會(huì)生成下面這樣的注釋C夜健!米愿!當(dāng)然格式是可以調(diào)整的厦凤,這個(gè)插件提供了一個(gè)配置界面,可以修改觸發(fā)方式以及生成的樣式等吗货。
/*!
*??@author 黃儀標(biāo), 15-11-11 23:11:04
*
*??<#Description#>
*
*??@param patientModel <#patientModel description#>
*??@param resultBlock??<#resultBlock description#>
*
*??@return <#return value description#>
*/
-(instancetype)initWithPatientModel:(HYBPatientModel*)patientModelresultBlock:(HYBResultBlock)resultBlock;
看下圖泳唠,就是當(dāng)前我的配置界面,如果想要修改就可以在這個(gè)界面直接修改V姘帷1啃取!
第二神器:XVim
我相信對(duì)于做過Web開發(fā)的人員勇垛,對(duì)vim這個(gè)工具是相當(dāng)熟悉的吧脖母。說真的,剛開始我也覺得這個(gè)東西不好用闲孤,不過那是因?yàn)椴粫?huì)用谆级。后來看到有個(gè)同事是后端轉(zhuǎn)iOS的,他一直在使用XVim插件操作好快,于是就想學(xué)習(xí)一下這個(gè)東西怎么用肥照。
事實(shí)如此脚仔,真的是相當(dāng)棒的插件。現(xiàn)在我的Xcode一直都有這個(gè)插件舆绎,而且對(duì)這個(gè)vim已經(jīng)熟悉了鲤脏,其常用的操作命令都記住了。
現(xiàn)在吕朵,本人也在學(xué)習(xí)HTML5猎醇,使用Sublime Text3開發(fā)工具,這個(gè)也是神器努溃,支持很多的插件硫嘶,而且也支持vim,簡(jiǎn)單是爽死了N嗨啊B偌病!如果您也在使用贡蓖,一定要學(xué)習(xí)這個(gè)工具如何使用曹鸠。
如果不想使用Alcatraz插件管理器來插件煌茬,可以直接到https://github.com/JugglerShu/XVim下載運(yùn)行斥铺。
第三神器:XToDo
首先,其開源github地址為:https://github.com/trawor/XToDo
如果想要下載運(yùn)行安裝坛善,可以直接下載然后用xcode運(yùn)行晾蜘。
我們?cè)陂_發(fā)時(shí),經(jīng)常使用#warning來添加提醒信息眠屎,但是實(shí)際上很多項(xiàng)目里面有很多這樣的信息剔交,這讓我們非常難找。有了XToDo這個(gè)神器改衩,我們可以通過這個(gè)插件所提供的工具岖常,直接查看。
支持的寫法:TODO,FIXME,???,!!!!葫督〗甙埃看到這幾個(gè)應(yīng)該可以猜得出來是什么意思了吧。沒錯(cuò)橄镜,就是事項(xiàng)的意思偎快。
我們?cè)诖a中可以這樣添加:
// TODO: 在上線前需要將這個(gè)值設(shè)置為111(假設(shè))
constNSUIntegerkAppInterfaceVersion=111;
// FIXME: 這里是寫死的假數(shù)據(jù)
NSString*title=@"假數(shù)據(jù)";
// ???: 這里是什么意思?
NSString*value=[selftest];
// !!!!: 警告區(qū)
NSString*warningVersion=@"1"
第四神器:Cocoapods
現(xiàn)在新的項(xiàng)目中幾乎都使用了Cocoapods來管理第三方庫了洽胶,因此晒夹,這個(gè)插件也是必備神器啊!關(guān)于這個(gè)Cocoapods怎么使用丐怯,請(qǐng)閱讀這篇文章:[http://www.huangyibiao.com/cocoapods-use/)喷好,這篇文章介紹了其基本使用,并且也教大家讓自己的開源項(xiàng)目也支持`Cocoapods`读跷。
有了這個(gè)插件绒窑,就可以通過直觀的界面來操作了。當(dāng)然舔亭,喜歡使用命令的也是可以的些膨,本人就更喜歡直接操作命令。
第五神器:DXXcodeConsoleUnicodePlugin
你知道嗎钦铺?為什么Xcode控制臺(tái)Console打印出來的JSON數(shù)據(jù)中有中文時(shí)都是看不懂的字符订雾?這讓人非常難受,只能通過斷點(diǎn)調(diào)試才能單步進(jìn)去看到這個(gè)值矛洞。那么現(xiàn)在有了這個(gè)神器就不用這么麻煩了M莅ァ!沼本!直接就可以打印出來看了X汀!抽兆!
第六神器:FuzzyAutocomplete
這個(gè)FuzzyAutocomplete可是相當(dāng)好用的家伙识补,可以自動(dòng)匹配所有的變量、函數(shù)名等辫红,而且不要求順序凭涂。比如,Xcode自帶的智能提示贴妻,我們只能是順序的寫了前面的字符才能匹配出來提示切油。那么這個(gè)神器就不一樣了,不要求記得API的寫法順序名惩,只要記住其中幾個(gè)字母澎胡,就可以匹配出來了,然后選擇就可以了娩鹉。
看下圖攻谁,是不是很明智:
第七神器:GitDiff
對(duì)于項(xiàng)目使用了git這個(gè)來管理版本的開發(fā)人員來說,這可就是一個(gè)神器了底循。我們?cè)谖募邪l(fā)動(dòng)了任何地方巢株,在左邊的代碼行號(hào)這里都會(huì)有相應(yīng)顏色顯示,一看就可以看出來了熙涤。
當(dāng)然阁苞,對(duì)于不是使用git來管理的人來說困檩,這個(gè)插件就沒有必要了。
看下圖的左邊那槽,是不是不一樣了:
還可以點(diǎn)擊還原:
第八神器:PrettyPrintJSON
開發(fā)一定需要到調(diào)試接口悼沿,那么打印出來的JSON數(shù)據(jù)又是亂亂的,根本不能直觀看出來是什么結(jié)構(gòu)嘛骚灸。那么安裝這個(gè)東西就好辦了糟趾,直接可以顯示出很好的結(jié)構(gòu)。當(dāng)然我們可以使用瀏覽器插件:JSON-handle插件甚牲,這個(gè)是google瀏覽器的插件义郑,有了這個(gè)東西,將接口放到瀏覽器時(shí)丈钙,返回的JSON數(shù)據(jù)會(huì)自動(dòng)格式化非驮。
第九神器:SCXcodeSwitchExpander
這個(gè)插件也是好東西哦,當(dāng)我們定義了枚舉結(jié)構(gòu)時(shí)雏赦,我們使用SCXcodeSwitchExpander插件就相當(dāng)容易了劫笙。
我們定義一個(gè)枚舉:
typedefNS_ENUM(NSUInteger,HYBErrorType){
kErrorTypeNetworkFail,
kErrorTypeNetworkTimeout,
kErrorTypeArgumentLess
}
當(dāng)我們?cè)谑褂脮r(shí),我們聲明一個(gè)枚舉變量星岗,然后輸入switch (枚舉變量)就會(huì)自動(dòng)地展開了:
HYBErrorTypeerrorType;
switch(errorType){
casekErrorTypeNetworkFail:
break;
casekErrorTypeNetworkTimeout:
break;
casekErrorTypeArgumentLess:
break;
default:
break;
}
這是不是很方便呢填大?必須的!G伍佟允华!
第十神器:Auto-Import
這個(gè)Auto-Import插件是可以快速導(dǎo)入頭文件的插件。這個(gè)就不多說了,看圖吧7蠼谩@瘛汉额!
其實(shí)到現(xiàn)在我也沒有這么使用過曹仗。所以只能排第十了!H渌选怎茫!
Xcode升級(jí)后插件失效解決方案
這里有一個(gè)腳本可以刷新所有的插件,下載https://github.com/cikelengfeng/RPAXU妓灌,按照文檔說明運(yùn)行腳本即可轨蛤。親測(cè)可用!3婀 祥山!