當前位置:編程學習大全網 - 編程語言 - 如何用彜語寫程序代碼

如何用彜語寫程序代碼

1.使用整數和長整數

提高代碼速度最簡單的方法是使用正確的數據類型。您可能不相信,但是選擇正確的數據類型可以極大地提高代碼的性能。大多數情況下,程序員可以用整數類型或長整數類型的變量替換短整型、小數類型和雙精度小數類型的變量,因為易語言處理整數和長整數的能力遠高於其他數據類型。

大多數情況下,程序員選擇使用十進制或雙精度十進制,因為這樣可以節省小數。但是小數也可以存儲在整型變量中。比如程序中有三個小數位,那麽妳只需要把保存在integer變量中的值除以1000就可以得到結果。根據我的經驗,用整數和長整數代替短整數類型、小數類型和雙精度小數類型後,代碼的運行速度可以提高近10倍。

但是不要總是強調整數和長整數的使用,因為程序中數據類型的定義還涉及到壹個關鍵問題,就是數據的安全性。頻繁不規則的定義數據類型會導致算法出現漏洞,這是數據的安全性和批判性判斷的問題。對於金融和工程計算,小數點的精度是非常敏感的數據,只能用雙精度數據進行標準化。另外,改成整數也會導致程序的可讀性急劇下降。

2.避免使用通用數據。

壹般的變量需要16個字節來存儲數據,而整數只需要2個字節。通用變量通常用於減少設計的工作量和代碼量,有些程序員為了省事也用。但是,如果壹個軟件嚴格按照規範設計和編碼,變體類型是完全可以避免的。

3.盡量避免使用屬性。

在通常的代碼中,最常見、最低效的代碼就是在可以使用變量的時候重復使用Property,尤其是在循環中。要知道訪問變量的速度是訪問屬性的20倍左右。許多程序員在程序中使用下面的代碼:

容器名稱:數字類型:整數類型

容器名稱:容器類型:整數類型

計數循環頭(7,容器)

文本1。內容=文本1。Content+# newline+to text((值×容器))

計數周期尾部()

下面這段代碼的執行速度是上面這段代碼的20倍。

容器名稱:數字類型:整數類型

容器名稱:容器類型:整數類型

容器名稱:文本類型:文本類型

文本=文本1。內容

計數循環頭(7,容器)

Text = text+#換行符+to text((值×容器))

計數周期尾部()

文本1。內容=文本

另外需要註意的是,這涉及到壹個編程思路,使用屬性作為變量在大多數情況下可以簡化算法。所以有時候不能只強調用變量代替屬性。

6.避免調用短的子程序

只用幾行代碼調用子例程也是不經濟的——調用子例程可能比執行子例程中的代碼要花更長的時間。在這種情況下,您可以將子例程中的代碼復制到最初調用子例程的位置。但是有時候壹個小的子程序可能會被調用很多次而不是只有兩三次,所以應該調用。

7.減少對子對象的引用

在彜語中,對象的引用是通過使用。例如:窗口1。編輯框1。內容。

在上面的例子中,程序引用了兩個對象:窗口1和編輯框1。用這種方法報價效率很低。但遺憾的是,這是無法避免的。我的“多媒體模塊”就有這個缺點。

8.檢查文本數據是否為空。

大多數易語言用戶在檢查文本數據是否為空時會使用以下方法:If (text 1。Content = " ")註意:如果操作完成。

不幸的是,比較字符串比讀取屬性需要更多的處理。所以我建議妳用下面的方法:If(對數值(text 1。Content) = 0)註:執行結束。如果另壹種不同的意見是:問題是當文本字符串是“ABC”等非數值類型時,to數值(“ABC”)= 0不代表空。文字對比效率不低。在底層算法中,長度壹般在內容比較之前直接比較。

9.使用數組而不是多個變量

當您有多個保存相似數據的變量時,請考慮用數組替換它們。在彜語中,數組是最有效的數據結構之壹。

10.盡量用動態數組代替靜態數組。

使用動態數組對代碼的執行速度不會有太大影響,但在某些情況下可以節省大量資源。

11.摧毀物體

