분류 전체보기 135

팩토리 메서드 패턴(Factory method pattern)

정의[위키피디아] 팩토리 메서드 패턴(Factory method pattern)은 객체지향 디자인 패턴이다. Factory method는 부모(상위) 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며. 자식(하위) 클래스가 어떤 객체를 생성할지를 결정하도록 하는 패턴이기도 하다. 부모(상위) 클래스 코드에 구체 클래스 이름을 감추기 위한 방법으로도 사용한다. 예제를 보며 이해하기 1. 객체를 반환하는 추상 클래스 Animal.java public abstract class Animal { // 추상 팩터리 메서드 abstract AnimalToy getToy(); } 2. Animal 클래스의 return 객체 AnimalToy.java // 팩터리 메서드가 생성할 객체의 상위 클래스 public ..

템플릿 메소드 패턴(template method pattern)

정의[위키피디아] 템플릿 메소드 패턴(template method pattern)은 소프트웨어 공학에서 동작 상의 알고리즘의 프로그램 뼈대를 정의하는 행위 디자인 패턴이다.[1] 알고리즘의 구조를 변경하지 않고 알고리즘의 특정 단계들을 다시 정의할 수 있게 해준다 템플릿 메소드 패턴 - 위키백과, 우리 모두의 백과사전 템플릿 메소드 패턴(template method pattern)은 소프트웨어 공학에서 동작 상의 알고리즘의 프로그램 뼈대를 정의하는 행위 디자인 패턴이다.[1] 알고리즘의 구조를 변경하지 않고 알고리즘의 특정 단 ko.wikipedia.org 예제를 보며 이해하기 1. Dog 와 Cat 클래스가 아래와 같이 존재한다. - 아래 2개의 클래스는 우는 소리 (멍멍 , 야옹 야옹)를 제외하고는 ..

싱글톤 패턴(Singleton Pattern)

전에 올린 포스팅 참고 : https://old-developer.tistory.com/49?category=931274 Java Application - 싱글톤 패턴(Singleton pattern) 학습목표 - 1. OOP 에서 싱글톤의 개념을 정의하고 이해한다. - 2. 이해한 개념을 Java 코드로 구현할 수 있다. * 참고 - 구글 검색, 구글 이미지, 유투브 : www.youtube.com/watch?v=5jgpu9-ywtY youngji.. old-developer.tistory.com 이전에 심도있게 스터디한 내용이라 , 이번에는 책 내용만 정리해봄. 싱글톤 패턴 [위키피디아] 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 ..

데코레이터 패턴 (Decorator Pattern)

정의[위키피디아] 데코레이터 패턴(Decorator pattern)이란 주어진 상황 및 용도에 따라 어떤 객체에 책임을 덧붙이는 패턴으로, 기능 확장이 필요할 때 서브클래싱 대신 쓸 수 있는 유연한 대안이 될 수 있다. 정의[쉬운버전] 데코레이터는 원본에 장식을 더하는 패턴이다. 프록시 패턴 구현 방법이 같지만 다음과 같은 차이점이 있다. 프록시 패턴 vs 데코레이터 패턴 프록시 패턴 - 클라이언트에 최종적으로 리턴되는 반환값을 그대로 전달한다. 데코레이터 패턴 - 클라이언트가 받는 반환값에 장식을 덧입힌다. 프록시 패턴과 동일하게 OCP, DIP 원칙을 구현한다. 소스코드로 이해하기 public interface IService { public String runSomething(); } -------..

String 에 대한 고찰

String 객체 타입은 Java 언어에서 특혜를 심하게 받고 있는 객체이다. 그만큼 사용 빈도가 많다는 말씀.. ■ Java 문서에서의 정의 The String class represents character strings. All string literals in Java programs, such as "abc", are implemented as instances of this class. Strings are constant; their values cannot be changed after they are created. String buffers support mutable strings. Because String objects are immutable they can be shared. ..

== equals 무엇이 다른 것인가 ??

이것만 기억하자. == : 7가지 Primitive type (byte, short, int, long, float, double, boolean, char) 에만 사용한다고 기억하자. equals : 모든 객체의 비교에는 equals 만 사용한다고 기억하자. == ( 동일성 identity - 오브젝트를 참조하는 위치(주소)가 같을 경우 ) equals ( 동등성 equality - 해당 인스턴스가 가지고 있는 값이 같을 경우 ) 뭔가 더 심오한 뭔가를 적어서 유레카를 외치고 싶은데.. 더 할말이 없네... 원시타입 7종은 은 == 객체는 equals 끝... 완전 좋은 참고 영상 : https://www.youtube.com/watch?v=6X1jsQQtwmo

Primitive Data Types (원시적인 데이타 타입)

들어가기에 앞서 자바 언어 타입의 정의 - Java documentation 에서의 정의 https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html Primitive Data Types (The Java™ Tutorials > Learning the Java Language > Language Basics) The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology ..

Java 2021.06.24

java.lang.Object 의 위치(Position)

Object 클래스는 모든 클래스의 최 상위에 위치하며, 모든 클래스에서 상속받는 클래스이다. 따라서, Object 클래스의 주요 method 를 익히는것은 중요한 포인트가 된다. (equals, hashCode, toString) The Java Platform Class Hierarchy The Object class, defined in the java.lang package, defines and implements behavior common to all classes—including the ones that you write. In the Java platform, many classes derive directly from Object, other classes derive from som..

프록시 패턴(proxy pattern)

정의[위키피디아] 프록시 패턴(proxy pattern)은 컴퓨터 프로그래밍에서 소프트웨어 디자인 패턴의 하나이다. 일반적으로 프록시는 다른 무언가와 이어지는 인터페이스의 역할을 하는 클래스이다. 프록시는 어떠한 것(이를테면 네트워크 연결, 메모리 안의 커다란 객체, 파일, 또 복제할 수 없거나 수요가 많은 리소스)과도 인터페이스의 역할을 수행할 수 있다. 정의[쉽게] 단어적의미 Proxy 1.대리[위임](권) 2.대리인 3.명사 격식 또는 전문 용어 (측정·계산하려는 다른 것을 대표하도록 이용하는) 대용물 프록시 패턴은 프로그램에서 대리로 사용할 객체를 만들어서 사용한다. 프록시 패턴은 OCP, DIP 원칙을 구현한다. 우리가 스프링에서 쉽게 볼 수 있는 인터페이스 - 구현체의 관계로 이해된다. 소스코..