開(kāi)發(fā)工具貫穿產(chǎn)品上線的整個(gè)生命周期,好的開(kāi)發(fā)工具可以真正提高開(kāi)發(fā)者的代碼質(zhì)量、工作效率,在技術(shù)趨于云端化的今天,從源碼到上線,中間還需要做些什么?怎么做才可以讓項(xiàng)目的上線流程更敏捷,更健壯? 如何打造高性能的移動(dòng)應(yīng)用?而在研發(fā)團(tuán)隊(duì)資源有限的情況下,怎樣才能快速找到應(yīng)用的性能瓶頸?開(kāi)發(fā)工具如同一把無(wú)堅(jiān)不摧的利器,但如何提高自身的素質(zhì),但如何玩轉(zhuǎn)確是有很多技巧和心得的。七牛在本次開(kāi)發(fā)者實(shí)踐日杭州工具專程請(qǐng)到業(yè)內(nèi)人士為大家?guī)?lái)一場(chǎng)開(kāi)發(fā)工具的技術(shù)盛宴。
Coding:云端技術(shù)實(shí)踐,如何學(xué)習(xí)AK47
Coding的軟件架構(gòu)師杜萬(wàn)帶來(lái)了自己準(zhǔn)備PMP中的過(guò)程組的經(jīng)驗(yàn),將PMP的抽象概念和知識(shí)體系分為十個(gè)知識(shí)領(lǐng)域和五個(gè)過(guò)程組,綜合起來(lái)有47個(gè)過(guò)程。對(duì)于每個(gè)過(guò)程來(lái)說(shuō),有輸入工具、技術(shù)和輸出。在設(shè)計(jì)階段選擇giffyonline這個(gè)設(shè)計(jì)工具。在準(zhǔn)備的過(guò)程中,杜萬(wàn)先后嘗試了使用隨機(jī)清單、智能表單等工具,在過(guò)程交互的設(shè)計(jì)過(guò)程的工作重心是如何進(jìn)行自動(dòng)校驗(yàn),并且在其中加入模糊搜索的功能,為了實(shí)現(xiàn)多屏瀏覽,借用了一個(gè)純JS的方法。
七牛:從開(kāi)發(fā)到上線,實(shí)戰(zhàn)持續(xù)交付
七牛的首席架構(gòu)師李道兵帶來(lái)的分享是如何將代碼變成服務(wù)。每個(gè)創(chuàng)業(yè)公司都會(huì)面臨一個(gè)問(wèn)題,就是如何將一個(gè)idea變成一項(xiàng)事業(yè)變成一家公司,需要經(jīng)過(guò)幾個(gè)過(guò)程,第一是如何由代碼層面變成服務(wù),第二是怎么通過(guò)服務(wù)轉(zhuǎn)向收集用戶的反饋,第三是由反饋再回到開(kāi)發(fā)流程。從網(wǎng)站架構(gòu)方面來(lái)說(shuō),需要注意Nginx的靜態(tài)文件和動(dòng)態(tài)服務(wù)、數(shù)據(jù)庫(kù)、用戶上傳文件四個(gè)方面。對(duì)于開(kāi)發(fā)者來(lái)說(shuō),改動(dòng)到完成上線的部署過(guò)程必須注意在前期就完成安裝文檔。在配置的機(jī)器較多的情況下,李道兵著重闡述了在部署過(guò)程中處理回滾和伸縮的過(guò)程并結(jié)合七牛實(shí)例分享如何在線上正式發(fā)布之前進(jìn)行一次測(cè)試,最后介紹了從開(kāi)發(fā)到上線的流程中的工具鏈。
聽(tīng)云:打造高性能應(yīng)用的五個(gè)黃金法則
聽(tīng)云的研發(fā)總監(jiān)秦杰首先介紹了影響移動(dòng)應(yīng)用性能的十個(gè)原因,分別是連接超時(shí)、閃退、卡頓、崩潰、黑白屏、網(wǎng)絡(luò)劫持、交互、CPU使用率、內(nèi)存泄露和不良接口。目前的APP主要分為三個(gè)類型:WEB APP、Android應(yīng)用和iOS應(yīng)用,接下來(lái)分別介紹了影響這些性能指標(biāo)的因素。以WEB APP為例,限制性能的瓶頸主要是請(qǐng)求數(shù)量、JS和CSS、瀏覽器緩存、內(nèi)嵌腳本和界面資源。在分享的最后,秦杰給出了自己的五個(gè)處理法則,也就是演講的主題:慢交互處理法則、交互處理法則、網(wǎng)絡(luò)訪問(wèn)處理法則、錯(cuò)誤處理原則和Crash處理法則。由于演講內(nèi)容與大家在開(kāi)發(fā)過(guò)程中遇到的痛點(diǎn)比較相似, 此次分享也引起了現(xiàn)場(chǎng)觀眾深深的共鳴。
Teambition:深入淺出BDD
Teambition的架構(gòu)師許晶鑫帶來(lái)的是對(duì)于BDD測(cè)試環(huán)境的分享。在軟件工程領(lǐng)域中,測(cè)試作為很重要的一環(huán)是一個(gè)需要溝通和反思的環(huán)節(jié)。比如進(jìn)行黑盒測(cè)試,需要開(kāi)發(fā)者和測(cè)試人員進(jìn)行溝通,有時(shí)候整個(gè)過(guò)程需要較高的溝通成本,BDD的測(cè)試方法是不基于TEST,而是更符合人類語(yǔ)言習(xí)慣的Behaviour。隨后許晶鑫給出了幾個(gè)BDD的測(cè)試實(shí)例。BDD的特點(diǎn)之一是不必關(guān)心業(yè)務(wù)邏輯層面的實(shí)現(xiàn),而只是關(guān)心APII的某些輸入輸出的結(jié)果就可以進(jìn)行測(cè)試。該測(cè)試方法有時(shí)候反過(guò)來(lái)也可以幫助我們檢查實(shí)現(xiàn)功能的邏輯是否合理。
銳道 :云開(kāi)發(fā)探索之IDE WEB化
銳道的Alex首先簡(jiǎn)單回顧了云計(jì)算的發(fā)展史,從早期的SaaS到后來(lái)的Paas,直到現(xiàn)在的IaaS,云產(chǎn)業(yè)的結(jié)構(gòu)是一種處于動(dòng)態(tài)分層的過(guò)程。就目前的情況來(lái)看,下一個(gè)分層是大數(shù)據(jù)和云開(kāi)發(fā)。互聯(lián)網(wǎng)本身的發(fā)展經(jīng)歷過(guò)的設(shè)計(jì)者提供內(nèi)容的1.0和用戶產(chǎn)生內(nèi)容的2.0時(shí)代,Web3.0就是一個(gè)云開(kāi)發(fā)的階段。從編譯器的角度回顧,一開(kāi)始的Emacs到后來(lái)的Eclipse或者VS到現(xiàn)在的一些主流的云端托管、代碼托管的工具,IDE的發(fā)展也是延續(xù)了這樣的過(guò)程。現(xiàn)在云開(kāi)發(fā)已經(jīng)能夠?qū)崿F(xiàn)多屏的統(tǒng)一,比如開(kāi)發(fā)工具Cloudo就推出了手機(jī)端的中間件。Alex表示下一步要做的,是進(jìn)行云端的資源共享和用戶協(xié)作。
開(kāi)發(fā)者最佳實(shí)踐日是由七牛云存儲(chǔ)發(fā)起并聯(lián)合各方小伙伴為開(kāi)發(fā)者舉辦的系列技術(shù)沙龍,關(guān)注開(kāi)發(fā)者在實(shí)際應(yīng)用中可能遇到的技術(shù)問(wèn)題。致力于為勇于創(chuàng)新的開(kāi)發(fā)者們提供行業(yè)內(nèi)最前沿最熱門的技術(shù)干貨,以技術(shù)驅(qū)動(dòng)應(yīng)用創(chuàng)新,讓更多的開(kāi)發(fā)者享受技術(shù)帶來(lái)的生活樂(lè)趣。希望各方小伙伴踴躍參與,傾聽(tīng)更多來(lái)自開(kāi)發(fā)者和創(chuàng)業(yè)者的一線的聲音。