前言
分享好玩科技,探索未知世界。大家好,我是drinkingcode。針對樓主提出的問題,下面我做兩個部分來進行回答。
是否有必要?在這個社會化分工越來越明細的社會,如果你想要己靠技能在自己工作上得到晉升,那么我并不十分推薦你去學習前端。因為進入公司后,公司更多的是要求你在這個方向上有一個縱深的發展。只有很少一部分初創公司處于資金壓力,才會要求一人多技。
如果你并不指望通過技能在工作上獲得晉升,而僅僅只是因為興趣想要了解前端,那么此時學習前端倒也無可厚非。
如何入門?如果僅僅因為興趣想要去了解前端,那么在這里我也給出入門前端的指引。
HTML
HTML類似于樹的樹枝,支撐著整個頁面的主干。關于HTML的入門材料,推薦大家過一遍《HMTL與XHTML權威指南》,以了解HTML中具體有哪些標簽以及各個標簽有哪些用處。
CSS
CSS類似于樹的葉子,用以美化頁面。在這里也給大家推薦一本關于CSS的書籍《CSS權威指南》,用以了解CSS有哪些屬性以及各個屬性的作用是什么。
JavaScript
JavaScript類似于光照和水分,得以讓頁面充滿動態和交互。在這里推薦一本關于JavaScript的書籍是《JavaScript高級程序設計》,目的是為了熟悉JavaScript這門語言的基本使用。
框架
上述講到的HTML,CSS,JavaScript是一個頁面的基本組成元素。學會這三者,我們就可以寫出我們想要的頁面效果了。
鑒于前端演進也有一段歷史了,所以自然也會衍生出一些框架來提高前端開發的效率。目前主流的有兩大框架的組合:Element + Vue 和 Ant Design + React。
其中Element和Ant Design為組件庫。Vue和React為JavaScript框架。在國內,Element + Vue的組合更受歡迎一些。因此對于入門的同學可以著手從Element + Vue的組合來進行學習。
總結如果想要靠技能在工作上得到一定晉升,那么推薦小伙伴們無需學習前端,因為你需要把更多精力放在后端學習上,以迎合現代企業的人才發展需求,反之亦然。
對于想要了解前端的同學,這里也給出了學習的順序。其中HTML,CSS有了大體上了解就可以,而JavaScript則需要你做到較為熟悉。至于框架,有時間最好了解一下,畢竟可以在很大程度上提升你的前端工作效率。
如果你喜歡我的文章或對你有幫助,歡迎點贊轉發。關注我,我是drinkingcode,分享好玩科技,探索未知世界!
作為前后端都從事過的老鳥,我來講下自己的看法,希望能給迷茫的你一點思路:
前端是什么?你可以這樣理解,前端是通過界面完成人機交互,是離用戶最近的一個崗位。這個崗位在最近幾年已經發生了天翻地覆的變化,但趨勢是越來越規范、強大。
工作重心的區別前端更側重于界面實現、交互邏輯、用戶體驗。
后端更側重于性能、拓展性。
說一下具體技術吧:
前端必備技能有:
HTML、CSS、JavaScript、ES6+、VUE(REACT、Angular只有精通一門)、Webpack、以及數不勝數的UI框架,甚至現在流行的大前端將Andriod、IOS也列入了前端的范疇。
后端必備技能:Java(PHP、Python等至少精通一門)、Mysql(Oracle、SQLServcer等)、Linux基本使用、Readis、Docker等。
怎么選擇俗話說男怕入錯行,女怕嫁錯郎,選擇很重要。可以從下面幾點考慮:
就業情況
技術崗位目前都是緊缺崗位,當然這里講的是具備一定能力的開發者,濫竽充數的我相信哪個行業都不好呆。非要比較話,前端相對就業率高些,后端由于之前的基數,相對飽和,但如果你是高端人才,完全可以忽略。
薪資情況
目前就一二線城市來看,兩個行業基本持平,并長期會保持這種狀態。
難易程度
前端門檻相對于后端要低,但兩者深入都需要花很大的功夫。
所以要靜下心來想想自己這兩個方向更喜歡哪個。
換崗的困惑如果從事行業3年內發現更喜歡前端或后端甚至測試,我覺得可以大膽去換,前一份工作會是你的一份財富,因為編程本身思想很重要,這個不會隨著你換崗而丟失。
但如果從事很久后端或前端,再轉行,則先對劣勢了,畢竟招聘者希望入職員工是直接能帶來收益的。
總結耐住寂寞,方得始終!
編程這條路就是一個不斷學習,不斷否定的路,在路上會有各種各樣的誘惑。堅持很難,放棄很簡單,但往往堅持下來的人,終將能收貨自己所期。
加油~
一、定義不同
一般來說,我們將網站分為前端和后端。前端主要負責頁面的展示,后端則是業務邏輯的實現。
1、web前端
這里所說的前端泛指web前端,也就是在web應用中用戶可以看得見碰的找的東西,包括web頁面的結構、web的外觀視覺表現以及web層面的交互實現。
2、web后端
后端更多的是與數據庫進行交互以處理相應的業務邏輯。需要考慮的是如何實現功能、數據的存取、平臺的穩定性能等。
二、需要掌握的技術不同
1、web前端
精通JS,能熟練的應用JQuery,懂CSS,能熟練運用這些知識,進行交互效果的開發。
(1)精通HTML,能書寫語義合理,結構清晰,易維護的HTML解構;
(2)精通CSS,能夠還原視覺設計,并兼容業界承認的主流瀏覽器;
(3)熟悉JavaScript,了解ECMAScript基礎內容,掌握1-2種js框架,如JQuery;
(4)對常見的瀏覽器兼容問題有清晰的理解,并有可靠地解決方案;
(5)對性能有一定的要求,了解yahoo性能優化建議,并可以在項目中有效實施。
2、Web后端
后端開發人員:會寫Java代碼,會寫SQL語句,能做簡單的數據庫設計,會Spring和iBatis,懂一些設計模式等。
(1)精通jsp,servlet,javabean,JMS,EJB,Jdbc,Flex開發,或者對相關的工具、類庫以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,對Web開發的模式有較深的理解;
(2)練使用oracle、sqlserver、mysql等常用的數據庫系統,對數據庫有較強的設計能力;
(3)熟悉maven項目配置管理工具,熟悉tomcat、jboss等應用服務器,同時對在高并發處理情況下的負載調優有相關經驗者優先考慮;
(4)精通面向對象分析和設計技術,包括設計模式、UML建模等;
(5)熟悉網絡編程,具有設計和開發對外API接口經驗和能力,同時具備跨平臺的API規范設計以及API高效調用設計能力。
另外建議前端工程師可以使用藍湖來做代碼生成,可以提高開發效率