전체 글

개발 일지, 아이디어 등 Lede의 기록을 수집하고 기록하는 공간
튜토리얼/마인크래프트 플러그인

[Minecraft Plugin Tutorial] 1. 플러그인 개발환경 설정

시작하기에 앞서 - 플러그인 개발은 현 시점(2023-04-14) 기준 가장 최신버전인 마인크래프트 1.19.4 버전으로 진행합니다. - 코어 파일은 Spigot fork 인 Paper코어를 사용합니다. 1. JDK 다운로드 다운로드 페이지에 방문하여 자신의 환경에 맞는 파일을 다운로드하여 설치합니다. 필자는 JDK 17.0.6 Windows x64 Installer를 사용하였습니다. 2. IntelliJ 다운로드 다운로드 페이지에 방문하여 IntelliJ IDE를 다운로드하여 설치합니다. 라이선스를 보유하고 있지 않다면 Community Edition을 사용하여도 무방합니다. 3. IntelliJ Minecraft Plugin 설치 IntelliJ 설치가 모두 마무리 되었다면 다음 절차를 따라 Inte..

공부합시다/DesignPattern

[Design Pattern] 싱글톤(Singleton) 패턴

싱글톤(Singleton) 패턴이란? 시스템에 단 하나의 클래스 인스턴스만 존재하도록 하여 인스턴스에 대한 단일 액세스 지점을 제공하고 이에 따라 충돌 및 불일치를 방지한다. 싱글톤 패턴의 장점 글로벌 액세스 클래스에 하나의 인스턴스만 존재하고 시스템의 모든 객체가 싱글톤 클래스의 동일한 인스턴스에 액세스 할 수 있기 때문에, 일관된 동작 및 데이터 공유가 가능하다. 리소스 소비 감소 시스템 전체에서 싱글톤 클래스의 인스턴스가 하나만 생성되기 때문에 사용하는 리소스의 양이 줄어든다. 싱글톤 패턴의 단점 전역 상태 (Global State) 싱글톤 클래스의 인스턴스는 시스템의 모든 개체에서 액세스 및 수정이 가능하기 때문에 잠재적으로 의도하지 않은 동작과 버그가 발생할 수 있다. 긴밀한 결합 싱글톤 패턴은..

공부합시다/DesignPattern

[Design Pattern] 데코레이터(Decorator) 패턴

데코레이터(Decorator) 패턴이란? 전체 클래스나 하위 클래스를 수정하지 않고도 개별 개체에 동작이나 기능을 추가할 수 있도록 한다. 런타임에 개체의 기능을 동적으로 확장하는데 사용한다. 데코레이터 패턴의 장점 확장을 위한 개방 기존 코드를 수정하지 않고 객체의 동작을 동적으로 수정하고 확장할 수 있다. 단일 책임 원칙 객체의 책임을 각각 다른 데코레이터 객체로 분리하여 개체의 동작을 유연하게 관리할 수 있다. 상속보다 구성 부모 클래스에서 동작을 상속하는 대신 새로운 개체에 동작을 추가하기 때문에 유지보수 및 수정에 유연성이 생기고 확장하기 좋다. 간소화된 유지보수 기존의 개체를 수정하지 않고 데코레이터 개체를 사용하여 새로운 동작을 추가할 수 있기 때문에 기존 코드에 영향을 주지 않고 개체의 동..

공부합시다/DesignPattern

[Design Pattern] 옵저버(Observer) 패턴

옵저버(Observer) 패턴이란? 옵저버 패턴은 주제(Subject)와 관찰자(Observer)가 공통 인터페이스를 통해 서로 통신할 수 있도록 함으로써 작동한다. 주제는 관찰자 목록을 유지하고 관심 있는 이벤트나 데이터가 발생하면 인터페이스에서 메소드를 호출하여 각 관찰자에게 알린다. 옵저버 패턴의 장점 유연성 옵저버의 주제(Subject)에 영향을 주지 않고 옵저버를 쉽게 추가하고 제거할 수 있도록 함으로써 시스템 설계에 유연성을 제공한다. 느슨한 결합 옵저버 패턴의 주제(Subject)와 관찰자(Observer)가 서로의 구현 세부 사항을 알 필요없이 공통 인터페이스를 통해 통신하여 개체간의 느슨한 결합을 촉진한다. 따라서, 코드의 다른 부분에 영향을 주지 않고 시스템을 수정하거나 확장하는데 용이..

Lede_
Lede's Archive