程式開發的心得小結

程式開發的心得小結

  和Flash的開發環境相比,Flex提供的元件庫確實很誘人,但由於功能太全面,導致程式的體積大,有時候使用不當,可能會影響程式執行效率。

  在Flex的幫助手冊中,有一個專門的章節講了程式的.最佳化,下面是我結合幫助作的幾點小結:

  1、避免容器的多級巢狀,減少相對尺寸、相對定位的使用。

  在使用百分比來給容器內的元件定尺寸,一旦容器中的任何一個元件的位置和尺寸變化,都會引發容器對所有子級的重定位動作。如果巢狀的級別很深,這個計算量會很大。

  2、儘量使用輕量級的容器

  Canvas是體積最小的容器,它只支援絕對定位。很多時候,都可以使用它來代替HBOx和VBox。另外,Canvas也是我們編寫自定義容器性質元件的一個首選。它具有容器的基本功能,利於擴充套件。

  3、避免使用大體積的元件,比如DataGrid、AdvancedDataGrid

  大個子元件的功能強大,但開銷也是非常大的。由於功能的複雜性,使得皮膚、樣式、itemRenderer的實現都格外複雜。

  4、處理資料時多用分頁的方式

  在使用資料型別控制元件時,儘量減少資料一次的顯示量。比如TileList,它會把資料一次性全部建立,不管是不是需要顯示,這樣很浪費資源。 ViewStack 、TabNavigator等在處理元件時,並不是一次建立,只要元件在第一次被顯示時才建立,這樣,就避免的不必要的開銷。

  5、setStyle和styleName

  Flex 元件的皮膚都是視覺化元件,元件在自身初始化時,會使用當前的樣式比如styleName完成所有皮膚元件的繪製。如果我們在執行期間透過setStyle修改了元件的樣式,元件的尺寸、位置就會作相應調整。聯絡到第一條,如果元件位於一個層級很深的容器中,也會有一個大的計算量。

最近訪問