본문 바로가기

자바18

디자인 패턴 2. 어댑터 패턴 (Adapter Pattern) 1. 개요 Adapter는 말 그대로 일본여행 갈 때 쓰는 돼지코 (110v를 220v로 변경) 같은 변환기 기능을 말한다. 어댑터 패턴은 호환성이 없는 기존 클래스의 인터페이스를 변환하여 재사용할 수 있도록 한다. SOLID의 개방폐쇄원칙(OCP)를 따른다. 2. 코드 package com.company.design.adapter; public interface Electronic110V { void powerOn(); } 우선 110v 클래스를 만든다. package com.company.design.adapter; public interface Electronic220V { void connect(); } 220v 클래스도 만든다. package com.company.design.adapter; p.. 2022. 3. 11.
디자인 패턴 1. 싱글톤 패턴 (Singleton Pattern) 1. 개요 Singleton Pattern은 어떠한 클래스(객체)가 유일하게 1개만 존재할 때 사용한다.이를 주로 사용하는 곳은 서로 자원을 공유할 때 사용하는데, 실물 세계에서는 프린터가 해당되며, 실제 프로그래밍에서는 TCP Socket 통신에서 서버와 연결된 connect 객체에 주로 사용한다. 소켓의 경우, 매번 연결하는 것이 아닌, 한번 연결해놓은 클라이언트에 계속 연결되는 형태다. 만약 소켓에서 생성자를 private가 아닌 public으로 하고, 사용하면서 다시 생성하게 하면 같은 client가 나오지 않는다. 즉 같은 client를 사용하려면 싱글톤의 방식을 사용해야 한다. 어떤 프로그램에서 단 하나의 객체만이 있어야 한다면 싱글톤 방식을 사용해야 한다. 2. 코드 package com.c.. 2022. 3. 10.
디자인 패턴 1. 개요 자주 사용하는 설계 패턴을 정형화 해서 이를 유형별로 가장 최적의 방법으로 개발을 할 수 있도록 정해둔 설계, 알고리즘과 유사하지만, 정확하게 정답이 있는 형태는 아니며, 프로젝트의 상황에 따라 맞추어 적용 가능 Gof 디자인 패턴소프트웨어를 설계할 때는 기존의 경험이 매우 중요하다. 그러나 모든 사람들이 다양한 경험을 가지고 있을 수는 없다. 이러한 지식을 공유하기 위해서 나온 것이 GOF (Gang of Four)의 디자인 패턴이다. 객체지향 개념에 따른 설계 중 재사용할 경우 유용한 설계를 디자인 패턴으로 정리해둔 것이다. Gof의 디자인 패턴은 총 23개이며, 이를 잘 이해하고 활용한다면, 경험이 부족하더라도 좋은 소프트웨어 설계가 가능하다. (스프링에서 자주 쓰는 것만 알아봄) 디자인.. 2022. 3. 10.
객체지향 4. POJO JAVA, 마무리하며 POJO (Plain Old Java Object) 순수한 자바 오브젝트를 뜻한다. 역사를 거슬러 올라가보면, 예전 EJB가 인기를 끌고, 많이 사용하던 시절에는 단순한 자바 오브젝트를 사용해서 개발하는 것이 아닌, EJB에 종속적인 부분으로 개발을 진행 그로 인하여, Module의 교체, 시스템 업그레이드시 종속성으로 인하여 불편함 발생 POJO의 특징 1. 특정 규약에 종속되지 않는다. 특정 Library, Module에서 정의된 클래스를 상속 받아서 구현하지 않아도 된다. POJO가 되기 위해서는 외부의 의존성을 두지 않고, 순수한 JAVA로 구성이 가능해야 한다. 2. 특정 환경에 종속되지 않는다. 만일 특정 비즈니스 로직을 처리하는 부분에 외부 종속적인 http request, session 등.. 2022. 3. 10.