ExtJs4學習(一):正確認識ExtJs4
認識ExtJs
1.Javat能用ExtJs嗎?
它是展現層的技術,與JS,HTML,CSS有關。至於伺服器端是.Net,還是PHP等無關。
2.ExtJs適合什麼樣的專案?
按照官方的說法,ExtJs是給你拿來做B/S的桌面應用程式的,並不適合做入口網站。我個人理解,ExtJs比較適合做需要大量複雜介面佈局和互動的資訊管理系統(MIS)。
3.ExtJs效率不行,好慢...?
確實,ExtJs做的複雜佈局和互動的頁面,在IE6,7,8下非常慢,在IE9下也不是很理想,但在Chrome,FireFox等新一代瀏覽器中執行速度很理想。我敢說在同樣複雜的頁面佈局和互動下,絕對比你用Asp.Net第三方伺服器控制元件強幾倍。所以在目前情況下,你不得不強烈推介你的客戶使用Chrome這類的瀏覽器來執行你的系統。對於一般內部區域網使用的資訊管理系統,這樣的要求是不過分的。
4.ExtJs效率問題的原因?
B/S程式,展現層的效率瓶頸在於3個方面:瀏覽器對Js的解釋速度,HTML DOM的渲染速度,記憶體釋放以及網路頻寬。隨著ExtJS的多次版本優化之後,這些問題都得以在一定程度的解決。特別以前讓人詬病的1M多的龐大JS庫的問題,在ExtJS4新的按需載入機制下已經完美解決。而其他問題往往和具體的瀏覽器有關,也不是Ext能解決的。事實上目前在Chrome瀏覽器下,我們用ExtJS做的系統響應速度已經快到了令人髮指的地步....如果要實現同樣複雜的介面佈局和互動,我找不出能比ExtJS這個解解決方案更快的技術。
5.用ExtJS需要寫大量的JS程式碼,會導致系統難以開發,除錯,維護?
相對於習慣了簡單拖拽控制元件的Asp.net程式設計師,ExtJs確實需要你掌握更多的基礎知識。但我們都承認很多需求並不是拖拽控制元件能解決的,要想做一個真正拿得出手的應用程式,你不得不付出更多的努力,下篇我們會講如何正確的學習,開發,除錯ExtJs。所以技術水平不好的技術團隊並不適合用ExtJs,用一些功能強大的第三方伺服器控制元件,如DevExpress,Telerik也許是你們的更好選擇。正如也有很多難以維護的C#專案一樣,你不能怪C#垃圾,只能怪自己垃圾。就像玩LOL一樣,沒有垃圾的職業,只有垃圾的玩家....
6.公司,技術團隊和個人是否值得對ExtJs投入學習成本?
客觀的說你投入的是對Javascript的學習成本,ExtJs本身沒有太多你需要投入的。除非你覺得看英文API是一件非常困難的事情。而對Javascript的投入,從現在的技術發展趨勢來說,絕對是值得投入的...不幸的是大部分國內Asp.Net程式設計師對Js的掌握程度還停留在從網上扒段特效的水平...
7.ExtJs的介面看起來都一樣一樣的,審美疲勞...
沒有人阻止你對ExtJs的介面進行改造...事實上國外有很多用ExtJs做的應用你根本看不出來說ExtJs做的。而且在ExtJs4裡支援sass,可以非常方便的改變ExtJS的面板和樣式。
8.選擇ExtJs的理由?
優秀的UI互動能力和功能強大的UI元件天生就是給資訊管理系統用的;
附送的面板樣式和成熟的佈局,一定程度上減少了美工的投入;
文件非常完善和好用;
已經很多年了,到了第4個大版本,無論是成功案例還是社群的技術討論都非常豐富,你可以輕易搜尋到自己遇到的問題;
開源和良好的面向物件結構,可以讓你非常容易的擴充套件和重寫ExtJs,實現自己想要的功能,也可以自己根據專案需求深度封裝成自己的元件;
多瀏覽器的相容性做的非常好,幾乎不用做任何修改,就能在目前流行的所有的瀏覽器下完美執行;
Javascript+HTML(5)做為WebUI開發的主流技術現在開來已經非常明朗,ExtJs發展形式一片大好;
從近些年來的ExtJs的版本升級可以看出,ExtJs的開發團隊是非常負責任的也是非常牛X的;
總結:對於開發技術的應用,只有垃圾的選擇和垃圾的應用,沒有垃圾的技術。不加前提的對一個技術片面評價,是浮躁的;不深入瞭解就人云亦云那是愚蠢的...