본문 바로가기
728x90

백엔드5

디자인 패턴 Chapter 02. 디자인 패턴 디자인 패턴 디자인 패턴이란? 디자인 패턴 자주 사용하는 설계 패턴을 정형화 해서 이를 유형별로 가장 최적의 방버븡로 개발을 할 수 있도록 정해둔 설계 알고리즘과 유사 하지만, 명확하게 정답이 있는 형태는 아니며, 프로젝트의 상황에 맞추어 적용 가능하다. Gof 디자인 패턴 소프트웨어를 설계 할 때는 기존의 경험이 매우 중요하다. 그러나 모든 사람들이 다양한 경험을 가지고 있을 수는 없다. 이러한 지식을 공유하기 위해서 나온 것이 GOF (Gang of Four) 의 디자인 패턴이다. 객체지향 개념에 따른 설계 중 재사용할 경우 유용한 설계를 디자인 패턴으로 정리 해둔 것이다. Gof의 디자인 패턴은 총 23개 이며, 이를 잘 이해하고 활용한다면, 경험이 부족하더라도 좋.. 2021. 8. 19.
POJO JAVA Chapter 01. 객체지향 POJO JAVA POJO (Plain Old Java Object) 순수한자바 오브젝트를 뜻한다. 역사를 거슬러 올라가보면, 예전 EJB가 인기를 끌고, 많이 사용하던 시절에는 단순한 자바 오브젝트를 사용해서 개발하는 것이 아닌, EJB에 종속적인 부분으로 개발을 진행. 그로 인하여, Module의 교체, 시스템 업그레이드시 종속성으로 인하여 불편함 발생. POJO 특징 특정 규약에 종속 되지 않는다. 특정 Library, Module 에서 정의된 클래스를 상속 받아서 구현하지 않아도 된다. POJO가 되기 위해서는 외부의 의존성을 두지 않고, 순수한 JAVA로 구성이 가능해야 한다. 특정 환경에 종속되지 않는다. 만일 특정 비지니스 로직을 처리 하는 부분에 외부 종속적인.. 2021. 8. 19.
객체지향 설계 5원칙 SOLID Chapter 01. 객체지향 객체지향 설계 5원칙 SOLID 응집도와 결합도 좋은 소프트웨어 설계를 위해서는 결합도(coupling)는 낮추고 응집도(cohesion)는 높여야 한다. 결합도 모듈(클래스)간의 상호 의존 정도를 나타내는 지표로써 결합도가 낮으면 모듈 간의 상호 의존성이 줄어들어서 객체의 재사용 및 유지보수가 유리하다. 응집도 하나의 모듈 내부에 존재하는 구성 요소들의 기능적 관련성으로 응집도가 높은 모듈은 하나의 책임에 집중하고 독립성이 높아져, 재사용 및 유지보수가 용이하다. 1. SRP (Single Responsibility Principle) 단일 책임 원칙 어떠한 클래스를 변경해야 하는 이유는 한 가지뿐 이어야 한다. 2. OCP ( Open Closed Principle) 개.. 2021. 8. 19.
객체지향의 4대 특성 Chapter 01. 객체지향 객체지향의 4대 특성 1. 캡슐화 캡슐화는 개체의 속성(Variable)을 보호하기 위해서 사용합니다. 객체의 캡슐화는 현실 세계에서도 볼 수 있습니다. 컴퓨터 본체 안에 수많은 부품이 있지만, 전원을 켜기 위해서는 메인보드에 전기 신호를 직접 주는 것이 아닌, 외부 케이스에 있는 전원 버튼을 통해서 상태 속성은 On/Off 하도록 변경합니다. Method 설계 - 속성이 선언되었으나, 이의 상태를 변경하는 method가 없다면, 잘못 선언된 속성이다. 즉, 자신이 가지고 있는 속성에 대해서는 해당 상태를 변경하는 기능을 제공해야 한다. - 실물 객체가 가진 기능을 모두 제공해야 한다. 예를 들면, 자동차의 렌탈, 반납, 주행거리 계산 등등 - 각각의 Method는 서로 관.. 2021. 8. 19.
728x90