程式中減少if語句的使用:
注: if語句通常會讓**更加負載,但這不代表要完全拋棄if語句
1、 if語句的問題
a. 通常出現if語句的**很容易越改越糟
b. 複製時會有問題,即if語句缺失domain的概念
c. 開發者必須在頭腦中模擬執行實際情況,造成腦細胞浪費
2、 替代if語句的方案:
1). 布林引數(boolean params)
背景: 有方法在修改行為時,使用了boolean: create (string boolean) else {}}
解決方案: 將乙個方法拆分成兩個新的方法
create1() {} create2(){}
2). 使用多型(polymorphism)
背景: 根據型別switch時: switch(type)
解決方案: 使用多型,新增新型別時,只需要增加相關行為
3). nullobject/optional
背景: 當外部請求理解**庫的主要用途時,回答」查一下null的情況」
解決方案:
4). 將內聯語句轉為表示式
背景: 在計算布林表示式時,包含if語句: if (boolean) }
解決方案:將if語句樹合成單個表示式: boolean1 && boolean2
5). 給出對應策略
背景: 在呼叫一些其他**時,無法確保路徑是成功的
解決方案:針對被呼叫**,給出應對策略
mysql語句的優化(調優)
1 單條查詢最後新增 limit 1,停止全表掃瞄 否則,若無索引,將會查的太多 2 where子句中不要使用 否則放棄索引全表掃瞄。3 盡量避免 null 值判斷,否則放棄索引全表掃瞄。優化前 select number from t1 where number is null 優化後 selec...
mysql sql語句效能調優
在做伺服器開發時,有時候對併發量有一定的要求,有時候影響速度的是某個sql語句,比如某個儲存過程。現在假設伺服器 執行過程中,某個sql執行比較緩慢,那如何進行優化呢?假如現在伺服器 執行如下sql儲存過程特別緩慢 call sp wplogin register 1,1,1,830000 2222...
SQL 語句效能調優
經常聽到有做應用的朋友抱怨資料庫的效能問題,比如非常低的併發,令人崩潰的響應時間,長時間的鎖等待,鎖公升級 甚至是死鎖,等等。在解決這些問題的過程中,dba 經常發現應用開發人員對資料庫的 誤用 包括 返回過多不必要的資料 不必要和不適當加鎖,對隔離級別的誤用和對儲存過程的誤用等等。但是,面對浩如煙...