본문 바로가기
우테코 자유테크 스터디/자유주제

[스터디] SOLID 원칙 발표 자료

by ♡˖GYURI˖♡ 2023. 11. 2.

SOLID 원칙.pdf
0.95MB

 

 

 

 


 

SOLID 관련 자료

https://www.nextree.co.kr/p6960/

 

객체지향 개발 5대 원리: SOLID

현재를 살아가는 우리들은 모두 일정한 원리/원칙 아래에서 생활하고 있습니다. 여기서의 원칙 이라 함은 좁은 의미로는 개개인의 사고방식이나 신념, 가치관 정도가 될 수가 있겠고, 넓게는 한

www.nextree.co.kr

https://mangkyu.tistory.com/194

 

[OOP] 객체지향 프로그래밍의 5가지 설계 원칙, 실무 코드로 살펴보는 SOLID

이번에는 객체 지향 프로그래밍의 5가지 핵심 원칙인 SOLID에 대해 알아보고자 합니다. 실제로 애플리케이션을 개발할 때 어떻게 적용할 수 있을지 구체적인 예시를 들어 살펴보고자 합니다. 아

mangkyu.tistory.com

https://inpa.tistory.com/entry/OOP-%F0%9F%92%A0-%EA%B0%9D%EC%B2%B4-%EC%A7%80%ED%96%A5-%EC%84%A4%EA%B3%84%EC%9D%98-5%EA%B0%80%EC%A7%80-%EC%9B%90%EC%B9%99-SOLID#%EC%9D%98%EC%A1%B4_%EC%97%AD%EC%A0%84_%EC%9B%90%EC%B9%99_-_dip_dependency_inversion_principle

 

💠 객체 지향 설계의 5가지 원칙 - S.O.L.I.D

객체 지향 설계의 5원칙 S.O.L.I.D 모든 코드에서 LSP를 지키기에는 어려움. 리스코프 치환 원칙에 따르면 자식 클래스의 인스턴스가 부모 클래스의 인스턴스를 대신하더라도 의도에 맞게 작동되어

inpa.tistory.com

https://velog.io/@haero_kim/SOLID-%EC%9B%90%EC%B9%99-%EC%96%B4%EB%A0%B5%EC%A7%80-%EC%95%8A%EB%8B%A4

 

SOLID 원칙, 어렵지 않다!

객체지향 프로그래밍 설계 원칙에 대해 알아보기

velog.io

https://yoongrammer.tistory.com/100

 

의존성 역전 원칙 (DIP: Dependency Inversion Principle)

