里氏替換原則
外觀
這是此頁批准,以及是最近的修訂。
佇咧物件導向的程式設計當中,里氏替換原則(Liskov Substitution principle)是對子類型的特別定義。伊由芭芭拉 ・ 利斯科夫(Barbara Liskov)佇一九八七年佇一改會議上名做「資料的抽象佮層次」的演說內面首先提出。
里氏替換原則的內容會當描述做: 「 衍生類別(子類)物件會當佇程式中代替其基礎類別(超類)東西。」 以上內容並非利斯科夫的原文,是翻譯對羅伯特 ・ 馬丁(Robert Martin)對原文的解讀。其原文是:
- _ Let $ q ( x ) $ be a property provable about objects $ x $ of type $ T $ . Then $ q ( y ) $ should be true for objects $ y $ of type $ S $ where $ S $ is a subtype of $ T $ . _
芭芭拉 ・ 利斯科夫和周以真(Jeannette Wing)佇一九九四年發表論文並提出以上的Liskov 代換原則。
參照
參考文獻
參與
- SOLID-「 SOLID」中的 L 指代矣里氏替換原則
- 類型簽名
- 來參考透明度 ( Referential transparency )
- 求精法 ( 編程計算 ) ( Refinement ( computing ) )
- 組合優於繼承 ( Composition over inheritance )
外部連結
- Norvell , T . S . The Liskov Substitution Principle ( PDF ) . 兩千空三 [二千空二十二孵一孵六] .(原始的內容 ( PDF ) 存檔佇二千空二十二孵一鼻三十).
- Liskov Substitution Principle Explained
- SOLID Class Design : The Liskov Substitution Principle
- LSP : Liskov Substitution Principle