開發者 MAC 電腦裡的十八般兵器

發表於2016-08-03

古人常以刀、槍、劍、戟、斧、鉞、鏟、叉、鞭、鐗、錘、戈、钂、棍、槊、棒、矛、鈀十八種兵器,樣樣精通,來形容一個人的武學技能get狀態。在開發者的世界裡,熟練掌握各種輔助工具,可以達到事半功倍,快速提高工作效率的效果。閒話不扯了,來看看究竟是什麼。

道場

習武學道講經論法總有個場所,這樣容易把有意向來學習的人聚集起來,而且有助於資訊的傳播,精力的集中,技能的修煉,經驗的交流和水平高下的切磋。工具的運用也是在一個特定的開發環境裡才能發揮出比較好的效果。

我這裡的開發環境(DOJO)是蘋果公司Apple Inc.()2014年出的一款Mac Pro,具體配置如下:

MacBook Pro(Retina 螢幕,15 英寸,2014 年中)

處理器 2.2 GHz Intel Core i7

記憶體 16 GB 1600 MHz DDR3

圖形卡 Intel Iris Pro 1536 MB

作業系統 OS X EI Capitan

這裡描述的工具都是執行在這個硬體以及軟體環境的,經過了2年多的開發經驗/經歷的靠譜驗證,所以拿來分享給大家。

如果有朋友的研發環境和這裡描述的不太一致,那麼僅作參考吧,具體結合自己的情況。

為了方便檢索,所以增加了工具分類。

開發第一步是做什麼?學習文件?畫流程圖?還是直接寫程式碼?恩,先從學習文件開始吧。

文件檢視

Dash

寫程式碼的時候是不是有些API記不住,比如畫橢圓該用哪個類?計算開平方用什麼函式?怎麼連線遠端的mysql伺服器檢索資料?這個時候一般怎麼辦?問度娘?問谷歌?直接檢視線上程式設計文件?

在國內問谷歌需要梯子,那麼涉及到另外工具的使用。檢視線上文件,如果記不住入口網址怎麼辦?放收藏裡啊,如果入口改變了呢?還是需要問搜尋引擎啊!那麼問題來了,度娘亂貼小廣告咋辦?用Dash吧,一個APP蒐羅了這個世界上幾乎所有的程式語言文件,而且更新速度快。

軟體主頁以及下載地址 https://kapeli.com/dash

流程圖設計

OmniGraffle 有很多人推薦,不過筆者覺得這個軟體太貴了,所以推薦了兩款免費的軟體流程設計工具。

XMind

主攻腦圖(思維導圖),流程圖也支援,另外還有日程安排計劃等額外的功能。

軟體主頁以及下載地址 http://www.xmind.net/

Gliffy Diagrams

並不是一個獨立安裝的APP,而是作為Chrome的外掛,可以去Chrome的App Store下載安裝,很輕量,執行速度快。

軟體主頁 https://www.gliffy.com/

文字編輯器

不僅限於程式碼編輯,一款好的編輯器會讓你的編輯工作充滿愉悅。

MacVim

為什麼我一開始不推薦時下流行頭牌Sublime呢?因為,我用vi/vim已經超過十年的時間了。當初在學校,vm/emacs二選一,我選擇了更容易上手實踐的vi,從此一直用它來檢視/編譯文字/程式碼。

軟體主頁以及下載地址 http://macvim-dev.github.io/macvim/

MacDown

一般程式碼檢視和編輯用Vi就夠了,剩下其他的文件,恩,現在大多數文章/文件採用的MarkDown語法編寫,所以用一款MarkDown編輯器就夠了。比如本文的編寫,我用的MacDown編輯器,文章語法採用MarkDown語法。既然是MarkDown編輯器,那麼有人會提到用Mou,筆者也試用過一段時間,遇到了一些問題,比如語法支援和介面顯示,後來改用MacDown,覺得各方面都支援的不錯,所以一直使用。

軟體主頁以及下載地址 http://macdown.uranusjr.com/

Sublime Text

如果你不是一路走著linux從事開發的話,估計很難對Vi/Emacs熟悉。那麼,像note++或者ultraedit這類第三方編輯器會是你比較不錯的選擇。相比於整合開發環境IDE的笨重,執行慢和耗記憶體,選擇一個輕量級的編輯器是在平時比較頻繁的非常規檢視/編輯程式碼/文件時一個不錯的選擇。那麼,以前那些用第三方編輯器的使用者都去哪兒了?應該就是這個Sublime Text了吧。

軟體主頁以及下載地址 http://www.sublimetext.com/

圖片編輯器

寫文章擼程式碼,除了文字的處理外,還需要有美圖的點綴和襯托。更多時候,圖是吸引流量和眼球的一種重要手段。

GIMP

為啥不用Adobe Photo Shop呢?太貴,太複雜。那麼,好吧,這裡筆者推薦用GIMP,PS該有的,它基本都有。

軟體主頁以及下載地址 http://www.gimp.org/

整合開發環境IDE

整合開發環境一般是集編輯,編譯,連結,除錯,版本管理和打包釋出於一體的大型開發軟體。它的特點是功能豐富,上手快,易操作。缺點也顯而易見,笨重,執行速度慢,需要更多的CPU,記憶體資源。

Eclipse