목차 의존성 역전 원칙 (DIP: Dependency Inversion Principle) 1. 상위 모듈은 하위 모듈에 의존해서는 안 되고 둘 다 추상화에 의존해야 한다. 2. 추상화는 세부 사항에 의존해서는 안 되고 세부사항(구체

yoongrammer.tistory.com

 

 

응집도 & 결합도

https://medium.com/@jang.wangsu/%EC%84%A4%EA%B3%84-%EC%9A%A9%EC%96%B4-%EC%9D%91%EC%A7%91%EB%8F%84%EC%99%80-%EA%B2%B0%ED%95%A9%EB%8F%84-b5e2b7b210ff

 

[설계 용어] 응집도와 결합도

High Cohesion, Low Coupling, 응집도와 결합도 라는 설계관련 용어는 프로그래밍에 익숙하지 않은 사람들에게는 쉽게 익숙해지기가 처음에는 어려울 것 같아요.

medium.com

 

 

구현 상속

https://fistki.tistory.com/44

 

항목 34: 인터페이스 상속과 구현 상속의 차이를 제대로 파악하고 구별하자

(public)상속 이라는 개념은 사실 2가지로 나뉜다. 인터페이스 상속 vs (함수)구현 상속 이 둘의 차이는 함수 선언과 함수 정의의 차이와 맥을 같이한다고 보면 된다. 클래스 설계자의 입장에서 맴

fistki.tistory.com

 

 

상속 & 위임

https://developer0513.tistory.com/185

 

상속을 위임으로 치환 리팩토링 ( Replace Inheritance With Delegation )

* 상속을 위임으로 치환 리팩토링 ( Replace Inheritance With Delegation ) * 상속 - 상위 클래스에서 선언한 필드와 메서드를 하위 클래스에서 이용할 수 있음. 이를 부모가 자식에게 물려주는(inherit)것에

developer0513.tistory.com

https://sorjfkrh5078.tistory.com/282

 

[Java] 상속(Inheritance) vs 위임(Delegation)

객체지향 프로그래밍에서 서로 연관된 객체들의 관계를 표현할 때 상속(Inheritance)과 위임(Delegation) 관계로 많이 표현한다. 디자인 패턴을 공부해보면 이들을 활용함으로써 보다 객체지향적인 설

sorjfkrh5078.tistory.com

 

 

리팩토링

https://arisu1000.tistory.com/27599

 

리팩토링 : Extract Subclass

조건클래스가 특정 인스턴스에서만 사용되는 기능들을 가지고 있다면적용해당 기능들로 이루어진 서브클래스를 만들어라. 참조http://www.refactoring.com/catalog/extractSubclass.html

arisu1000.tistory.com

https://arisu1000.tistory.com/27628

 

리팩토링 : Push Down Field

조건어떤 필드가 특정 서브클래스에서만 쓰인다면적용그 서브클래스로 필드를 옮기시오. 참조http://www.refactoring.com/catalog/pushDownField.html

arisu1000.tistory.com

https://arisu1000.tistory.com/27629

 

리팩토링 : Push Down Method

조건슈퍼클래스의 행위가 특정 서브클래스하고만 관련있다면적용해당 메소드를 그 서브클래스로 옮기시오. 참조http://www.refactoring.com/catalog/pushDownMethod.html

arisu1000.tistory.com

 

 

IS-A 관계

https://velog.io/@tsi0521/%EC%83%81%EC%86%8D%EC%9D%80-IS-A-%EA%B4%80%EA%B3%84%EC%97%90%EC%84%9C%EB%A7%8C

 

상속은 IS-A 관계에서만!

이번 글에서는 상속이 어떨 때 사용되어져야 하는 가에 대해 이야기해 보는 시간을 가질 것이다!! 그렇다면 상속이라는 개념을 먼저 알고 가야한다. 보다 먼저, 상속을 사용하는 이유는 결국 더

velog.io

 

 

 

Design by contract

https://en.wikipedia.org/wiki/Design_by_contract

 

Design by contract - Wikipedia

From Wikipedia, the free encyclopedia Approach for designing software A design by contract scheme Design by contract (DbC), also known as contract programming, programming by contract and design-by-contract programming, is an approach for designing softwar

en.wikipedia.org

 

 

IoC

https://choicode.tistory.com/31

 

[Spring] IoC(Inversion of Control : 제어의 역전)컨테이너란?

들어가면서.. Spring 하면 떠오르는 3 대장 IoC, DI, POJO가 있다. 이 중에서도 핵심 of 핵심 IoC 컨테이너가 무엇인지 오늘 알아보려고 한다. 우선 IoC 컨테이너가 무엇인지 알아보기에 앞서 컨테이너가

choicode.tistory.com

 

 

훅 메소드

https://mrtint.tistory.com/358

 

후크 메소드 (Hook Method)

디자인 패턴 공부하는데.. 하나 빼먹은게 있었다. 템플릿 메소드 패턴을 배울때 나온 내용이었는데 제대로 안 짚고 넘어가서 과제할때 많은 애로사항을 주는 넘이 되었다... 그래서 -_- 공부도 잘

mrtint.tistory.com

 

 

객체지향 생활체조

https://koomchang.tistory.com/3

 

객체지향 생활체조

SOLID 원칙을 적용하기 위한 객체지향 생활 체조 9 원칙은 코드를 readable(읽기 좋은), maintainable(유지 관리), reuseable(재사용 가능), scalable(확장 가능) 하게 디자인 할 수 있다. 더보기 객체지향 생활

koomchang.tistory.com