全棧已死?不它將永生

緣起

本世紀初,web工具已經十分成熟,互聯網從不食人間煙火的實驗室,走入了大眾的視野。創建一個網站的所有必需品幾乎都可以在開源社區找到。

當然這個時代的來臨php功不可沒。以LAMP為代表的第一代棧就這樣走入我們的視野,那個時候只要是一個有毅力學習新工具的人,幾乎都可以通過一段不算太久的學習自己創建一個網站。

第一次分化

不久後,瀏覽器(XMLHttpRequest)引入了 AJAX,從而引領了Web 2.0時代和Web應用程序。但是,開發這些應用程序需要大量的工作,因此開發人員無法僅憑一己之力滿足業務的需求。

進而引發了第一次所謂前端和後端的分化,前端處理HTML、CSS和JavaScript,後端處理主機操作系統、HTTP服務器和數據庫,而xml則成為前後端溝通的橋樑。

一時間前後端分離似乎成了一種主流,為什麼用似乎這個詞呢?因為雖然絕大多數人都會說這個詞,但是極少有公司會完全採用這種模式。因為在沒有預編譯器的年代沒有公司會放心將業務邏輯暴露在前端。

那個時候的所謂分離更多的是前端寫完樣式,把代碼給後端,後端再用模版引擎去渲染前端頁面,而js只是偶爾業務上的一種補充。而後端工程師幾乎也可以稱為全棧工程師,因為實際工作中他們幾乎也是必須精通前端技術的。當然這個狀態也直接導致了後端鄙視前端這條鄙視鏈的出現。

所以第一次分化也可以說是一個不完整的分化,如果硬是要說分離,可能只是找個便宜點的人去幫後端工程師們完成一些他們不願意花時間去完成的工作。

全棧時代

第一次分化的不完整,也成為全棧時代的導火索。雖然專業化是一件好事,但是由此引發的團隊協作,信息傳遞,需求變更等一系列問題也讓團隊管理者們頭疼不已。這一些促使大家從新評估前後端分離所帶來的作用。經過一番考慮之後大家發現整個團隊全是全棧開發人員,不區分前端和後端,似乎是一個不錯的主意。

最重要的好處是,團隊中的每個開發人員都充分了解每一處代碼變更帶來的後果。他們每個人都可以正確地評估影響和風險,讓管理層清楚地瞭解成本和延誤狀況。此外,每當有工作人員離職時,團隊可以立即換人,而且新人也可以很快地熟悉工作。

第二次分化

這是一次迫不得已的妥協,並不是大家對於全棧工程師失去了愛,而是隨著技術的發展,層級的增多沒有人能掌握所有的技術,前端不再是寫寫樣式,後端也不再是curd,h5、webworker、負載均衡、雲計算那一項都足成為一個獨立的分支。

所以大家都覺得全棧已死,更有激進的人認為全棧就是一個笑話。

全棧已死?不它將永生

可是全棧真的死了嗎?現在的一切看起來和很多年前多麼的相似,在眾多開源工具還沒有出現之前,人們無法想象,用LAMP能在幾個小時之內搭建出一個網站。因為他們覺得光是web服務器就需要一個團隊來完成!可是現在搭建網站的公司真的有人會去完全從底層實現一個web服務器嗎?

全棧不是精通所有技術的人,他只是一群善假於物的人!!!隨著工具鏈的完善他們依然會站在聚光燈下,當然那個時候工具鏈的概念也會泛化


全棧已死?不它將永生


分享到:


相關文章: