1. 程式人生 > >表達異常的分支時,少用 if-else 方式(可以使用衛語句、策略模式或者狀態模式來實現)

表達異常的分支時,少用 if-else 方式(可以使用衛語句、策略模式或者狀態模式來實現)

避免後續程式碼維護困難, if-else儘量不要超過3層, 可以嘗試使用衛語句、策略模式或者狀態模式
衛語句:
衛語句就是把複雜的條件表示式拆分成多個條件表示式,比如一個很複雜的表示式,嵌套了好幾層的if -else語句,轉換為多個if語句,實現它的邏輯,這多條的if語句就是衛語句.
有時候條件式可能出現在巢狀n次才能真正執行,其他分支只是簡單報錯返回的情況,對於這種情況,應該單獨檢查報錯返回的分支,當條件為真時立即返回,這樣的單獨檢查就是衛語句(guard clauses).衛語句可以把我們的視線從異常處理中解放出來,集中精力到正常處理的程式碼中.

例(阿里巴巴java開發手冊衛語句例子):

public void today() {
	if (isBusy()) {
		System.out.println( “change time. ” );
		return;
	}
	if (isFree()) {
		System.out.println( “go to travel. ” );
		return;
	}
	System.out.println( “stay at home to learn Alibaba Java Coding Guideline s . ” );
	return;
}