成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Web前端開發(fā)入門不得不看

GeekQiaQia / 2632人閱讀

  引
  如今,各種互聯(lián)網(wǎng)的Web應(yīng)用程序?qū)映霾桓F,那么如何快速入門,成長為一個優(yōu)秀的Web開發(fā)工作者呢?
  這個問題不容易回答,幾乎所有的培訓(xùn)機構(gòu)都不能清晰地解答。
  所以對于Web開發(fā)剛剛?cè)腴T的菜鳥們,我覺得只有通過去做,去實驗,學(xué)會Web開發(fā),可能是學(xué)著學(xué)著,實驗著實驗著就會了。
  沒有人告訴你如何去做。我學(xué)習(xí)的時候,我的導(dǎo)師只是給了我一堆視頻,一堆文檔。我們從明確一個目標開始:“哦,這個階段,我要獨立完成一個簡單的Web應(yīng)用程序,例如新聞發(fā)布系統(tǒng)”。
  或許學(xué)會如何開發(fā)Web應(yīng)用程序只是在完成這個Web應(yīng)用程序過程中產(chǎn)生的副產(chǎn)品而已。你可以管它叫項目驅(qū)動,也可以認為這只是學(xué)習(xí)任何語言的一個非常有效的方法。

  一、分析與設(shè)計
  無論做一個傳統(tǒng)的桌面應(yīng)用程序,還是做一個Web應(yīng)用程序,前期的分析與設(shè)計是不可避免的。
  分析:需求分析,你必須了解你要做的是什么,你的客戶到底想要的是什么,在做新聞發(fā)布系統(tǒng)的時候,我就必須問我自己這樣的問題:我的新聞發(fā)布系統(tǒng)能干什么,我想他是什么樣子的等等。
  當(dāng)搞明白了,我到底要做什么的時候,就要開始設(shè)計了。設(shè)計是很繁瑣的,記得以前做機房收費系統(tǒng),設(shè)計幾乎是改了又改,細化了又細化,這里也是一樣。
  對于剛剛?cè)腴T的你,我想應(yīng)該簡單地畫畫頁面流程圖,選擇什么樣的工具?不重要,可以用Word,可以用Visio,即使用紙也無所謂,因為鉛筆和橡皮能讓你快速應(yīng)變,只是如果要保存和傳播,就不要選擇紙了。這個時候,頁面畫出來,就是一堆框框的羅列,很簡單,只要能讓自己知道,這個應(yīng)用最后大概會是什么樣就可以了。當(dāng)然點擊某個按鈕能完成什么等,可以用程序流程圖表示出來,流程圖還是推薦大家畫的,因為這樣你對系統(tǒng)的整個脈絡(luò)會有更加清晰的認識。
  二、網(wǎng)頁實體模型
  呵呵,理論上說,草圖整完了,應(yīng)該做實體模型了,仍然可以看做是頁面的細化,不過這次看起來應(yīng)該像最后Web應(yīng)用程序成品的一個截圖了。當(dāng)然,如果你的客戶就是你自己,只要你自己看著滿意就可以了。
  如果你是在不信任自己的Ps技術(shù),或者,你實在沒有審美細胞,又或者你不想成為大牛的網(wǎng)頁設(shè)計師,你也可以偷懶,直接奔向網(wǎng)頁原型的開發(fā)。當(dāng)時,我就偷懶了,給自己的理由是:我是沒有審美的程序員。事實證明,如果你沒有實體模型,做起網(wǎng)頁原型來肯定是要花費更多時間的,有句話說得好,“出來混,早晚要還的”。
  三、網(wǎng)頁原型開發(fā)
  網(wǎng)頁原型是用HTML開發(fā)出來的,肯定是要使用CSS渲染的。一般,我們的HTML文檔都會利用外部樣式來定義文檔中使用的樣式。Javascript也放在外部文檔中,這個文檔只包含了Javascript代碼。
  按照這樣方式進行分離,網(wǎng)站將包含三種文本文件:HTML,包含頁面的內(nèi)容和結(jié)果;CSS:控制頁面的外觀和表示;Javascript,控制頁面的行為。
  HTML, Javascript, CSS文件必須是純文本格式的,這樣瀏覽器才能理解他們,推薦幾款不錯的編碼工具:NotePad++(小巧,免費),EditPlus(功能全面的文本、HTML、程序源代碼編輯器),VIM(速度,用它你可以把鼠標扔掉了)。
  這個時候,在我的網(wǎng)頁原型上做一些可用性測試,防止以后出現(xiàn)大面積的失誤。在這個步驟的最后,我基本上就知道了我的web應(yīng)用是如何組織到一起的了,前臺頁面有什么,各個頁面是怎么跳轉(zhuǎn)的等等。
  這就好比,我做好了一個車模,剩下的就是讓車跑起來了,又或者,我是造人,我已經(jīng)把人的皮囊做好了,接下來就是做它的五臟六腑了,哈哈,貌似人不是這么造的,不太貼切。
  四、選擇框架
  現(xiàn)在你已經(jīng)知道了要去開發(fā)什么東西了,接下來的工作依然很多,我想,這個時候,你就該選擇,要采用什么語言,什么框架了。
  有選擇自然就有痛苦。我至今沒有看到,有人大膽宣稱,哪個框架最好,哪種語言最好。
  其實,它們都各有不同,每個都有自己的長處。最重要的是你要知道它們?nèi)魏我粋€都能讓你開發(fā)出好用的web應(yīng)用。
  選擇合適自己的,真是不容易,還好,如果你并不想花時間去研究所有框架,那么建議你選擇比較容易上手的ASP.NET 框架吧,語言自然就選擇C#了。
  如果不是開發(fā)很小的系統(tǒng),我想,你應(yīng)該會用到數(shù)據(jù)庫,如果你不知道如何選擇,那就先從Access或者Sql Server開始吧。
  五、開發(fā)進行時
  好像蓄勢待發(fā)了,那就挽起袖子開干吧,標準的編程工作嘛。在后臺,你要創(chuàng)建類,對象,服務(wù),過程,以及數(shù)據(jù)持久層來把這些對象保存到數(shù)據(jù)庫中。
  后臺是整個應(yīng)用的核心,對任何應(yīng)用來說,它跟普通的編程沒有什么區(qū)別,才用面向?qū)ο蟮姆绞?,?yīng)用設(shè)計模式,等等,可以把C/S開發(fā)的經(jīng)驗應(yīng)用過來。
  然后,把后臺的程序和原型界面集成到一起,把系統(tǒng)各部分集成到一起。集成的過程依然是可以用Javascript精雕細琢滴,采用jQuey,采用Ajax等等。
  六、測試,調(diào)試。
  這個時候,你的web應(yīng)用程序開發(fā)已經(jīng)接近尾聲了,只是開發(fā)。再回頭看看自己的需求和設(shè)計是否被實現(xiàn),你同時還要確保你的程序能夠在各種瀏覽器里都能正確的運行(如果是IE6,我想你還是會糾結(jié)一下的,至于為什么?真正做的時候,你就知道了)。
  在各個瀏覽器中調(diào)試的時候,推薦你安裝一些插件,例如FireFox瀏覽器中的Firebug,IE下可以用WebDevelopmentHelper等。
  自己測試沒有問題了,最好找一個身邊的人簡單測試一下,你也不希望,發(fā)布了后,你的應(yīng)用被一些“愚蠢的網(wǎng)友”莫名其妙的操作搞死吧。
  如果你是一個追求完美客戶體驗的人,那么接下來就要花些心思去改變你的Web應(yīng)用程序去給用戶創(chuàng)造更美好的體驗了,這個時候依然會用到一些剛才提過的技術(shù),jQuery和Ajax等,如果你選擇Asp.NET框架,你可以試著了解一下Asp.Net Ajax。
  七、發(fā)布和后續(xù)工作
  這最后一步是發(fā)布你的應(yīng)用,如果你愿意,先發(fā)布一個Beta版,因為肯定會有bug,這樣只有一小部分用戶能夠發(fā)現(xiàn)你的應(yīng)用里的大問題。
  他們會幫助你改進程序的質(zhì)量。切記,不要忙著增加功能,要專注于把你目前的程序變的穩(wěn)固。
  經(jīng)過了beta階段,就要發(fā)布正式版了,這里會牽扯到一個推廣的問題,像我這種小人物,我還是喜歡用微博,這是個好東西,如果你不懂,可以去了解一下這方面的動態(tài)。
  或許直到你徹底完成自己的第一個Web應(yīng)用程序才明白我開頭說的那句話:"或許學(xué)會如何開發(fā)Web應(yīng)用程序只是在完成這個Web應(yīng)用程序過程中產(chǎn)生的副產(chǎn)品而已"。
  那么,上述內(nèi)容一到七中提到的那些英文單詞就是我們開發(fā)過程中學(xué)到的東西,讓我們一起來大概地看一看,在上述開發(fā)過程到底學(xué)到了什么:
  1、Html
  HTML 超文本標記語言 (Hyper Text Markup Language) ,是用來描述網(wǎng)頁的一種語言。 不是一種編程語言,而是一種標記語言(markup language) ,HTML 使用一套標記標簽(markup tag) 來描述網(wǎng)頁 。
  網(wǎng)頁文件本身是一種文本文件,通過在文本文件中添加標記符,可以告訴瀏覽器如何顯示其中的內(nèi)容(如:文字如何處理,畫面如何安排,圖片如何顯示等)。瀏覽器按順序閱讀網(wǎng)頁文件,然后根據(jù)標記符解釋和顯示其標記的內(nèi)容,對書寫出錯的標記將不指出其錯誤,且不停止其解釋執(zhí)行過程,編制者只能通過顯示效果來分析出錯原因和出錯部位。但需要注意的是,對于不同的瀏覽器,對同一標記符可能會有不完全相同的解釋,因而可能會有不同的顯示效果。
  HTML之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。所謂超級鏈接,就是一種URL指針,通過激活(點擊)它,可使瀏覽器方便地獲取新的網(wǎng)頁。這也是HTML獲得廣泛應(yīng)用的最重要的原因之一。
  2、Xml
  Xml可擴展標記語言 (Extensible MarkupLanguage, XML) ,用于標記電子文件使其具有結(jié)構(gòu)性的標記語言,可以用來標記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對自己的標記語言進行定義的源語言。 XML是標準通用標記語言 (SGML) 的子集,非常適合 Web 傳輸。XML 提供統(tǒng)一的方法來描述和交換獨立于應(yīng)用程序或供應(yīng)商的結(jié)構(gòu)化數(shù)據(jù)。
  XML與HTML的設(shè)計區(qū)別是:XML是用來存儲數(shù)據(jù)的,重在數(shù)據(jù)本身。而HTML是用來定義數(shù)據(jù)的,重在數(shù)據(jù)的顯示模式。
  3、CSS
  在Web開發(fā)早期,網(wǎng)頁設(shè)計人員經(jīng)常抱怨他們對網(wǎng)頁的外觀缺乏控制力,他們無法精確地控制對象在網(wǎng)頁上的位置,而且對頁面上的字體的外觀也沒有什么控制力,因為網(wǎng)頁不比實際紙張,針對多大的紙做什么樣的設(shè)計,而網(wǎng)頁的大小是不固定的。
  CSS(Cascading Style Sheet,層疊樣式表)規(guī)范是由W3C制定的,由于允許同時控制多重頁面的樣式和布局,CSS可以稱得上 WEB 設(shè)計領(lǐng)域的一個突破,它使得內(nèi)容與表現(xiàn)分離 。作為網(wǎng)站開發(fā)者,你能夠為每個 HTML元素定義樣式,并將之應(yīng)用于你希望的任意多的頁面中。如需進行全局的更新,只需簡單地改變樣式,然后網(wǎng)站中的所有元素均會自動地更新。這樣,即設(shè)計人員能夠?qū)⒏嗟臅r間用在設(shè)計方面,而不是費力克服HTML的限制。
  4、JavaScript
  首先,JavaScript和Java無關(guān),JavaScript 是屬于網(wǎng)絡(luò)的腳本語言!那么為什么名字如此相似?這是典型的市場營銷方面的成功,它的推廣成功,也是借了Java的東風(fēng)。當(dāng)微軟開始意識到JavaScript在Web開發(fā)人員中流行起來時,微軟還是一貫風(fēng)格,建立了自己的腳本語言,JScript。
  JavaScript可以使網(wǎng)頁更具交互性,給用戶提供更令人興奮的體驗,當(dāng)用戶在頁面間導(dǎo)航時向他們提供反饋。例如他可以設(shè)置鼠標懸停效果,在客戶端驗證表單,創(chuàng)建定制的HTML頁面,顯示警告框,設(shè)置cookie等等。
  5、Ajax
  Ajax是Asynchronous JavaScript and XML(異步 JavaScript 和 XML)的縮寫。嚴格意義上Ajax是Javascript的一小部分。但隨著頻繁地使用,這個詞不再指某種技術(shù)本身,而是以下這些技術(shù)的組合:
  XHTML;CSS;JavaScript訪問DOM;XML,在服務(wù)器和客戶之間傳輸?shù)臄?shù)據(jù)的格式;XMLHttpRequest,用來從服務(wù)器獲取數(shù)據(jù)。
  Ajax是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術(shù),大多數(shù)處理在用戶的瀏覽器中發(fā)生,往往在后臺與服務(wù)器進行少量數(shù)據(jù)交換,時間很短,而且AJAX可以使網(wǎng)頁實現(xiàn)異步更新,這意味著可以在不重新加載整個網(wǎng)頁的情況下,對網(wǎng)頁的某部分進行更新(傳統(tǒng)的網(wǎng)頁,即不使用AJAX的網(wǎng)頁,如果需要更新內(nèi)容,必需重載整個網(wǎng)頁面)。基于以上這些,可以使用Ajax建立功能豐富的應(yīng)用程序。
  有很多使用 Ajax的應(yīng)用程序案例:Google 地圖,Google日歷,Gmail,My Yahool!門戶,騰訊微博,新浪微博、開心網(wǎng)等等。
  不錯的ajax工具包有:AjaxControlToolkit,Yahool!UserInterfaceLibrary等等。
  6、DOM
  在網(wǎng)頁上,組成頁面的對象被組織在一個樹形結(jié)構(gòu)中,頁面的頂級包含在標簽中,在其中會找到和標簽,而其他標簽包含在這兩個標簽中,依此類推。
  Javascript將文檔樹中的每個項目當(dāng)作對象,通過 Javascript,您可以重構(gòu)整個 HTML 文檔。您可以添加、移除、改變或重排頁面上的對象,要改變頁面的某個東西,Javascript就需要獲得對 HTML 文檔中所有元素進行訪問的入口。這個入口,連同對 HTML元素進行添加、移動、改變或移除的方法和屬性,都是通過文檔對象模型來獲得的,也就是說,文檔中對象的表示稱為文檔對象模型,即Document Object Model,簡稱DOM。
  在1998年,W3C 發(fā)布了第一級的 DOM 規(guī)范。這個規(guī)范允許訪問和操作 HTML 頁面中的每一個多帶帶的元素。所有的瀏覽器都執(zhí)行了這個標準,因此,DOM的兼容性問題也幾乎難覓蹤影了。DOM 可被 Javascript 用來讀取、改變 HTML、XHTML 以及 XML 文檔。
  DOM被分為不同的部分(核心、XML及HTML)和級別(DOM Level 1/2/3):
  Core DOM,定義了一套標準的針對任何結(jié)構(gòu)化文檔的對象
  XML DOM,定義了一套標準的針對 XML 文檔的對象
  HTML DOM,定義了一套標準的針對 HTML 文檔的對象。
  7、jQuery
  jQuery是繼prototype之后又一個優(yōu)秀的Javascrīpt框架。它是輕量級的js庫(壓縮后只有21k),它兼容CSS3,還兼容各種瀏覽器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera9.0+)。jQuery使用戶能更方便地處理HTML documents、events、實現(xiàn)動畫效果,并且方便地為網(wǎng)站提供AJAX交互。jQuery還有一個比較大的優(yōu)勢是,它的文檔說明很全,而且各種應(yīng)用也說得很詳細,同時還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁保持代碼和html內(nèi)容分離,也就是說,不用再在html里面插入一堆js來調(diào)用命令了,只需定義id即可。
  其宗旨是——WRITE LESS, DO MORE(寫更少的代碼,做更多的事情)。
  8、ASP.NET。這個就不用我羅嗦了,你懂得……
  9、整個開發(fā)過程你還會學(xué)習(xí)到一些工具的使用:
  Visio,Dreamweaver,Vistual Studio,Sql Server或Access,(Vim, EditPlus, Notpad++),各種瀏覽器以及FireBug的插件,IE下的WebDevelopmentHelper等。
  10、當(dāng)然,如果你足夠用心,你還發(fā)掘出很多不錯的資源,例如MSDN,W3cSchool,一些前輩的博客,一些技術(shù)論壇等等,這都是你未來前進道路上的財富。
  綜上,如果你真的完成了自己的Web應(yīng)用程序,并通過做這個程序?qū)W習(xí)了以上這些技術(shù)和工具的基礎(chǔ)內(nèi)容,那么恭喜你,你已經(jīng)成為一個初級Web應(yīng)用程序開發(fā)者了。