老牌萬金油型整合開發環境,上手快,支援幾乎所有語言,但是近幾年使用人數在下滑,逐漸轉向Android Studio和IntelliJ IDEA了。

軟體主頁以及下載地址 http://www.eclipse.org

Android Studio

安卓程式猿專屬開發環境。

軟體主頁以及下載地址 https://developer.android.com/studio/index.html

IntelliJ IDEA

Eclipse替代品,支援市面上大部分流行的開發語言和框架,上手快,介面更加人性化,現代整合開發環境的典範。

軟體主頁以及下載地址 https://www.jetbrains.com

Xcode

蘋果公司官方唯一指定的Object-C與Swift整合開發環境。

軟體主頁以及下載地址 https://developer.apple.com/xcode/

分析除錯類

APP寫好了,安裝到裝置,但是從網路拉取圖片顯示失敗了,怎麼破?APP打安裝包後想看下包裡面到底有些啥?遇到這樣的問題,這個的工具可以幫助你解決上面遇到的問題。

Wireshark

老牌網路抓包利器,各種平臺都可以玩耍。

軟體主頁以及下載地址 https://www.wireshark.org/

tcpdump

這是一個命令列工具,可以看作是Wireshark的命令列版。

系統自帶,無需額外安裝。使用幫助

Charles

網路抓包利器加上代理功能,並支援自簽名證照,所以可以用來在手機上抓取https的包。使用非常方便。付費軟體,值得購買。

軟體主頁以及下載地址 https://www.charlesproxy.com/

JD-GUI

Java的class檔案反編譯神器,可以從二進位制class檔案檢視它的Java原始碼。

軟體主頁以及下載地址http://jd.benow.ca/

JADX

JD-GUI的增強版,支援檢視安卓apk/dex檔案中反編譯的Java原始碼以及檢視apk中其他檔案的內容。

軟體主頁以及下載地址 https://github.com/skylot/jadx

版本管理

頻繁的修改,反悔,記錄需要管理,所以版本管理是必須的。

SourceTree

Atlassians出品的圖形化版本管理工具,支援Git和Mercurial。

軟體主頁以及下載地址 https://www.sourcetreeapp.com/

檔案共享

從檔案伺服器(FTP, Samba etc.)下載資料或者上傳檔案到伺服器上。

FileZilla

老牌Sourceforge開原始檔傳輸軟體。

軟體主頁以及下載地址 https://sourceforge.net/projects/filezilla/

證照管理

證照一般用於https加密,移動APP軟體的安裝檔案簽名。

Portecle

影像化管理證照的工具。

軟體主頁以及下載地址 https://sourceforge.net/projects/portecle/

截圖

截圖是強需求,沒錯。MAC下有截圖快捷鍵,只能截圖。一般使用者截圖完畢後,不是馬上發出去,而是做後期處理。

snip

截圖,編輯。

軟體主頁以及下載地址 http://snip.qq.com/

資料庫

除錯APP的時候,如果APP產生了資料,並且把資料儲存在資料庫(sqlite)中。如果想在開發主機上檢視,可以用如下的工具。

Datum

檢視sqlite資料庫的內容。

軟體主頁以及下載地址 http://www.datumapps.com/

網路請求

有時候需要自己構造一個http網路請求(GET/POST),並檢視輸入輸出的詳細內容。簡單的GET用瀏覽器可以代勞,複雜一點的需要瀏覽器安裝外掛支援。用如下的工具可以到達更好的效果。

wget

命令列工具。除了檢視傳送網路請求,檢視結果外。另外一個用途是下載檔案,特別是大檔案,用瀏覽器下載經常會斷線,而且斷點續傳做的不是太好。wget命令下載檔案,支援斷點續傳,這個用起來不錯。

curl

功能基本同wget,系統自帶工具,無需安裝。

rest-client

支援restful風格的網路請求構造,請求和結果相應。除錯restful介面的好幫手。

軟體主頁以及下載地址 https://github.com/wiztools/rest-client

虛擬機器&模擬器

我的電腦是MAC,可是招商銀行的專業版沒有MAC的客戶端,腫麼破?我想在MAC上看到安卓APP執行的情況,怎麼辦?安裝一個虛擬機器吧!

VirtualBox

老牌虛擬機器軟體,支援市面上幾乎所有流行的作業系統。

軟體主頁以及下載地址 https://www.virtualbox.org/

Genymotion

安卓模擬器,執行安卓APP如同在手機上一樣的速度。

軟體主頁以及下載地址 https://www.genymotion.com/

MAC專用

有些工具是MAC系統專用的,比如用來管理蘋果裝置(iPad, iPhone, iMac, Mac etc.)配置檔案的工具。

Apple Configurator

上App Store自行搜尋下載安裝。

使用幫助

服務端工具套件

有時候需要本地除錯一些服務端提供的服務,或者是網站後臺。這個時候一個開發/除錯/模擬環境的選擇變的重要了。還是那句不忘初衷的話,好的工具讓你事半功倍!

Bitnami服務端套件

本地除錯web伺服器,nginx, mysql, php-fpm, etc.

軟體主頁以及下載地址https://bitnami.com

Kitematic

Docker圖形化管理工具。

軟體主頁以及下載地址https://kitematic.com/

相關文章