今天給大家介紹的這個外掛程式,是我在IOS平台上開發以來,一些想法的集合體。因為本人時常感覺在開發過程中無論從GOOGLE資料尋找和SQL資料庫查詢,Regex測試,SVN等,這些經常要做的操作中,耽誤了我不少的時間,甚至會打斷我對業務的思考,進而影響對程式的理解。
在忍無可忍的情況下,我決定自己動手造一些工具,希望借它避開頻繁切換表單過程對開發人員思維的影響。
好了,開始今天的本文吧!
首先要聲明的是,因為本人懷疑蘋果公司並不支援開發人員來為XCODE開發外掛程式,但如果不HACK一些底層的API,有些外掛程式功能又是無法實現,而這些API往往又可能會在下個版本中被修改甚至移除。所以本人無法保證所有的XCODE版本都可運行該外掛程式。本人目前使用的XCode版本為 4.6.2 (4H1003)。
本外掛程式的安裝有兩種方式:
I:下載這個連結中的檔案(http://files.cnblogs.com/daizhj/HRPlugin.dmg.zip),雙擊解壓,運行裡面的DMG檔案。並運行彈窗中的”install.command“檔案,這樣就會完成安裝了。
II:下載本項目源碼(https://github.com/daizhenjun/HRXcodePlugin),之後用XCODE開啟Build即可。
採用其中一種方式安裝完成後,完全退出XCode(在DOCK上的XCODE表徵圖擊右鍵,選“退出”即可)
下面就來看一下該外掛程式的運行效果,如下:
下面做一個使用介紹:
首先是搜尋功能,當選中代碼中的一段檔案,如(NSRegularExpression)時:
這時點擊外掛程式中的“GoogleSearch”,會啟動瀏覽器,如(這裡外掛程式為您添加了Stackoverflo關鍵字):
同理也可以使用BaiduSearch,但鑒於Baidu多數情況下搜不出什麼像樣的乾貨,這理就不做說明了。
下面介紹一下SVN功能。首先要用命令列或其它方式初始化本地版本庫和相關的使用者資訊(包括密碼)等。之後就可以使用下面視窗設定本地源碼的SVN路徑了:
這樣,只要把你的項目源碼放在該路徑下,使用XCode開啟相關源碼檔案,執行修改或添加檔案等操作時,只要點擊HRPlugin菜單中SVN的相關功能表項目操作即可。如:
如果之前SVN設定有問題或在提交過程中出現問題,外掛程式都會回顯相關的錯誤資訊給你,比如:
同理,也可以完成GIT的設定,其實在寫這個外掛程式過程中,我一直用該外掛程式來向GITHUB提交代碼。基本沒發現什麼問題(歡迎feedback bug).
下面看一下對SQLITE資料庫的支援,點擊外掛程式菜單的”Sqlite Helper“, 會啟動該助手。
這裡要說明的是,該助手第一次啟動時會讓您選擇一個本地的SQLITE資料庫檔案,如果沒有選擇,外掛程式會為您構造一個SQLITE檔案,並向其中添加兩張表,一個是student,一個是teacher,如:
大家可以看到左側會列出當前資料庫中的表及其相關結構資訊。
接著輸入相應的SQL指令碼,如,並點擊"run sql"按鈕:
我們看到在下面的表格中顯示了該表的記錄,包括剛insert的那個記錄。同時這個輸入框還支援執行選中的SQL指令碼,如下:
大家看到這裡顯示的是"select * from teacher"的結果(註:要輸入多行指令碼,按住“command或option“之後按斷行符號鍵即可)。
除此以外,該助手還支援匯出建表指令碼和代碼產生(支援object-c, c#, java三種語言),只要在相應的表結點上擊滑鼠右鍵即可:
接下來再介紹一下HTTPProxy 伺服器功能,引入它的目的是為了方便開發手機用戶端應用。只要點擊外掛程式菜單的"Http Proxy",就可以看到它的介面了,如:
它會偵聽當前機器的8000連接埠上的HTTP請求。為了測試方便,我們可以在Firefox, chrome, safari中設定相應的代理服務,指向本地的8000連接埠,這時在相應瀏覽器中訪問比如BAIDU等網站,就會在該介面上顯示本地HTTP請求的HEADER等資訊,還有網站那一端獲得的資料。這樣會方便我們在開發過程中檢查提交和返回的資訊是否有效等。
當然如果在代碼中,我們可以這樣用它,比如使用第三方開源軟體ASIHTTPRequest時,設定相應的代理欄位:
// 手動設定Proxy 伺服器NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];[request setProxyHost:@"127.0.0.1"];[request setProxyPort:8000];
如果在中,可以這樣用:
#!/usr/bin/env pythonimport urllibimport sysimport getoptshortargs = 'f:t'opts, args = getopt.getopt( sys.argv[1:], shortargs )port = "8000"if ( len( sys.argv ) == 2 ): port = args[0]try: proxy = {"http":"http://127.0.0.1:"+ port} f = urllib.urlopen("http://www.baidu.com", proxies = proxy)#加入代理設定 print 'http header:/n', f.info() print 'http status:', f.getcode() print 'url:', f.geturl() for line in f: print line, f.close() except: print "proxy fails!"
接下來是關於資訊:
最後就是卸載功能,如下:
好了,今天的內容就到這裡的,如果大家有什麼想法可以提出來,以便我進一步完善。
源碼:https://github.com/daizhenjun/HRXcodePlugin
安裝包下載:http://files.cnblogs.com/daizhj/HRPlugin.dmg.zip