[Laravel] 전략 패턴
·
백엔드/디자인 패턴
1. 개요1-1. Laravel에서 전략 패턴 적용 목적여러 알고리즘 및 동작 방식 중 변화 가능성이 높은 부분을 인터페이스로 추상화하여, 실행 시점에 적절한 전략을 선택할 수 있도록 합니다.이를 통해 코드의 유연성, 확장성 및 유지보수성을 크게 향상시킬 수 있습니다.1-2. 핵심 개념**전략 패턴(Strategy Pattern)**은 런타임 중에 알고리즘을 변경할 수 있도록 설계하는 행동 디자인 패턴입니다.전략은 여러 알고리즘 또는 기능을 추상화한 “행동 계획”으로, 필요에 따라 전략을 교체하여 동작을 전환할 수 있습니다.2. 전략 패턴 개념 정리2-1. 정의전략 패턴은 클라이언트에서 사용할 알고리즘 또는 기능을 전략(Strategy) 인터페이스로 정의하고, 구체적인 구현은 별도의 전략 객체로 작성하여..
[Laravel | PHP] 싱글톤 패턴
·
백엔드/디자인 패턴
1. 개요싱글톤 패턴은 디자인 패턴들 중에서 가장 개념적으로 단순한 패턴이다.하지만 그만큼 코드 예시만 빠르게 보고 넘어가는 경우가 많으며, 실제로 언제 사용해야 하는지, 어떤 문제를 해결할 수 있는지에 대한 이해 없이 활용되는 경우가 빈번하다.이번 문서에서는 기술 면접에서 자주 나오는 질문이기도 한 싱글톤 패턴에 대해 개념, 목적, 실사용 사례를 포함하여 정리한다.2. 정의 및 개념싱글톤(Singleton) 패턴이란, 단 하나의 유일한 객체만을 생성하도록 보장하는 설계 패턴이다.동일한 인스턴스를 계속 새로 생성하는 대신, 처음 한 번 생성된 인스턴스를 재사용함으로써 메모리를 절약하고 자원 낭비를 방지한다.이는 전역 변수의 사용 목적과 유사하다. 동일한 데이터를 여러 메서드에서 사용할 때 매번 지역 변수..