# 第五章_編排_學習筆記 ###### tags: `讀書會` ## 垂直編排 * 以空行分隔不同概念 * 概念相似的程式碼要盡可能靠近 * 即便是簡短的if、while、函式敘述,也要遵照縮排規則 ```csharp public CommentWidget(ParentWidget patent, string text){super(parent, text);} //應該將上方程式碼展開縮排 public CommentWidget(ParentWidget patent, string text){ super(parent, text); } ``` * 若某個函式呼叫另一個函式,那呼叫敘述應該在被呼叫函式的上方 ### 變數宣告 * 全域變數: 放在類別最上方 ; 區域變數: 放在靠近變數被使用的地方 * 迴圈的控制變數應該在迴圈敘述裡宣告 * 實體變數應該被宣告在類別的上方 ```csharp public class TestSuite implements Test{ ProductService _productService = new ProductService(); MemberService _memberService = new MemberService(); //以下寫方法... } ``` ## 水平編排 * 不需用到左右捲軸才是適合的寬度 * 作者的寬度上限是120個字元 ### 空白間隔的作用 1. 設定運算子兩邊的空白,突顯兩邊的元素 ```csharp int lineSize = line.Length(); ``` 2. 強調運算子的優先權 ```csharp (-b + Math.sqrt(determinant)) / (2*a) ```