본문 바로가기
반응형

Software Engineering3

[Software Engineering] IoC, DIP, DI IoC, DIP, DI에 대해 알아봅니다. 본문을 요약하자면 다음과 같습니다. 객체를 사용할 때 IoC 달성을 위해 외부에서 생성자를 통해 객체를 DI한다. 이때 DIP 달성을 위해 주입받을 객체의 타입은 추상화된 타입이어야 한다. IoC, Inversion of Control 제어의 역전을 뜻하는 IoC는 말 그대로 제어가 역전되는 것을 의미합니다. 여기서 제어란 코드가 실행되는 과정에서 사용되는 객체를 생성하는 것을 말합니다. 역전이란 객체 생성을 직접하는 것이 아닌 외부로부터 전달받는 것을 말합니다. IoC 위반 예시 public class JpaMemberRepository implements MemberRepository { // ... } public class MemberService { p.. 2022. 8. 26.
[Software Engineering] SOLID 원칙 SOLID 원칙은 객체지향 설계 원칙으로 다섯 가지의 원칙을 가집니다. 아래의 다섯 가지 원칙을 준수함으로써 소프트웨어를 객체지향적으로 설계하고 구현할 수 있습니다. 단일 책임 원칙 (Single Responsibility Principle) 개방 폐쇄 원칙 (Open Closed Principle) 리스코프 치환 원칙 (Liskov Substitution Principle) 인터페이스 분리 원칙 (Interface Segregation Principle) 의존 역전 원칙 (Dependency Inversion Principle) SRP, 단일 책임 원칙 SRP 원칙은 클래스는 단 하나의 책임을 가져야 한다는 규칙을 제시합니다. 여기서 책임이란 클래스가 변경되는 이유를 말하며, 클래스가 변경되는 이유가 .. 2022. 8. 25.
[Software Engineering] UML UML(Unified Modeling Language)은 소프트웨어 개념을 다이어그램으로 그리기 위해 사용하는 시각적인 표기법입니다. 문제 도메인(problem domain), 소프트웨어 설계 제안 등에서 UML을 사용할 수 있습니다. UML의 주요 다이어그램은 세 종류로 나뉩니다. 구분 설명 정적 다이어 그램 클래스, 객체, 데이터 구조의 관계를 UML로 표현해서 변하지 않는 논리적 구조를 보여줍니다. 동적 다이어그램 실행 흐름을 그림으로 그리거나 상태가 어떻게 바뀌는지 UML로 표현해서 소프트웨어 안의 실체가 실행 도중 어떻게 변하는지 보여줍니다. 물리적 다이어그램 소스 파일, 바이너리 파일, 데이터 파일 등 물리적 실체의 관계를 UML로 표현해서 소프트웨어 실체의 변하지 않는 물리적 구조를 보여줍니.. 2022. 7. 13.
반응형