Skip to content

Sang-Hyuk/go_design_pattern

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go_design_pattern

  • 객체지향의 디자인 원칙

    • is...a... 관계 보단 has...a... 관계를 활용 한다. ( 상속보다는 구성을 활용한다. )
    • 특정 구현이 아닌, 인터페이스 맞춰서 프로그래밍 한다.
    • 구현이 아닌 인터페이스에 맞춰서 프로그래밍 한다.
    • 애플리케이션에서 변경이 일어나는 부분을 찾아내서 바뀌지 않는 부분으로부터 분리시킨다. ( 캡슐화 한다 )
    • 서로 상호작용을 하는 객체 사이에서는 가능하면 느슨하게 결합하는 디자인을 사용해야 한다.
    • 클래스는 확장에 대해서는 열려 있지만 변경에 대해서는 닫혀 있어야 한다.
    • 추상화 된 것에 의존하고 구현 된 것에 의존하지 않도록 한다.
  • 의존성 뒤집기 원칙 ( Dependency Inversion Principle )

    • 추상화된 것에 의존하도록 만들어야 한다.
    • 구현에 의존하도록 만들지 않아야 한다.
    • 어떤 변수에도 구현된 클래스에 대한 레퍼런스를 저장하지 않는다.
    • 구상 클래스에서 유도된 클래스를 만들지 말아야 한다.
    • 베이스 클래스에서 이미 구현이 되어있는 메서드를 오버라이드 하지 않는다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages