答案是需要的,而且很有必要。縱觀國內軟件開發工程化發展,隨著移動互聯網的高速發展,web應用的開發趨向于完全的前后端分離,分離后的后端部分,可以給所有的前端工程,如瀏覽器,手機App提供數據服務支撐,前后端完全分離是軟件開發工程化發展的目標,以此帶來的分工協作可以很大程度上縮短軟件項目的開發周期和降低開發維護成本。但是實際中項目中,各個開發團隊使用不同的技術,前后端的分離程度是不太一樣的,如采用模板引擎技術freemaker、thymeleaf等,web前端部分和后端部分仍然是在一個工程中的。這樣對于后端開發人員,這類項目的開發維護根本無法撇下前端部分,不去理解前端源碼,系統整體業務將無法理解。這樣勢必影響到后端的開發調試,最終導致工作效率低下。只有熟悉了前端框架,你才可以對軟件整體業務邏輯有清楚的認識,數據是如何從用戶到后端服務器中,再回到用戶眼中的;熟悉前端框架可以幫助你設計良好、合理的后端接口,降低同前端開發者溝通成本,提高工作效率。熟悉前端框架,可以輔助你更好的調試驗證后端服務接口;更進一步,熟悉了整套系統,才能在更高視野下,俯視完整的業務流程,進行性能調優。
想起多年前和對日外包的一個朋友的聊天,日本和印度的軟件開發成熟度非常高,印度的開發工程師可以做到,只需要看文檔中對函數的入參和返回值的說明,編寫代碼實現該函數功能即可,完全不理會軟件產品整體業務功能是怎樣的,因為沒那個必要。互聯網和移動互聯網高速發展的今天,用戶需求、產品設計每天都在變化,大量企業為適應這種變化,擁抱敏捷開發模式,這對開發者的綜合能力要求越來越高。復合型人才才是企業的終極需要,全棧這個詞已在網絡中頻頻出現,特別是一些初創企業,短期用不到高大上的技術,反而需要多面手。從管理者角度來看,萬一哪天團隊需要有人臨時頂上,維護一些前端代碼,你也可以站得出來嘛。完整的應用軟件,一個完整的業務流程,一定是縱貫前端和后端的,雖然個人能力的發展方向每個人有不同的選擇,但是不要輕易把個人能力定位限制到一個端上,還得跟著團隊走。
后端開發學習前端框架是有必要的,特別是跟數據處理相關的,如Vue,以此來輔助后端開發。在有限的時間里,同類型的前端框架學習一個即可。前端框架的學習成本較大程度上依賴于基礎部分的掌握情況。所以,就算是后端開發人員,前端的三大基礎件html+css+javascript也不能丟了。