1. 程式人生 > >Repractise基礎篇:Web應用開發七日談

Repractise基礎篇:Web應用開發七日談

一些事 mit 個人 性能 簡單的 第五天 第一天 ogg 喜歡

Repractise基礎篇:Web應用開發七日談

本來想的僅僅是畫一個例如以下的七日圖來說說Web開發的。隨後又想了想這似乎是一個非常棒的Web開發相關的知識介紹。應用開發是一個非常有意思的循環,多數時候我們總會認為別人的代碼寫得不好。即使它使用了一種非常好的設計,我們也可能會認為他非常復雜。

而它總結下來就是以下的七天過程裏發生的一些事情。

七日談

事實上對於Web開發,有以下這張圖就足夠了。

技術分享

第一天:新的開始

我們迎來了我們的新的一個項目,看起來每一個人都非常興奮。這一天過得非常快,也做了特別多的事。

首先,我們搭建了自己本地的開發環境。

我們選擇了一門新的語言,也開始使用新的IDE,一個全新的開始。

接著,我們開始創建一個非常easy的Hello,World——在絕大多數語言裏都有這種一個傳統。

這是一個Web項目。看來我們選用的框架裏的Hello,World是一個TODO MVC。

呀!

這個框架比原來那個框架看起來更簡單,更直接也更加好用。

然後,我們開始去創建我們的構建系統了。

讓我們告別Ant,迎來新的構建工具,Gradle比他們強大多了。

我們能夠用這個構建工具來做非常多的事情——依賴管理、編譯和構造、打包。Gulp看上去非常流行。讓我們用Gulp吧。

順便再創建一個或多個用於公布和構建的server。

最後。在我們的持續構建系統中搭載對應的PipeLine來完畢這些事。

第一天,就這樣興奮地結束了。

第二天:令人期待的新體驗

“沒辦法,第一天就是得做那些事。”

如今。才開始真正的編碼工作。

我們拿到了一個任務。知道了它是做什麽之後。

我們開始對其分步,第一步做什麽,下一步做什麽,每一步都非常清楚了。

能夠編寫我們的第一個測試。看來這個測試好像並沒有想象中對麽簡單,我們須要Mock對象。

啊。這個組件須要Fake一個Service。第一個任務看來是完畢編碼了,讓我們對其進行簡單的重構。

我們已經有了單元測試,如今讓我們加入一個功能測試。在我們這個樣例裏,似乎也須要一個集成測試。

最終能夠Commit。並Push代碼。

第三天:上線準備

在我們不斷地反復第二個步驟的時候。我們也要開始去考慮怎樣上線了。

我們是直接部署在Docker容器裏呢?還是直接部署在server上呢?接著,我們還為其配置了緩存服務和均衡負載等等。

咦!

這個配置是寫死的。這裏須要一個Toggle來控制功能是否上線!

第四天: 數據分析

上線了幾天後,發現一些數據發生了變化。站點的訪問速度變快了。使得訪問站點的人越來越多。

等等,這個地方好像沒有人用過!

唔!這是一個Bug!

應用的性能比曾經好多了。一個server能夠頂曾經的兩個。一下子省了好多server。

看來。用戶比較喜歡那個功能,我們增強一下這個功能吧。

第五天:持續交付

又修了一個bug。

噢!我不認為這個功能用戶會喜歡。

哈!這個新功能看上去不錯。

第六天:惡夢

唉。這代碼是誰寫的。

這裏須要重構一下,這裏也須要重構一下。

什麽!沒有測試。

Shit!

第七天:總結與計劃

哈!我們的競爭對手使用了新的技術。並且我們的系統已經不行了。讓我們設計一個更好的系統出來,這個組件我們能夠使用這個技術。這個組件我們能夠使用那個技術。

前途又是光明的。


如今。我們又回到了第一天了。

(ps:暫時廣告區。歡迎關註我的微信公眾號——首發哦!

搜索:phodal。或者掃描以下的二維碼)

技術分享

Repractise基礎篇:Web應用開發七日談