《ExtJS權威指南》——1.1節學習ExtJS必需的基礎知識

華章計算機發表於2017-08-01

1.1 學習Ext JS必需的基礎知識

  1. JavaScript
    嗯,這個還用說嗎?Ext JS本來就是一個JavaScript的框架,而且使用Ext JS就需要使用JavaScript語法來開發,需要JavaScript的知識是必然的了。問題的關鍵是,開發人員對JavaScript知識的掌握也有深淺之分。譬如,我碰到一些開發人員,對JavaScript算是很熟悉了,但是不會JSON,不會直接使用JSON物件,在使用Ext JS的過程中,需要使用JSON物件的時候,居然是通過組裝字串的方式,然後使用eval方法將其轉換為物件來使用的。這就是因為JavaScript學習深度不足造成的。

那麼,到底JavaScript要學到多深才能學好Ext JS呢?這個問題也不太好回答。不過以筆者的經驗來說,建議仔細認真地看一次《JavaScript權威指南(第5版)》 和《JavaScript高階程式設計(第2版)》這兩本書,重點關注和理解以下內容:
函式。
變數。
作用域(scope)。
原型模式(prototype)。
閉包。
文件物件模型DOM。
Document物件。
動態HTML事件以及事件處理。
Ajax。
JSON。
以上這些知識對於瞭解和使用Ext JS非常有幫助。因JSON涉及伺服器端的處理,所以本書會在本章1.2節講解。

  1. HTML
    HTML知識,這個對於Web開發人員來說應該是很熟悉的東西。這裡主要就是需要熟悉HTML的各種標記。
  2. CSS
    因為CSS知識的缺乏,很多開發人員在使用Ext JS出現顯示問題時不知道如何除錯,不知道如何去找錯誤。而這對學習理解Ext JS也造成了障礙。事實上,全部的JavaScript框架,就是通過指令碼的方式生成頁面元素與CSS,通過控制這些元素和CSS,實現需要的功能的,因而,掌握好CSS知識,對學習Ext JS非常重要,這要引起重視。譬如,對於佈局,瞭解佈局物件生成的頁面元素和CSS,對加深佈局的理解和使用是很有幫助的。因此,我建議對CSS還不是很熟悉的開發人員,好好補上這一課。其實,這個也不難學。因為Ext JS 4中已經嵌入了很多HTML 5和CSS 3的內容,筆者建議閱讀一下《HTML 5與CSS 3權威指南》這本書,在補課的前提下順便學習HTML5與CSS3。
  3. 物件導向的知識
    Ext JS框架是完全基於物件導向思想建立的,能掌握這方面的知識,對理解整個框架的運作和使用是非常有幫助。所以,我建議大家好好看看《設計模式》這本書。這不但對學習Ext JS有幫助,對學習伺服器端的開發語言也是很有幫助的。

5.三層架構的知識
Ext JS本身在客戶端就使用了三層架構,所有UI元件都是表現層,Store是資料訪問層。明白了這個,就可避免在UI元件裡找資料了。而通過Ajax技術,把瀏覽器當做表現層,伺服器端當做資料訪問層。這樣,伺服器只通過XML格式或JSON格式提供必要資料就行了,全部的表現可在客戶端通過Ext JS實現。這樣就避免了伺服器端程式碼和客戶端程式碼混搭在一起的問題,從而實現了客戶端與伺服器端的脫鉤,簡單來說,就是定義好資料的通訊格式,寫客戶端的可以不管伺服器端,寫伺服器端的可以不管客戶端,客戶端根據通訊格式接收資料,伺服器根據通訊格式提供資料就行了。這樣的優點就是,無論伺服器端的架構怎麼變(例如我今天用.NET的,明天或許用Java的)都沒關係,按通訊格式提供資料客戶端都能正確顯示。客戶說,這個介面不好,要改,沒關係,修改客戶端就行了,因為資料還是那些資料,與伺服器端無關。
總的來說,只有明白了三層架構才能深入瞭解Ext JS的開發思想,才能使用它開發出好的Web應用程式。
介紹三層架構的書不多,原因可能是這個不算太複雜,理解上也不難。而且這已經是屬於架構師的工作範圍了。如果你的目標是架構師的話,可以閱讀一下《架構之美》和《企業應用架構模式》。
6.其他的建議
實踐是最好的老師,如果碰到問題,或者有什麼的想法:Just do it!錯誤是在所難免的,只有做過,才懂得為什麼不能這樣,為什麼要這樣。筆者就是在錯誤中成長起來的,所謂吃一塹長一智!寫Web應用,最大的問題就是當機而已,有啥可怕的!問人,或許能解決一時的問題,但是不可能一個專案從頭到尾都問別人。“自己動手,豐衣足食”是真理!
如果有時間,建議多看看Ext JS的API文件和多研究一下Ext JS壓縮包中的例子,這對學習也是大有裨益的。如果能更進一步研究研究原始碼,那就更好了。
如果看英文沒問題,建議多上上Ext JS官網,看看裡面的博文,去論壇走走,多交流交流,也是不錯的。


相關文章