一名全棧工程師的必備工具箱
全棧工程師,也叫全端工程師,是指掌握多種技能,并能利用多種技能獨(dú)立完成產(chǎn)品的人。全棧工程師熟悉多種開發(fā)語言,同時(shí)具備前端和后臺(tái)開發(fā)能力,從需求分析,原型設(shè)計(jì)到產(chǎn)品開發(fā),測(cè)試,部署,發(fā)布全流程都十分熟悉。
全棧工程師由于經(jīng)常研究各種技術(shù),他不會(huì)精確記得所有語言代碼的語法和API,他覺得沒有Google和百度,幾乎沒法工作。他記的只是一個(gè)Key,一個(gè)如何找尋答案的索引,而不是全部,人腦不是電腦,他不可能記下所有的東西。
對(duì)全棧工程師而言,各種輔助工具是十分重要的。全棧工程師更多的工作不是造輪子,而是用各種輪子組合造產(chǎn)品。下邊就我多年的經(jīng)驗(yàn),向大家推薦我百寶箱中的各類工具,希望對(duì)大家有幫助。這里邊主要推薦以下工具:需求分析工具、原型設(shè)計(jì)工具、代碼檢查工具、自動(dòng)化測(cè)試工具、部署工具,***還會(huì)給大家介紹一款我最近在使用的端到端全流程的開發(fā)神器。
需求分析工具
XMind
XMind是一種實(shí)用的思維導(dǎo)圖工具。 思維導(dǎo)圖是一種將思維形象化的方法。它可用來作為管理項(xiàng)目、筆記或知識(shí)庫,也可以用來頭腦風(fēng)暴,記錄思路,整理軟件產(chǎn)品功能和需求等等。
地址:http://www.xmindchina.net/
Visio
visio是一款便于開發(fā)和設(shè)計(jì)人員就復(fù)雜信息、系統(tǒng)和流程進(jìn)行可視化處理、分析和交流的軟件。幫助我們創(chuàng)建具有專業(yè)外觀的圖表,以便理解、記錄和分析信息、數(shù)據(jù)、系統(tǒng)和過程。
地址:https:// products.office.com/zh-cn/Visio/flowchart-software
StarUML
StarUML是一套盛開源碼的軟件,不但免費(fèi)自由下載,連代碼都免費(fèi)盛開。StarUML可描摹9款UML圖:用例圖、類圖、序列圖、事態(tài)圖、行動(dòng)圖、通信圖、模塊圖、安排圖以及復(fù)合構(gòu)造圖等。
地址:https://staruml.en.softonic.com/
原型設(shè)計(jì)工具:
Axure
Axure能幫助需求設(shè)計(jì)者,迅捷而輕便的創(chuàng)立基于目錄組織的原型文檔、功能解釋、交互界面以及帶注釋的wireframe網(wǎng)頁,并可積極生成用于演示的網(wǎng)頁文件和word文檔,以供給演示與開發(fā)。
地址:https://www.axure.com.cn/
Omni Graffle
Omni Graffle軟件由Omni Group公司出品,可以在OS X平臺(tái)上輕松繪制漂亮的圖表、樹狀結(jié)構(gòu)圖、流程圖、頁面等,可以用來規(guī)劃電影或劇本的情節(jié)走向、繪制公司組織圖、專案進(jìn)度等等。該軟件界面非常漂亮,模板豐富精致,容易激發(fā)靈感,輔助對(duì)齊和尺寸調(diào)整功能強(qiáng)大。目前還推出了iPad版本的應(yīng)用。
地址:https://www.omnigroup.com/
代碼檢查工具
CodeReviewer
CodeReviewer是一款免費(fèi)的、簡單的又易于部署和使用的代碼審查工具,由SmartBear開發(fā)——也是Collaborator的***,業(yè)界***家推出商用代碼審查工具的公司。
地址:https:// codereviewer.org/
SmartBear
SmartBear是一個(gè)有助于團(tuán)隊(duì)通過共同的開發(fā)、測(cè)試和管理工作以便能生產(chǎn)出高質(zhì)量代碼的代碼審查工具。
地址:https://smartbear.com/
Crucible
Crucible是另一款超級(jí)受開發(fā)人員歡迎的代碼審查工具,可以審查代碼、討論修改,通過Crucible靈敏的審閱流程來確定缺陷。
地址:http://www.atlassian.com/software/crucible/overview
自動(dòng)化測(cè)試工具
QTP
QTP是一種自動(dòng)測(cè)試工具,主要是用于回歸測(cè)試和測(cè)試同一軟件的新版本。QuickTest針對(duì)的是GUI應(yīng)用程序,包括傳統(tǒng)的Windows應(yīng)用程序,以及現(xiàn)在越來越流行的Web應(yīng)用。它可以覆蓋絕大多數(shù)的軟件開發(fā)技術(shù),簡單高效,并具備測(cè)試用例可重用的特點(diǎn)。其中包括:創(chuàng)建測(cè)試、插入檢查點(diǎn)、檢驗(yàn)數(shù)據(jù)、增強(qiáng)測(cè)試、運(yùn)行測(cè)試、分析結(jié)果和維護(hù)測(cè)試等方面。
地址:http://quick-test-professional.weebly.com/
Selenium
Selenium是一個(gè)用于Web應(yīng)用程序測(cè)試的工具。Selenium測(cè)試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE、Mozilla Firefox、Mozilla Suite、Google Chrome等。這個(gè)工具的主要功能包括:測(cè)試與瀏覽器的兼容性,測(cè)試你的應(yīng)用程序看是否能夠很好得工作在不同瀏覽器和操作系統(tǒng)之上。測(cè)試系統(tǒng)功能,創(chuàng)建回歸測(cè)試檢驗(yàn)軟件功能和用戶需求。
地址:http://www.seleniumhq.org/
部署工具
Ansible
ansible是新出現(xiàn)的自動(dòng)化運(yùn)維工具,基于Python開發(fā),集合了眾多運(yùn)維工具(puppet、cfengine、chef、func、fabric)的優(yōu)點(diǎn),實(shí)現(xiàn)了批量系統(tǒng)配置、批量程序部署、批量運(yùn)行命令等功能。
地址:http://docs.ansible.com/
Salt
Saltstack是一個(gè)大型分布式的配置管理系統(tǒng)(安裝升級(jí)卸載軟件,檢測(cè)環(huán)境),也是一個(gè)遠(yuǎn)程命令執(zhí)行系統(tǒng)。saltstack的兩大功能:遠(yuǎn)程執(zhí)行和配置管理。
地址:https://docs.saltstack.com/en/latest/
Puppet
puppet是一種Linux、Unix、windows平臺(tái)的集中配置管理系統(tǒng),使用自有的puppet描述語言,可管理配置文件、用戶、cron任務(wù)、軟件包、系統(tǒng)服務(wù)等。
地址:http://puppetlabs.com/
神器推薦:DevCloud
之所以說DevCloud(華為軟件開發(fā)云)是全棧工程師的開發(fā)神器,是因?yàn)樗梢蕴峁┸浖_發(fā)全流程的工具,隨時(shí)隨地在云端進(jìn)行項(xiàng)目管理、配置管理、代碼檢查、編譯、構(gòu)建、測(cè)試、部署、發(fā)布等。這些功能讓我能夠把精力集中于產(chǎn)品的設(shè)計(jì)和研發(fā),而不需要自己維護(hù)各類工具。而且華為在這個(gè)產(chǎn)品上開放了多年的研發(fā)經(jīng)驗(yàn),讓我的開發(fā)過程更標(biāo)準(zhǔn)化,從而進(jìn)一步提升開發(fā)效率和產(chǎn)品質(zhì)量。
目前華為軟件開發(fā)云對(duì)于5人+500M以內(nèi)是免費(fèi)的。
地址:https://www.huaweicloud.com/devcloud/
總結(jié)
技術(shù)快速更新迭代,各種輔助工具也層出不窮,眼花繚亂。我們不需要面面俱到,在每個(gè)流程深入用好一個(gè)工具,就可以幫助我們提升我們的開發(fā)效率。希望越來越多的工程師加入全棧工程師的陣營,體會(huì)全棧工程師的樂趣。也希望大家可以多多溝通交流,尋找出更多的好工具。