1. 程式人生 > >一名全棧工程師的必備工具箱

一名全棧工程師的必備工具箱

全棧工程師,也叫全端工程師,是指掌握多種技能,並能利用多種技能獨立完成產品的人。全棧工程師熟悉多種開發語言,同時具備前端和後臺開發能力,從需求分析,原型設計到產品開發,測試,部署,釋出全流程都十分熟悉。


全棧工程師由於經常研究各種技術,他不會精確記得所有語言程式碼的語法和API,他覺得沒有Google和百度,幾乎沒法工作。他記的只是一個Key,一個如何找尋答案的索引,而不是全部,人腦不是電腦,他不可能記下所有的東西。

對全棧工程師而言,各種輔助工具是十分重要的。全棧工程師更多的工作不是造輪子,而是用各種輪子組合造產品。下邊就我多年的經驗,向大家推薦我百寶箱中的各類工具,希望對大家有幫助。這裡邊主要推薦以下工具:需求分析工具、原型設計工具、程式碼檢查工具、自動化測試工具、部署工具,最後還會給大家介紹一款我最近在使用的端到端全流程的開發神器。

需求分析工具

XMind

XMind是一種實用的思維導圖工具。 思維導圖是一種將思維形象化的方法。它可用來作為管理專案、筆記或知識庫,也可以用來頭腦風暴,記錄思路,整理軟體產品功能和需求等等。


地址:http://www.xmindchina.net/

Visio

visio是一款便於開發和設計人員就複雜資訊、系統和流程進行視覺化處理、分析和交流的軟體。幫助我們建立具有專業外觀的圖表,以便理解、記錄和分析資訊、資料、系統和過程。

地址:https:// products.office.com/zh-cn/Visio/flowchart-software

StarUML

StarUML是一套盛開原始碼的軟體,不但免費自由下載,連程式碼都免費盛開。StarUML可描摹9款UML圖:用例圖、類圖、序列圖、事態圖、行動圖、通訊圖、模組圖、安排圖以及複合構造圖等。

地址:https://staruml.en.softonic.com/

原型設計工具:

Axure

Axure能幫助需求設計者,迅捷而輕便的創立基於目錄組織的原型文件、功能解釋、互動介面以及帶註釋的wireframe網頁,並可積極生成用於演示的網頁檔案和word文件,以供給演示與開發。


地址:https://www.axure.com.cn/

Omni Graffle

Omni Graffle軟體由Omni Group公司出品,可以在OS X平臺上輕鬆繪製漂亮的圖表、樹狀結構圖、流程圖、頁面等,可以用來規劃電影或劇本的情節走向、繪製公司組織圖、專案進度等等。該軟體介面非常漂亮,模板豐富精緻,容易激發靈感,輔助對齊和尺寸調整功能強大。目前還推出了iPad版本的應用。

地址:https://www.omnigroup.com/

程式碼檢查工具

CodeReviewer

CodeReviewer是一款免費的、簡單的又易於部署和使用的程式碼審查工具,由SmartBear開發——也是Collaborator的發明者,業界第一家推出商用程式碼審查工具的公司。

地址:https:// codereviewer.org/

SmartBear

SmartBear是一個有助於團隊通過共同的開發、測試和管理工作以便能生產出高質量程式碼的程式碼審查工具。

地址:https://smartbear.com/

Crucible

Crucible是另一款超級受開發人員歡迎的程式碼審查工具,可以審查程式碼、討論修改,通過Crucible靈敏的審閱流程來確定缺陷。


地址:http://www.atlassian.com/software/crucible/overview

自動化測試工具

QTP

QTP是一種自動測試工具,主要是用於迴歸測試和測試同一軟體的新版本。QuickTest針對的是GUI應用程式,包括傳統的Windows應用程式,以及現在越來越流行的Web應用。它可以覆蓋絕大多數的軟體開發技術,簡單高效,並具備測試用例可重用的特點。其中包括:建立測試、插入檢查點、檢驗資料、增強測試、執行測試、分析結果和維護測試等方面。

地址:http://quick-test-professional.weebly.com/

Selenium

Selenium是一個用於Web應用程式測試的工具。Selenium測試直接執行在瀏覽器中,就像真正的使用者在操作一樣。支援的瀏覽器包括IE、Mozilla Firefox、Mozilla Suite、Google Chrome等。這個工具的主要功能包括:測試與瀏覽器的相容性,測試你的應用程式看是否能夠很好得工作在不同瀏覽器和作業系統之上。測試系統功能,建立迴歸測試檢驗軟體功能和使用者需求。

地址:http://www.seleniumhq.org/

部署工具

Ansible

ansible是新出現的自動化運維工具,基於Python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程式部署、批量執行命令等功能。

地址:http://docs.ansible.com/

Salt

Saltstack是一個大型分散式的配置管理系統(安裝升級解除安裝軟體,檢測環境),也是一個遠端命令執行系統。saltstack的兩大功能:遠端執行和配置管理。

地址:https://docs.saltstack.com/en/latest/

Puppet

puppet是一種Linux、Unix、windows平臺的集中配置管理系統,使用自有的puppet描述語言,可管理配置檔案、使用者、cron任務、軟體包、系統服務等。

地址:http://puppetlabs.com/

神器推薦:DevCloud

之所以說DevCloud(華為軟體開發雲)是全棧工程師的開發神器,是因為它可以提供軟體開發全流程的工具,隨時隨地在雲端進行專案管理、配置管理、程式碼檢查、編譯、構建、測試、部署、釋出等。這些功能讓我能夠把精力集中於產品的設計和研發,而不需要自己維護各類工具。而且華為在這個產品上開放了多年的研發經驗,讓我的開發過程更標準化,從而進一步提升開發效率和產品質量。


目前華為軟體開發雲對於5人+500M以內是免費的。

總結

技術快速更新迭代,各種輔助工具也層出不窮,眼花繚亂。我們不需要面面俱到,在每個流程深入用好一個工具,就可以幫助我們提升我們的開發效率。希望越來越多的工程師加入全棧工程師的陣營,體會全棧工程師的樂趣。也希望大家可以多多溝通交流,尋找出更多的好工具。