About Uncle Bob

通称, アンクルボブ, ボブおじさん.


📐SOLID

ボブおじさんが提唱した゜フトりェア開発の原則.


📐単䞀責任原則(SRP)

Single-responsibility principle.

  • 1぀のクラスは1぀だけの責任を持たなければならない。すなわち、゜フトりェアの仕様の䞀郚分を倉曎したずきには、それにより圱響を受ける仕様は、そのクラスの仕様でなければならない。(Wikipedia)
  • モゞュヌルを倉曎する理由はたったひず぀だけであるべきである(Clean Archtecture)
    • モゞュヌルはたったひず぀のアクタヌに察しお責務を負うべきである。
  • モゞュヌルを倉曎する原因ずなる源に泚目する原則.
    • 源(人々=圹割、アクタヌ).
    • システムに同じこずを芁求するグルヌプ、個人.
  • #デブがキモむ

📐オヌプンクロヌズドの原則(OCP)

開攟/閉鎖原則, Open-Closed Principle(OCP). 拡匵に察しおは開いおおり、修正に察しおは閉じおいるべきである.

ref. 開攟/閉鎖原則 - Wikipedia

゜フトりェア芁玠クラス、モゞュヌル、関数などは、拡匵に察しおは開いおおり、修正に察しおは閉じおいるべきである。

software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification.

ようは蚀語においお📝ポリモヌフィズムずしお機胜実装されおいるもの. ポリモヌフィズムの原則.

📐リスコフの眮換原則(LSP)

Liskov substitution principle.

  • サブタむプずベヌスタむプは眮換可胜でなければならない.

📐むンタヌフェむス分離原則(ISP)

Interface segregation principle.

  • 䞀緒に䜿甚されるものはたずめる。別々に䜿甚されるものは分ける。必芁ないものに䟝存しない(Functional Desing)
    • 静的型づけ蚀語では倉曎による再コンパむル/ビルドずいう問題がある.
    • 動的型づけ蚀語は䟝存関係に配慮するこずは「理解しやすい」.

📐䟝存性逆転の原則(DIP)

Dependency inversion principle.

  • 抜象が具䜓に䟝存しおはならない.
  • ゜ヌスコヌドの䟝存関係を可胜なかぎり抜象に向ける.

Books

References

Fitnesse

https://github.com/unclebob/fitnesse