asp.net如何加快頁面加載(三)

        前兩篇文章講到服務器控件加載,以及前端加載如何加快,如果你還未閱讀建議你閱讀(章節一章節二),或許你會小有收穫。

        接下來我們叫講的是後臺代碼的細節,雖然大家都覺得代碼你寫我寫都差不多,那怎麼能提高性能呢。其實不然,很多算法講究的是細節,當然今天我們講的不是算法,而是一些細節。

這個章節我們就講選擇條件如何使用,大家似乎都覺得if else,switch誰都會有,那有什麼好講;其實不然,在編寫過程中可以做到優化代碼,減少判斷的效果。不賣關子,我直接切正題:

  • 三元表達

選擇判斷只存在兩種結果時,可以考慮使用三元表達式讓你代碼精簡。

例如:string value=a>0?"是":"否";

  • if else

條件不是恆等於或多條件,存在多種結果時,使用if else比較合適。

例如:

          private int Fun(int n) {
            if (n > 10)
                return 10;
            else if (n > 5)
                return 5;
            else if (n > 3)
                return 3;
            else
                return 0;
        }

  • switch 單一條件,並且是恆等於某些直時。

例如:枚舉,數字,字符等等。

private int Fun2(int n)
        {
            int m=0;
            switch (n) {
                case 10: m = 9; break;
                case 8: m =7; break;
                case 6: m = 5; break;
                case 4: m = 3; break;
            }
            return m;
        }

  • 其它討巧方法的選擇

例如:

1.假如上面的方法的N參數就存在這四種情況,那麼我們就大可以這麼寫:return n-1;

2.假如以下情況(只有5種狀態):

/// <summary>
        /// 這個方法經常使用
        /// </summary>
        /// <param name="n"></param>
        /// <returns></returns>
        private string Fun3(int n) {
            string msg = "";
            switch (n) {
                case 0: msg = "信息錯誤"; break;
                case 1: msg = "信息不完整"; break;
                case 2: msg = "信息已更正"; break;
                case 3: msg = "信息修改成功"; break;
                case 4: msg = "默認值"; break;
            }
            return msg;
        }

那麼我們可以創建一個全局數組變量,以及改良下方法,如下:

private static string[] msgs = new string[] { "信息錯誤", "信息不完整", "信息已更正", "信息修改成功", "默認值" };
        /// <summary>
        /// 看起來是不是很簡潔!
        /// </summary>
        /// <param name="n"></param>
        /// <returns></returns>
        private string Fun4(int n) {
            return  msgs[n<5? n:4];
        }

總結:更多的技巧,需要大家花時間和精力去總結。

下個章節預告:循環使用技巧


新上線項目:生活查詢平臺

轉載請加註地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章