Repractise基礎篇:Web應用開發七日談
本來想的只是畫一個如下的七日圖來說說Web開發的,隨後又想了想這似乎是一個非常棒的Web開發相關的知識介紹。應用開發是一個很有意思的迴圈,多數時候我們總會覺得別人的程式碼寫得不好。即使它使用了一種非常好的設計,我們也可能會覺得他很複雜。
而它總結下來就是下面的七天過程裡發生的一些事情。
七日談
其實對於Web開發,有下面這張圖就足夠了。
特別版:
第一天:新的開始
我們迎來了我們的新的一個專案,看起來每個人都很興奮。這一天過得很快,也做了特別多的事。
首先,我們搭建了自己本地的開發環境。我們選擇了一門新的語言,也開始使用新的IDE,一個全新的開始。
接著,我們開始建立一個很簡單的Hello,World——在絕大多數語言裡都有這樣的一個傳統。這是一個Web專案,看來我們選用的框架裡的Hello,World是一個TODO MVC。
呀!這個框架比原來那個框架看起來更簡單,更直接也更加好用。
然後,我們開始去建立我們的構建系統了。讓我們告別Ant,迎來新的構建工具,Gradle比他們強大多了。我們可以用這個構建工具來做很多的事情——依賴管理、編譯和構造、打包。Gulp看上去很流行,讓我們用Gulp吧。順便再建立一個或多個用於釋出和構建的伺服器。
最後,在我們的持續構建系統中搭載相應的PipeLine來完成這些事。
第一天,就這樣興奮地結束了。
第二天:令人期待的新體驗
“沒辦法,第一天就是得做那些事。”
現在,才開始真正的編碼工作。我們拿到了一個任務,知道了它是做什麼之後。
我們開始對其分步,第一步做什麼,下一步做什麼,每一步都很清楚了。可以編寫我們的第一個測試,看來這個測試好像並沒有想象中對麼簡單,我們需要Mock物件。
啊!這個元件需要Fake一個Service。第一個任務看來是完成編碼了,讓我們對其進行簡單的重構。
我們已經有了單元測試,現在讓我們新增一個功能測試。在我們這個例子裡,似乎也需要一個整合測試。
終於可以Commit,並Push程式碼。
第三天:上線準備
在我們不斷地重複第二個步驟的時候,我們也要開始去考慮如何上線了。
我們是直接部署在Docker容器裡呢?還是直接部署在伺服器上呢?接著,我們還為其配置了快取服務和均衡負載等等。
咦!這個配置是寫死的!這裡需要一個Toggle來控制功能是否上線!
第四天: 資料分析
上線了幾天後,發現一些資料發生了變化。網站的訪問速度變快了,使得訪問網站的人越來越多。
等等,這個地方好像沒有人用過!
唔!這是一個Bug!
應用的效能比以前好多了,一個伺服器可以頂以前的兩個,一下子省了好多伺服器。
看來,使用者比較喜歡那個功能,我們增強一下這個功能吧。
第五天:持續交付
又修了一個bug。
噢!我不覺得這個功能使用者會喜歡。
哈!這個新功能看上去不錯。
第六天:惡夢
唉!這程式碼是誰寫的!
這裡需要重構一下,這裡也需要重構一下。
什麼!沒有測試!
Shit!
第七天:總結與計劃
哈!我們的競爭對手使用了新的技術,而且我們的系統已經不行了。讓我們設計一個更好的系統出來,這個元件我們可以使用這個技術,這個元件我們可以使用那個技術。
前途又是光明的。
現在,我們又回到了第一天了。
(ps:臨時廣告區,歡迎關注我的微信公眾號——首發哦!搜尋:phodal,或者掃描下面的二維碼)
相關文章
- 用AJAX開發智慧Web應用程式之基礎篇(轉)Web
- .NET 基礎拾遺(7):Web Service 的開發與應用基礎Web
- 談Web應用開發時我們談什麼Web
- 鴻蒙系統應用基礎開發鴻蒙
- 開發Web應用Web
- web_前端開發JS框架篇-Vue基礎入門版-基礎語法Web前端JS框架Vue
- Python Web 應用:WSGI基礎PythonWeb
- React 應用實踐(基礎篇)React
- 視訊開發基礎篇
- (資料科學學習手札102)Python+Dash快速web應用開發——基礎概念篇資料科學PythonWeb
- 《Flask Web開發 基於Python的Web應用開發實戰》簡評FlaskWebPython
- [譯] Web 應用架構基礎課Web應用架構
- Go基礎學習記錄 – 編寫Web應用程 – Web開發輸入驗證(三)GoWeb
- PHP 系列:PHP Web 開發基礎PHPWeb
- iOS應用架構談(1):開篇iOS應用架構
- Web | 淺談用Python進行Web開發WebPython
- iOS開發小記-基礎篇iOS
- iOS 藍芽開發·基礎篇iOS藍芽
- 淺談canvas在web開發中的應用與優化CanvasWeb優化
- 《JavaScript Web應用開發》作者Nicolas Bevacqua訪談問題徵集(圖靈訪談)JavaScriptWeb圖靈
- 沒基礎想學Web前端開發Web前端
- Flask RESTful API 開發----基礎篇 (1)FlaskRESTAPI
- Flask RESTful API 開發----基礎篇 (2)FlaskRESTAPI
- 《Flask Web開發:基於Python的Web應用開發實戰》學習筆記(二)FlaskWebPython筆記
- JavaScript 模組化七日談JavaScript
- 讀了《JavaScript Web 應用開發》JavaScriptWeb
- WEB應用開發中的ServletWebServlet
- 急聘JAVA Web應用開發高手JavaWeb
- 利用ASP開發Web應用 (轉)Web
- Node助力Web應用開發——在新的開發平臺,打造高效能Web應用Web
- 用JavaServer Faces開發Web應用(4) (轉)JavaServerWeb
- 用JavaServer Faces開發Web應用(3) (轉)JavaServerWeb
- iOS開發基礎篇--NSNotificationCenter使用小結iOS
- 前端開發基礎知識整理–css篇前端CSS
- jQ基礎篇–外掛開發入門
- 《Python web開發》筆記 一:網頁開發基礎PythonWeb筆記網頁
- 開始使用 Python 開發 Web 應用PythonWeb
- 因開發ChatGPT應用被約談ChatGPT