無論寫什麽軟件,程序員都需要考慮在用戶決定終止軟件運行後,釋放軟件所占用的內存空間。但遺憾的是,很多用戶對此似乎並不太在意。正確的做法是在退出程序之前銷毀程序中使用的對象。比如關閉數據庫:關閉(數據庫名),關閉全部(),關閉打開(播放)的文件,關閉加載的圖片等。打開文件(包括數據庫文件、圖片文件等。)在停止程序執行的時候應該是關閉的,但是窗口銷毀對於銷毀窗口和窗口單元是自動的,對於釋放來說足夠了。最好不要在窗口中隨意破壞窗口單元,這可能會導致程序運行過程中潛在的單元數據訪問崩潰。只有在圖形緩沖區的情況下才需要經常銷毀它們。

12.嘗試使用內部子例程來減少easy模塊的數量,因為從easy語言連接到外部對象需要大量的CPU處理能力。每當妳調用壹個接口函數的時候,都會浪費大量的系統資源。另外,Yi語言只有在調用Yi模塊中的接口函數或變量時,才會將Yi模塊加載到內存中。這些模塊只有在easy language應用程序退出時才會從內存中卸載。如果代碼中只有壹個模塊,那麽易語言只加載壹次,所以代碼的效率提高了;另壹方面,如果代碼中有多個模塊,那麽Yi語言會進行多次加載操作,代碼的效率會降低。

13.使用對象數組

當設計壹個用戶界面時,程序員應該試著為相同類型的控件使用對象數組。可以做壹個實驗:在窗口中添加100個圖片框,每個圖片框有不同的名稱,運行程序。然後創建壹個新項目,在窗口中添加100個圖片幀,但這次使用對象數組並運行程序,您可以註意到兩個程序加載時間的差異。也有人認為邏輯上兩者的效率應該差不多。

14.使用窗口單元格的“移動”方法

當改變對象的位置時,壹些用戶喜歡使用寬度、高度、上邊緣和左邊緣的屬性。比如:按鈕1。寬度= 100按鈕1。高度= 100按鈕1。頂邊= 0按鈕1。左= 0。

其實是低效的,因為程序修改了四個屬性,每次修改後都會重畫窗口。正確的做法是使用Move方法:按下按鈕1。移動(0,0,100,100)。

15.減少圖片的使用

圖片會占用大量內存,處理圖片也占用大量CPU資源。在軟件上,如果可能的話,可以考慮用背景色代替圖片——當然這只是從技術人員的角度。但是為了優化程序界面,使用圖形的好處可能遠遠大於節省的資源,否則就不會有XP,遊戲也不會有進步。

16.用易語言編譯程序有三種選擇:編譯、獨立編譯和編譯生成安裝軟件。優先編譯安裝軟件,編譯和獨立編譯,因為獨立編譯會編譯易語言系統中所有的支持庫,而編譯安裝軟件只選擇程序中必要的支持庫進行編譯。如果想在沒有易語言環境下運行,就不要用“編譯”,套用“編譯生成安裝軟件”或者“獨立編譯”。

總結:執行效率和程序可讀性永遠是矛盾的,要綜合考慮;資源占用和程序可用性永遠是矛盾的,也要全面考慮。

基於此,以下是壹些提高程序效率的規則。

規則1不要壹味追求程序的效率,要在滿足正確性、可靠性、健壯性、可讀性等質量因素的前提下,盡量提高程序的效率。

規則2側重於提高程序的整體效率,輔以提高局部效率。

規則三優化程序效率時,首先要找出限制效率的“瓶頸”,不要在不相關的地方優化。

規則4先優化數據結構和算法,再優化執行代碼。首先考慮壹個功能(命令)能否實現壹個功能。如果找不到這樣的函數,那麽考慮使用其他代碼。

規則5有時候時間效率和空間效率可能是相反的。這時候就要分析哪個更重要,做出適當的妥協。比如花更多內存提升性能。

規則6不要壹直只追求緊湊代碼,因為緊湊代碼產生不出高效的機器碼。

  • 上一篇:金屬切削技術中如何確定工作步驟的順序?
  • 下一篇:中國機械裝備崛起需要創新嗎?為什麽?
  • copyright 2024編程學習大全網