如果你在學(xué)習(xí)前端的過程中遇到什么問題或者想獲取學(xué)習(xí)資源的話,歡迎加入前端學(xué)習(xí)交流QQ群:328058344 我們一起學(xué)前端!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/50880.html

相關(guān)文章

  • Web前端開發(fā)入門得不

      引  如今,各種互聯(lián)網(wǎng)的Web應(yīng)用程序?qū)映霾桓F,那么如何快速入門,成長為一個優(yōu)秀的Web開發(fā)工作者呢?  這個問題不容易回答,幾乎所有的培訓(xùn)機構(gòu)都不能清晰地解答?! ∷詫τ赪eb開發(fā)剛剛?cè)腴T的菜鳥們,我覺得只有通過去做,去實驗,學(xué)會Web開發(fā),可能是學(xué)著學(xué)著,實驗著實驗著就會了?! ]有人告訴你如何去做。我學(xué)習(xí)的時候,我的導(dǎo)師只是給了我一堆視頻,一堆文檔。我們從明確一個目標開始:哦,這個階段...

    Nekron 評論0 收藏0
  • Web前端開發(fā)入門得不

      引  如今,各種互聯(lián)網(wǎng)的Web應(yīng)用程序?qū)映霾桓F,那么如何快速入門,成長為一個優(yōu)秀的Web開發(fā)工作者呢?  這個問題不容易回答,幾乎所有的培訓(xùn)機構(gòu)都不能清晰地解答?! ∷詫τ赪eb開發(fā)剛剛?cè)腴T的菜鳥們,我覺得只有通過去做,去實驗,學(xué)會Web開發(fā),可能是學(xué)著學(xué)著,實驗著實驗著就會了?! ]有人告訴你如何去做。我學(xué)習(xí)的時候,我的導(dǎo)師只是給了我一堆視頻,一堆文檔。我們從明確一個目標開始:哦,這個階段...

    levius 評論0 收藏0
  • 2017-07-01 前端日報

    摘要:前端日報精選騰訊前端團隊社區(qū)源碼分析入門指南一些關(guān)于使用的心得基本類型與引用類型知多少掘金中文第期框架選型周刊第期入門系列模塊車棧重構(gòu)基于的網(wǎng)絡(luò)請求庫某熊的全棧之路的那些奇技淫巧的平凡之路模仿寫個數(shù)組監(jiān)聽掘 2017-07-01 前端日報 精選 Why you shouldn`t use Preact, Fast-React, etc. to replace React today -...

    _DangJin 評論0 收藏0

發(fā)表評論

0條評論

GeekQiaQia

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<