職能上的差異
首先,我們要分清Web designer(網頁設計師)和Web developer(網頁開發者,也稱程序員)的差異。兩者之間的差異主要表現在:一個是有關網站的視覺或美學方面,被稱為“前端”;另一個則是看不見的編碼方面的設計,被稱為“后端”。簡而言之,漂亮的網站界面都是出自網頁設計師之手,而牛逼強大的功能則是網頁開發者的杰作。
技術上的差異
我們再從技術的方面,瞧瞧在實際的招聘中,各大企業要求前端人員與后端人員分別具備怎樣的能力。
Web前端:
1. 精通HTML,能夠書寫語義合理,結構清晰,易維護的HTML結構。
2. 精通CSS,能夠還原視覺設計,并兼容業界承認的主流瀏覽器。
3. 熟悉JavaScript,了解ECMAScript基礎內容,掌握1~2種js框架,如JQuery。
4. 對常見的瀏覽器兼容問題有清晰的理解,并有可靠的解決方案。
5. 對性能有一定的要求,了解yahoo的性能優化建議,并可以在項目中有效實施。
Web后端:
1. 精通jsp,servlet,java bean,JMS,EJB,Jdbc,Flex開發,或者對相關的工具、類庫以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,對Web開發的模式有較深的理解。
2. 熟練使用oracle、sqlserver、mysql等常用的數據庫系統,對數據庫有較強的設計能力。
3. 熟悉maven項目配置管理工具,熟悉tomcat、jboss等應用服務器,同時對在高并發處理情況下的負載調優有相關經驗者優先考慮。
4. 精通面向對象分析和設計技術,包括設計模式、UML建模等。
5. 熟悉網絡編程,具有設計和開發對外API接口經驗和能力,同時具備跨平臺的API規范設計以及API高效調用設計能力。
總而言之,兩者的差異在于職能上,前端主要負責界面的設計;后端主要是制作界面后的功能。
形象上,前端注重形式、美觀;后端注重功能、實用性(為此,小編還特地去了喬布堂的研發部做了實地考察,發現我們的前端工程師買了2臺Macbook,而后端工程師買了2個鍵盤。驚人的符合!)
企業招聘中,前端工程師需要精通JS,能熟練應用JQuery,懂CSS,能熟練運用這些知識,進行交互效果的開發;后端開發人員需要會寫Java代碼,會寫SQL語句,能做簡單的數據庫設計,會Spring和iBatis,懂一些設計模式等。