嗚嗚喔學習筆記: 8月 2016

搜尋此網誌

2016年8月28日 星期日

C# Coding Standards ( Coding 標準 )

參考 MSDN 的coding style 以下是整理最 基礎 , 常使用 的部分

基礎規則:
  • 使用大駱駝 Pascal( 如 : "VirtualDesign" )小駱駝Camel( 如 : "virtualDesign" )
    • 不要使用分隔符號( 例如底線 "_" 或連字號 "-" )來做命名 ( EX: (X) User_Name_Api_Path )
  • 可讀性優先於簡潔性( CanScrollHorizontally 優於 ScrollableX ),並參考常用的命名( HorizontalAlignment 優於 AlignmentHorizontal )。
  • 避免使用匈牙利命名法( 如 : "strName", )
    • 不要使用型態前致詞( ex: (x)strName ,)
    • Bool 例外 "Can" , Is 或 "Has"( EX: (O)bool isPlay )
    • 使用後致詞
      • System.EventArgs :  AppleEventArgs    
      • System.Exception :  WtfException
      • System.Attribute : LoginAttribute
      • Instance (Field): CubeInstance
  • 正確的使用縮寫 (沒事不要用縮寫)
    • 兩字皆為大寫( 如 : "IO" , "DB" , system.IO  )
    • 三個字以上 ( 如 : "Xml" )
物件命名規則:
  • Interface : 前面+I ( EX: Car : ICar )
  • Generic (泛型) : 前面+T , K ( EX:  class List <TKey , TValue > )
  • Field :
    • public : 大寫開頭 ( EX : public string UserName )大駱駝
    • private :  ( EX: private string _userName )_小駱駝
    • private Const -> WTFUSER ;
  • Local Variable : 小寫開頭 ( EX: string userName )小駱駝
  • Const (static readonly) Variable 全大寫_ (EX: WTF_PATH = “@C:\” )
  • Parameter : 小寫開頭 ( EX: userName )
  • var 不可以寫在成員 public private

2016年8月26日 星期五

工廠模式&策略模式 差別

工廠模式-> 創建物件 ->
車工廠 -> 跑車 , 國產車
通過車工廠可以直接拿取跑車
呼叫者不需研究跑車如何組裝 , 國產車如何組裝
優點: 新增老爺車時 實例化只需關注介面( 剎車 起跑 換檔 ..)
調用車子 ->不須關心車子如何組裝 如何實體化
缺點: 更改介面時 所有車子都要改


策略模式-> 封裝方法 ->
皮卡丘.上() 皮卡丘.下() 皮卡丘.左() 皮卡丘.右()
小火龍.上() 小火龍.下() 小火龍.左() 小火龍.右()


到真心鎮的策略->可能是 上右右上右下 -> 也可能是 上下下右右右上

優點:抽換策略 , 只關心策略演算