全棧工程師,也叫全端工程師,是指掌握多種技能,並能利用多種技能獨立完成產品的人。全棧工程師熟悉多種開發語言,同時具有前端和後臺開發能力,從需求分析,原型設計到產品開發,測試,部署,發佈全流程都十分熟悉。前端
全棧工程師因爲常常研究各類技術,他不會精確記得全部語言代碼的語法和API,他以爲沒有Google和百度,幾乎無法工做。他記的只是一個Key,一個如何找尋答案的索引,而不是所有,人腦不是電腦,他不可能記下全部的東西。windows
對全棧工程師而言,各類輔助工具是十分重要的。全棧工程師更多的工做不是造輪子,而是用各類輪子組合造產品。下邊就我多年的經驗,向你們推薦我百寶箱中的各種工具,但願對你們有幫助。這裏邊主要推薦如下工具:需求分析工具、原型設計工具、代碼檢查工具、自動化測試工具、部署工具,最後還會給你們介紹一款我最近在使用的端到端全流程的開發神器。瀏覽器
需求分析工具運維
XMind分佈式
XMind是一種實用的思惟導圖工具。 思惟導圖是一種將思惟形象化的方法。它可用來做爲管理項目、筆記或知識庫,也能夠用來頭腦風暴,記錄思路,整理軟件產品功能和需求等等。工具
地址:http://www.xmindchina.net/測試
Visioui
visio是一款便於開發和設計人員就複雜信息、系統和流程進行可視化處理、分析和交流的軟件。幫助咱們建立具備專業外觀的圖表,以便理解、記錄和分析信息、數據、系統和過程。操作系統
地址:https:// products.office.com/zh-cn/Visio/flowchart-software.net
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之內是免費的。
地址:https://www.hwclouds.com/devcloud/
總結
技術快速更新迭代,各類輔助工具也層出不窮,眼花繚亂。咱們不須要面面俱到,在每一個流程深刻用好一個工具,就能夠幫助咱們提高咱們的開發效率。但願愈來愈多的工程師加入全棧工程師的陣營,體會全棧工程師的樂趣。也但願你們能夠多多溝通交流,尋找出更多的好工具。