플라이웨이트패턴

    플라이 웨이트 패턴

    플라이웨이트 패턴(flyweight pattern)이란? 정적인 저장소를 만들어 놓은 뒤에 여러 클래스에서 공용으로 사용할만한 것을 저장해놓고 갖다 쓰는 것을 플라이웨이트 패턴이라고 한다. 실생활에 비유하자면, 마트에서 여러가지 종류의 라면을 미리 사서 주방 찬장에 넣어놓으면 마트에 다녀올 필요가 없는 것과 비슷하다. 실제 사용 예로 자바의 스트링 풀이 있다. @Test public void flyWeightPattern() { String s = "hello"; String s1 = new String("hello"); String s2 = "hello"; System.out.println("s == s1 ? " + (s == s1)); // true System.out.println("s == s2 ..

    이펙티브 자바, 쉽게 정리하기 - item1. 생성자 대신 정적 팩터리 메서드를 고려하라

    생성자 대신 정적 팩토리 메서드를 고려하라 핵심 요약 객체 생성에는 보통 생성자만 있다고 생각하기 쉽다. 정적 팩토리 메서드를 객체 생성 용도로 쓰는 것도 경우에 따라 좋다. 생성자 대신 정적 팩터리 메서드를 만들면 가지는 장점들 장점1: 생성자가 이름을 가질 수 있다. public class Test { @org.junit.jupiter.api.Test public void bigInteger() { BigInteger bigInteger = new BigInteger(10, 100, new Random()); BigInteger probablePrime = BigInteger.probablePrime(10, new Random()); System.out.println("bigInteger = " + ..

반응형