每到一個階段,都會有一個最火的程式設計師職位,目前就是前端!

智雲程式設計發表於2019-07-22
每到一個階段,都會有一個最火的程式設計師職位,目前就是前端!


現代網際網路技術的成熟導致了技術分工的極度細化,一個技術團隊往往會包括前端、後端、安全、運維、架構、測試等各種職責,尤其是前後端分離的技術實現,像關老爺手中一把鋒利無匹的大偃月刀,徹底切斷了前後端程式設計師的聯絡,只剩下了 HTTP。

在2000年左右程式設計的時候可不是這樣,從來沒有前後端分離這回事。如果你自己不能扛起一個專案,不僅是會被淘汰,而且會被嘲笑。我最開始用 Perl 寫 CGI 程式,後來陸續學了 JavaScritp、Java、C#、Python、Objective C、Go 等,早期的專案或產品基本上都是從前做到後,除了設計之外,從切圖、前端頁面到業務邏輯、持久化、連線池、異常、快取、日誌、叢集等等,基本上都要自己參與程式設計或獨立實現,在那個年代,你很難以專業細分的方式運作專案,因為根本找不到那麼多程式設計師。

現在的情況完全不一樣了,網際網路的高速發展需要技術上更為專業、更為精深的程式設計人員,所以前後端技術體系的分離,就成了大勢所趨,形成了一種「反模式」。

早期開發更多是把前端當做一個展示層,大部分業務邏輯都放在服務端實現。前端很輕,因為前端很弱,沒有 AJAX 技術,沒有 JQuery,沒有框架,瀏覽器引擎和規範都不完善。可謂「通訊基本靠喊,下雨基本靠傘」,最多弄個 XML 資料島進行頁面渲染,沒什麼重型武器。

隨著前端技術的突飛猛進,前端終於從輕量級的小姑娘,變成了矯健的女俠客,依然嫵媚多姿,但是前端開始承擔更多更重要的職責和角色。這裡的「反模式」並不是一種貶義,而是指前端的強大,導致一部分業務邏輯從伺服器端轉移到了前端去做,後來逐步形成了前後端分離的開發方式,前端負責介面上的大部分業務邏輯,然後透過 Rest 服務與後端進行互動。原來業務系統看重的事務問題,要麼一次 Rest 算一個事務,要麼做成冪等服務,要麼透過事務補償的方式實現,要麼交給非同步訊息佇列處理,這樣就形成了一套更為輕量級的開發模式。

現在大部分網際網路公司裡已經看不到 Java 和 HTML、JS 混在一起的 JSP 檔案,也看不到 PHP 和 CSS 混在一起的 PHP 檔案,前端程式設計師們更多的是和 HTML、CSS、JavaScript、JSON 以及滿瀏覽器的 Dom 元素打交道。

如果你依然在程式設計的世界裡迷茫,不知道自己的未來規劃,可以加web前端學習秋秋裙767,web前端中間的數字是273,web前端最後是102 。7年全棧工程師,根據這些年從事開發經驗,整理了一份最適合2019年學習的web前端乾貨,web前端的大型網際網路技術教學影片,不停更新最新的教程和學習方法,每天分享學習經驗。無論是零基礎,還是進階都歡迎。這裡是前端學習者的集中地


每到一個階段,都會有一個最火的程式設計師職位,目前就是前端!

不止於此

前端技術的腳步似乎沒有停歇的意思,它們有了離線儲存,有了畫布,可以在畫布上做出精妙的動畫和展示效果,有了移動端開發框架,也有了伺服器端程式設計框架。Node.js、Meteor.js 的出現讓前端程式設計師大大出了一口惡氣,他們昂首闊步闖入了服務端開發的領地,並開始進行全棧開發。對於這個新的闖入者, C 程式設計師、Java 程式設計師、Go 程式設計師們紛紛表示:兔子尾巴長不了,看你們還能火幾天。說完以後就繼續去嵌入式、大資料、高併發、多核程式設計去了。

但是前端不管不顧,依然很火。如果你問我現在最火的程式設計師職位是什麼?我不得不告訴你,是前端,優秀的前端!前端已經取代了前幾年紅得發紫的移動開發者,成為程式設計師新貴!

每到一個階段,都會有一個最火的程式設計師職位,目前就是前端!


前端技術日新月異,技術的更新換代,必然引發業務架構的調整,這裡面就會牽扯出一個傳統網站的改造問題。

Rest 的路由表可以在後端控制,也可以在前端控制,我們最早都是在伺服器端的框架裡維護的,現在前端框架 AngularJS,Backbone 等,都有路由模組,放到前端更靈活。

上線的頁面應該進行預處理,比如程式碼壓縮、JS 混淆,替換靜態資源的連結為 CDN 的連結等。前端也是有自動化構建工具的,推薦 Gulp。能自動化的事情,一定要讓機器去做。

所有頁面的靜態資源比如圖片,CSS,JS 等,沒有特殊要求,一定要放到 CDN 上。

移動端頁面怎麼處理?佈局和邏輯簡單的頁面,採用響應式設計可以搞定。複雜頁面,最好還是維護兩套程式碼,成本更低。

SEO 問題、瀏覽器相容問題,需要根據業務需求提前設定好,不要等開發人員都搞完了再做標準上的變化,這會帶來很大的麻煩。

每到一個階段,都會有一個「最火的技術職位」,比如 C 程式設計師,Java 程式設計師,iOS 程式設計師,Android 程式設計師,現在是前端程式設計師,資料科學家。要不要追,要不要轉,我覺得不重要,這些技術很快就會沉澱成傳統的成熟的技術,到了那個階段,真正的技術專家才會顯山露水,拔劍四顧,一戰功成!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901074/viewspace-2651339/,如需轉載,請註明出處,否則將追究法律責任。

相關文章