




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
WEB前端技術(shù)之路(一)知識架構(gòu)2010-01-0703:10P.M.前言:“滾滾長江東逝水,浪花淘盡英雄;是非成敗轉(zhuǎn)頭空,古今多少事,都付笑談中?!蔽业那岸思夹g(shù)之路,恍惚間,已走了近七年,一路走來,在很多朋友、同事的鼓勵下,想徹底、系統(tǒng)的將自己的感悟分享出來。還是那句老話,路是自己走出來的,不是別人指出來的,我在這里無論說些什么,都是個參考,具體情況還需具體分析,要自己拿捏得當。首先,我覺得但凡成功的人,大抵都是飽含激情的人,在做技術(shù)和科研領(lǐng)域過猶不及。從我的經(jīng)歷和身邊的人看開去,我覺得有兩種情況,要么你熱愛前端技術(shù),要么你不是非常熱愛前端技術(shù),但需要前端技術(shù)來糊口。這兩種情況有著本質(zhì)的不同,對于熱愛前端技術(shù),你更加需要的是了解前端技術(shù)的知識架構(gòu),按照知識架構(gòu)結(jié)合自身情況和工作情況,制定學習計劃并充分貫徹和執(zhí)行。對于并不非常熱愛前端技術(shù),又需要前端技術(shù)來糊口,我只有一個建議:愛上前端技術(shù),先!其次,對于技術(shù)學習的宏觀角度來看,可以分成單一技術(shù)和復合技術(shù)兩種,如果國內(nèi)的IT技術(shù)就業(yè)市場和國外一樣成熟,單一技術(shù)會在職業(yè)發(fā)展道路上處于前置,復合技術(shù)會成為向更高層次發(fā)展的必由之路。由于國內(nèi)的實際情況,更多時候是需要有復合技術(shù)才能糊口,在企業(yè)里發(fā)展的好點兒了,就轉(zhuǎn)向某個領(lǐng)域,做單一技術(shù)來想更高層次發(fā)展。其實,我們可以簡單實用國外的JobSearcher對比國內(nèi)的ChinaHR,就能發(fā)現(xiàn),國內(nèi)招聘專職開發(fā)Flash、ActionScript、Silverlight、JavaScript……的單一技術(shù)崗位很少,而國外卻很多,甚至幾乎不會直接招聘“WEB前端開發(fā)”,復合技術(shù)在國外多被招聘為“架構(gòu)師”。最后,知識架構(gòu)很重要。學習并掌握一類知識技能,無論是單一技術(shù)還是復合技術(shù),她們都有自己的知識架構(gòu)。我個人理解,如果把技術(shù)學習當作是一次旅程,知識架構(gòu)就是這次旅程的路線圖。我們在旅行之前,通常會給自己規(guī)劃一條旅行路線:When?Where?Whow?Dowhat?Seewhat?Whatisyourobjective?WEB前端技術(shù)知識架構(gòu):“Smilin`inTheEnd,FindYourOwnWayHome”---REOSpeedwagon
這只是W3C一場演講(0910how-fast)PPT里闡述的WEB技術(shù)Architecture,這里頭紛繁復雜的技術(shù)并非WEB前端技術(shù)的全貌,充其量算是前端技術(shù)的基礎(chǔ)。但是,就算是基礎(chǔ),也已經(jīng)足以詮釋WEB前端技術(shù)的復雜性了,如果我們一頭扎進這紛繁復雜的技術(shù)海洋中去,離上岸將是遙遙無期。我個人的建議是:關(guān)鍵知識深度掌握!首先,要了解基于TCP的HTTP協(xié)議,HTTP協(xié)議才是承載WEB前端技術(shù)的根基,只有了解了HTTP協(xié)議的實現(xiàn)細節(jié),才能在未來開展WEB前端技術(shù)學習、工作的時候更加得心應手。針對HTTP協(xié)議,可以先看《TCP-IP詳解卷三:TCP事務協(xié)議,HTTP,NNTP和UNIX域協(xié)議》第13章HTTP:超文本傳送協(xié)議129~141頁。其次,可以看/Protocols/rfc2616/rfc2616.html里的《HypertextTransferProtocol--HTTP/1.1》針對現(xiàn)役的HTTP1.1進行深入細致的學習。其次,要掌握HTML的語法和Tag的細節(jié),這些是我們未來構(gòu)建WEB前端應用的載體。在這部分學習中,網(wǎng)上相關(guān)文章和技術(shù)資料很多,我也就不特別推薦什么了,但是,有一點需要注意,不要直接陷入對技巧的學習,就是不要直接從網(wǎng)上摘抄、復用一些別人的代碼,更多自己動手才是提升的捷徑。其次是理解,對于HTML很多人都覺得自己是大牛,但是,你問他HTML一共有多少標記是W3C規(guī)范的、多少是FF的、多少是IE的?估計多半兒答不上來,這里我們要掌握的知識點就是,回答這些問題。這里就像是小時候搭積木,你掌握的越多,手里的積木越多,能夠搭出的東西就越多,所以,耐心的花點兒時間去學習是有必要的。接著,需要掌握CSS。從HTML4.0開始,內(nèi)容和表現(xiàn)的分離讓我們極大提高了工作效率,這些提升都得益于層疊樣式表(CascadingStyleSheets)。CSS在我看來就是格式描述語言,用來描述HTML元素的格式,通知瀏覽器各種HTML元素應該如何被渲染。需要掌握的知識點主要有:CSS語法、類和樣式定義之間的關(guān)系、IE縱向兼容、IE和WebKit內(nèi)核橫向兼容、CSS文件規(guī)劃、CSS文件分割、CSS文件加載。然后,要掌握DHTML、JavaScript、DOM。隨著WEB前端技術(shù)的發(fā)展革新,UI交互越來越豐富、動態(tài)、平滑、易用,這些都得益于DHTML、JavaScript和DOM等技術(shù)。不割裂這三塊兒的原因是,我認為這三塊兒知識要放在一起進行學習才有效果,只有了解DHTML(DynamicHTML)的概念、范疇、方法,才能夠正確使用JavaScript和DOM來實現(xiàn)動態(tài)的頁面和交互操作。說得直白些,DHTML就是用JavaScript來操作HTML頁面包含的所有元素、樣式、行為、事件,以及通過和瀏覽器及操作系統(tǒng)交互獲得擴展性的一種綜合性技術(shù)統(tǒng)稱。這里的知識結(jié)構(gòu)無法細說,只要有技術(shù)能夠讓頁面從一種狀態(tài)改變到另一種狀態(tài),這種技術(shù)就應該存在于DHTML體系里,就是在我們的知識結(jié)構(gòu)里。但是,知識結(jié)構(gòu)的層次按照先后順序應該是:DOM文檔對象模型、JavaScript、其他相關(guān)技術(shù)。先學習DOM接口的好處,是詳細學習和了解HTML文檔對象模型都提供了哪些接口?哪些內(nèi)容是可以操作的?如何針對文檔對象模型里的元素進行操作?緊接著學習JavaScriopt是為了能夠去實踐、去使用文檔對象模型、去操作文檔對象模型,這實際上可以理解成從理論到實踐的一個過程。最后,F(xiàn)lash、ActiveX、FF&Chrome插件、Silverlight……等其他能夠讓WEB頁面從一種狀態(tài)改變到另一種狀態(tài)的技術(shù)。這里只介紹較為常用的Flash、ActiveX、Silverlight所包含的知識結(jié)構(gòu),其他方面會在后續(xù)具體學習方法之中介紹。Flash方面,需要掌握:FlashCS、Flash2D平面和色彩設(shè)計、Flash控件皮膚修改和設(shè)計、Flash自定義控件設(shè)計、Flash項目管理、Flash編程、ActionScript編程、Flex控件使用、Flex界面設(shè)計、Flex編程、第三方素材導入、主流第三方工具使用、反編譯和素材提取、SWF文件切割和規(guī)劃、Flash網(wǎng)絡編程、調(diào)試技巧、單元測試技巧、發(fā)布技巧。ActiveX控件方面:ActiveX控件使用方法、ActiveX控件設(shè)計制作、ActiveX控件升級、ActiveX控件安全、調(diào)試技巧、單元測試技巧、發(fā)布技巧。Silverlight方面:.NET編程、Blend和VS.NET使用方法、XAML、網(wǎng)絡編程、CodePlex、調(diào)試技巧、單元測試技巧、發(fā)布技巧。WEB前端技術(shù)之路(二)職業(yè)規(guī)劃2010-01-2708:10P.M.關(guān)于一個WEB前端的職業(yè)規(guī)劃,其實是有各種的答案,沒有哪種答案是完全正確的,全憑自己的選擇,只要是自己選定了,堅持去認真走,就好。在這里,我只是簡要說一下自己對于這塊兒內(nèi)容的理解。有一個觀點想要分享給大家的是:任何規(guī)劃和目標的實現(xiàn)都依賴于知識的積累,而知識的積累來源于學習及學習后大量的實踐。我提供一個實踐途徑,我們可以在工作之余的時間在網(wǎng)上或外包公司那里接一些私單做,因為目標不是賺錢,我們可以用最低的價格來提升自身競爭力,獲得大量訂單就意味著獲得大量的實踐機會,同時,還有一些收入作為工作成就感之外的安慰獎,還是不錯的。一、職業(yè)方向定位首先,只有確定好自己的職業(yè)方向,才能做好職業(yè)規(guī)劃。在我看來,做WEB前端技術(shù)能夠找到的職業(yè)方向有以下幾種:(1)資深WEB前端工程師這個方向算是一個WEB前端最基本的選擇了,在國外,很多老外都能夠把自己的專業(yè)做到極致,能一輩子就在一個專業(yè)領(lǐng)域不斷學習和積累。主要在于內(nèi)因和外因兩方面,內(nèi)因是老外通常思想比較簡單直接,容易一直專注于一個領(lǐng)域;外因是國外的環(huán)境很好,能夠良好的支撐這樣的職業(yè)發(fā)展道路。反觀國內(nèi),從內(nèi)因來講,WEB前端技術(shù)人員還是蠻浮躁的,通常會因為WEB前端知識的更新速度太快而覺得學習起來辛苦,最終轉(zhuǎn)向后臺或其他道路。從外因來講,WEB前端人員沒有獲得公平的待遇,可能從HTML頁面制作就開始并沿襲下來的,從來WEB前端人員都比后端人員低一等,貌似前端就是“淺顯”的代名詞、后端就是“深奧”的代名詞,這也直接造就了前端人員的收入無法和后端人員媲美,同時直接影響到前端人才市場的活躍程度。另一方面,前端的技術(shù)入門較容易,造成另一個極端情況:人員泛濫、人才稀缺。我想對所有的WEB前端工程師說:面包總會有的,要耐得住寂寞!我個人比較推薦這個職業(yè)發(fā)展方向,因為,在這個方向下,只要足夠耐心、厚積薄發(fā),成功的概率是非常高的。同時,這是一條最單純的路,我們更多的是花費精力在技術(shù)的鉆研上,而不是辦公室政治等其它瑣事。(2)資深WEB架構(gòu)師說功利點兒,我喜歡這個方向,既兼顧了工作的單純性、又能夠減少實際Coding的工作量能騰出更多時間鉆研技術(shù)。在國內(nèi),WEB前端工程師遇到較多的情況是總是反復編寫著同樣的代碼,總是面對著同樣的技術(shù)和產(chǎn)品,容易感覺枯燥。由于我們擁有最為廣泛的WEB相關(guān)知識沉淀,使得我們更加容易成為一名架構(gòu)師。這個職業(yè)發(fā)展方向不如第一種來得平滑,主要是作為一名架構(gòu)師不得不學習:后端技術(shù)、DBA、Platform等內(nèi)容,而這種學習通常需要實際操刀做項目,不是自己在家里寫兩個Demo就好的,這就勢必會遭遇一段時間的陣痛期。雖然不是很平滑,但是,對于一個大局觀好、悟性好、知識面廣的前端工程師,我推薦你們努把力,走一條光榮的架構(gòu)師之路吧。(3)自己創(chuàng)業(yè)其實,自己創(chuàng)業(yè)是最好的道路、也是成功率最低的道路,挑戰(zhàn)和機遇并存。這里,作為一個前端技術(shù)人員,需要將自己的視野更多放在行業(yè)的動態(tài)、產(chǎn)業(yè)鏈的動態(tài)、相關(guān)產(chǎn)品領(lǐng)域的動態(tài),把關(guān)注細節(jié)的優(yōu)勢繼續(xù)保持,同時,增強自己把控一個產(chǎn)品乃至一個公司命運的能力。但是,這條道路和技術(shù)之路稍有分歧,后續(xù)將不再贅述。(4)轉(zhuǎn)崗管理或其他由于這條職業(yè)道路和WEB前端技術(shù)之路關(guān)系不大,故而,這里不做過多討論,但是,無論是否走上這條道路,我覺得對于任何技術(shù)之路,更好的大局觀、更廣泛的視野是良好發(fā)展的必備條件,擁有良好的大局觀和更廣泛的視野別無他法,只能不斷的進行知識的橫向拓展和積累,同時,多在橫向拓展知識的時候進行實踐,把知識變成技能。二、職業(yè)發(fā)展目標我都有一個最終的目標,在這個目標之上,我們需要給自己制定一系列學習和成長計劃,制定的方法如下:第一、梳理知識架構(gòu);梳理知識架構(gòu)的目的在于,我們要了解清楚,哪些技術(shù)是前置、哪些技術(shù)是后繼,那些技術(shù)是深度、哪些技術(shù)是廣度,按照這兩個維度梳理好知識架構(gòu)之后,我們才能準確地制定清晰的成長目標、高效的成長計劃。第二、分解目標;我認為,大抵可分解為三個階段,包括:起步階段、提升階段、成型階段。這三個階段分別對應著不同的目標:起步階段:1、基本知識的掌握在我們梳理的知識架構(gòu)中,按照我們分析的兩個維度里最前置的、最淺顯的部分,作為打基礎(chǔ)的階段,必須要在這個過程中更多投入到實踐中去,我們通常做的多了、熟練了,就認為這部分知識和內(nèi)容掌握了。2、常用工具的掌握對于常用工具的掌握應該掌握一些有大公司或?qū)I(yè)團隊背景的流行工具,這些工具的熟練掌握能夠提升專業(yè)度、職業(yè)度,同時,能提升我們的工作效率。我們只有在檢驗自己對于知識和技能熟練程度的時候,才會自虐式的用Notepad去編寫頁面、css和腳本等內(nèi)容。3、溝通技巧的掌握通常做技術(shù)的人會被定位為“不善溝通”的人,這是為什么呢?究其原因,主要是因為多跟程序和代碼打交道,跟人的溝通較少導致。這種時候我們要特別注意增加和人溝通的機會,著重提升這塊兒的能力。另一方面,我們通常被稱為“不懂溝通技巧”的人。作為一個技術(shù)人員,包括我自己,似乎天生就有一些難以接受挑戰(zhàn)的缺陷。在國內(nèi),我們的技術(shù)人員通常都是自己制定方案、自己執(zhí)行方案,在執(zhí)行過程中又缺乏相關(guān)產(chǎn)品、交互設(shè)計等人員的溝通,大多是在自己的思路貫徹下進行開發(fā),久而久之,我們習慣于信任自己的觀點、在自己的視角看問題,對于挑戰(zhàn)總是百般地“據(jù)理”力爭。我們需要更多提升的是,如何在對方的視角看問題、如何在用戶的視角看問題。4、良好的開發(fā)習慣開發(fā)習慣是養(yǎng)成的,一旦有不好的習慣,對于將來去修正帶來的將是很大的麻煩,我們在培養(yǎng)良好開發(fā)習慣一定要從起步時做起,例如:寫代碼之前先分析、先寫文檔、先寫注釋。定義變量最好能用直接可理解的語義,最好是拼音,別整英文,尤其是生僻單詞,將來自己忘了還要開金山詞霸。文件最好有有意義的文件夾命名來管理,文件名最好有意義,需要版本號的最好能和項目版本號一同更新……等等。提升階段:1、高級技術(shù)的掌握在提升階段對于知識和技能掌握,我們需要從梳理好的知識架構(gòu)中選擇更深一層次的技術(shù)進行學習,選擇之前,我們先通過類比或預估的方法,衡量自身學習的難點,以學習難點和自己最不感興趣的部分為主。這樣推薦大家的原因是:這個階段我們興趣正濃,已經(jīng)度過了苦澀的起步階段,到達了興奮的提升階段,我們要用興趣和興奮去挑戰(zhàn)最困難的部分,在我們信心受挫和興趣濃厚之中找到平衡。同時,輔以其他的深層次知識一起學習和研究。2、產(chǎn)品思想的學習沒有正確的產(chǎn)品思想,很難設(shè)計出良好的程序,無論從界面、交互,還是接口、邏輯,不能夠理解產(chǎn)品、理解用戶需求,我們會給自己造成很大的麻煩,例如:我們千辛萬苦用最新技術(shù)、最復雜的實現(xiàn)做出的功能,卻得不到使用者或領(lǐng)導、同事的認可。為了使我們的工作和學習更加有效率、避免無用功,我們需要不斷的學習產(chǎn)品的思想,只有理解了產(chǎn)品的思路,我們才知道用我們的技術(shù)去輸出什么。3、各種框架的學習框架是我們提高工作效率的優(yōu)秀手段,對于框架的學習是成長必經(jīng)之路。我們學習框架的路線通常應該是:使用——》分析——》個性化定制——》模仿編寫自己的框架。只有大量的使用,才能明白設(shè)計框架者在設(shè)計背后的思路,只有了解到設(shè)計的思路,才能做正確全面的分析,只有正確全面的分析才能支撐我們?nèi)ζ洳眉艋驍U展,只有經(jīng)過實際分析、修改別人的框架,才有可能寫出優(yōu)秀的、自己的框架。學習通常的路線是:學習、理解、模仿、創(chuàng)造。4、富客戶端應用的學習隨著帶寬和計算機性能的提升,以及WEB2.0的如火如荼,富客戶端應用充斥著互聯(lián)網(wǎng),如果你不懂得富客戶端應用,你就不能稱之為一個合格的前端技術(shù)人員。可以按照:Flash動畫——》Flash編程——》Flex——》——》Air——》Silverlight動畫——》Silverlight編程的步驟學習,先學Flash后學Siverlight的原因,一來Silverlight還不太成熟,二來,實際Silverlight借鑒了很多Flash的思想,最好在學習的時候不要本末倒置。5、各種網(wǎng)絡協(xié)議的學習WEB前端技術(shù)就是云上的技術(shù),云的協(xié)議有N種,我們應該著重學習:TCP/IP,UDP,HTTP,POP3,SMTP這幾種協(xié)議
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Module11 Unit2(教學設(shè)計)-2024-2025學年外研版英語八年級上冊
- 黑龍江省龍東地區(qū)部分學校2024-2025學年高一上學期階段測試地理試題(三)(解析版)
- 2025年幼兒園大班科學《圓形的妙用》標準教案最終版
- 2025至2030年中國報刊雜志塑料袋數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國手模數(shù)據(jù)監(jiān)測研究報告
- 商務決策-西游記團隊裁員決策案例分析決策
- 箱涵施工工藝
- 2024土地轉(zhuǎn)讓協(xié)議書(31篇)
- 二零二五年度消防培訓教材開發(fā)與推廣勞務承包協(xié)議
- 二零二五年度企業(yè)法律顧問常年法律服務合同
- 風電場運行維護招標文件
- 證據(jù)目錄模板
- 維保收費標準清單(房屋維修物業(yè)用表)
- 幼兒園小班科學教案《蝸牛爬爬》含PPT課件含反思
- 繼發(fā)性甲狀旁腺功能亢進癥的治療
- 2023年北京市中學生數(shù)學競賽高中一年級初賽試題解答
- GB/T 3452.5-2022液壓氣動用O形橡膠密封圈第5部分:彈性體材料規(guī)范
- HY/T 0349-2022海洋碳匯核算方法
- HY/T 083-2005海草床生態(tài)監(jiān)測技術(shù)規(guī)程
- 2023年遼寧裝備制造職業(yè)技術(shù)學院高職單招(數(shù)學)試題庫含答案解析
- 馬工程教材《公共財政概論》PPT-第三章 財政支出總論
評論
0/150
提交評論