六大設計原則(一)

六大原則

 1. 單一職責原則(Single Responsibility Principle)

 2. 里氏替換原則(Liskov Substitution Principle)

 3. 迪米特法則 (Law Of Demeter) 

 4. 依賴倒置原則(Dependence Inversion Principle)

 5. 接口隔離原則(Interface Segregation Principle)

 6. 開閉原則 (Open Closed Principle) 

這六大原則只是面向對象開發中推薦的一些指導建議,沒有明確的套路,在有些場景下可能忽略甚至違背這些原則,這些建議其實是開發前輩們總結下來的,我們也算是站在前輩的肩膀上學習

單一職責原則(Single Responsibility Principle)

  類T負責兩個不同的職責:職責P1,職責P2。當由於職責P1需求發生改變而需要修改類T時, 有可能會導致原本運行正常的職責P2功能發生故障。 這就違背了單一職責。

  一個類只負責一件事兒
  一個方法只負責一件事兒

 比如下面代碼:
封裝的動物類:

/// <summary>
    /// 封裝
    /// 動物類
    /// 簡單意味着穩定
    /// </summary>
    public class Animal
    {
        private string _Name = null;
        public Animal(string name)
        {
            this._Name = name;
        }
        /// <summary>
        ///  
        /// </summary>
        public void Breath()
        {
            if (this._Name.Equals(""))
            {
                Console.WriteLine($"{this._Name}:呼吸空氣!");
            }
            else if (this._Name.Equals(""))
            {
                Console.WriteLine($"{this._Name}:呼吸水!");
            } 
        }
         
        /// <summary>
        /// 在這個時候,我們就應該要考慮 拆分
        /// </summary>
        public void Action()
        {
            if (this._Name.Equals(""))
            {
                Console.WriteLine($"{this._Name}:Flying!");
            }
            else if (this._Name.Equals(""))
            {
                Console.WriteLine($"{this._Name}:Swimming!");
            }

            
        }
    }

 

後續看老大的:

https://www.cnblogs.com/anjingdian/p/15330795.html

 

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