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