«design-patterns» 태그된 질문

디자인 패턴은 소프트웨어 디자인에서 일반적으로 발생하는 문제에 대한 일반적인 재사용 가능한 솔루션입니다. 디자인 패턴 구현에 문제가있는 경우 질문에이 태그를 사용하십시오. 텍스트 패턴 일치에 대한 질문에는이 태그를 사용하지 마십시오. 구현시 많은 질문에이 태그를 사용하는 경우 구현이 작성된 코드 언어에 태그를 지정하십시오.

12
개념적으로 게임에서 재생은 어떻게 작동합니까?
게임에서 재생이 어떻게 구현되는지 궁금합니다. 처음에는 게임에서 수행 된 모든 플레이어 / ai 액션의 명령 목록 만있을 것이라고 생각했고, 게임을 '재생'하고 엔진이 평소대로 렌더링되도록했습니다. 그러나, 나는 FPS / RTS 게임에서의 리플레이를 살펴 보았으며,주의 깊게 검사했을 때 파티클과 그래픽 / 가청 글리치와 같은 것들도 일관됩니다 (그 글리치들은 일반적 으로 일관됩니다). 어떻게 …

8
Java로 플러그인 시스템을 구축하는 가장 좋은 방법
Java 애플리케이션을위한 플러그인 시스템을 어떻게 구현 하시겠습니까? 다음을 달성하기 쉬운 (개발자 용) 시스템을 사용할 수 있습니까? 사용자는 플러그인을 앱의 하위 디렉토리에 넣습니다. 플러그인은 구성 화면을 제공 할 수 있습니다 프레임 워크를 사용하는 경우 라이센스가 상용 개발과 호환됩니까?

13
Kotlin에서 빌더 패턴을 구현하는 방법은 무엇입니까?
안녕하세요 저는 Kotlin 세계의 초보자입니다. 나는 지금까지 본 것을 좋아하고 응용 프로그램에서 사용하는 일부 라이브러리를 Java에서 Kotlin으로 변환하려고 생각하기 시작했습니다. 이 라이브러리는 setter, getter 및 Builder 클래스가있는 Pojo로 가득합니다. 이제 Kotlin에서 빌더를 구현하는 가장 좋은 방법은 무엇인지 알아 보았지만 성공하지 못했습니다. 두 번째 업데이트 : 문제는 Kotlin에서 일부 매개 변수를 …


14
클래스의 모든 메소드를 특정 코드 블록으로 시작하는 우아한 방법이 있습니까?
모든 방법이 동일한 방식으로 시작되는 클래스가 있습니다. class Foo { public void bar() { if (!fooIsEnabled) return; //... } public void baz() { if (!fooIsEnabled) return; //... } public void bat() { if (!fooIsEnabled) return; //... } } fooIsEnabled수업의 모든 공개 방법에 대한 부분 을 요구하고 (매번 작성하지 않기를 바랍니다) …

10
디자인 패턴 : 추상 팩토리 vs 팩토리 메소드
참고 : 질문은 게시물 끝에 있습니다. Abstract Factory vs Factory Method 에 관한 다른 stackoverflow 스레드를 읽었습니다 . 각 패턴의 의도를 이해합니다. 그러나 나는 그 정의에 대해 명확하지 않다. 팩토리 메소드는 객체를 만들기위한 인터페이스를 정의하지만 서브 클래스에서 인스턴스화 할 인터페이스를 결정할 수 있습니다. 팩토리 메소드는 클래스가 인스턴스화를 서브 클래스로 연기하도록합니다. …

6
소셜 네트워크에서 활동 스트림을 구현하는 방법
저는 자체 소셜 네트워크를 개발하고 있으며 웹 구현 예제에서 사용자의 작업 스트림을 찾지 못했습니다 ... 예를 들어 각 사용자의 작업을 필터링하는 방법은 무엇입니까? 액션 이벤트를 저장하는 방법? 작업 스트림과 작업 자체에 사용할 수있는 데이터 모델 및 개체 모델은 무엇입니까?

6
PHP에서 정적 클래스를 만들 수 있습니까 (C # 에서처럼)?
PHP에서 정적 클래스를 만들고 C #에서와 같이 동작하도록하고 싶습니다. 생성자는 클래스를 처음 호출 할 때 자동으로 호출됩니다. 인스턴스화가 필요하지 않습니다 이런 종류의 ... static class Hello { private static $greeting = 'Hello'; private __construct() { $greeting .= ' There!'; } public static greet(){ echo $greeting; } } Hello::greet(); // Hello …

11
PHP에서 데이터베이스에 액세스 할 수있는 싱글 톤의 사용 사례가 있습니까?
PDO를 통해 MySQL 데이터베이스에 액세스합니다. 데이터베이스에 대한 액세스를 설정하고 있으며 첫 번째 시도는 다음을 사용하는 것입니다. 내가 생각한 첫 번째 것은 global: $db = new PDO('mysql:host=127.0.0.1;dbname=toto', 'root', 'pwd'); function some_function() { global $db; $db->query('...'); } 이것은 나쁜 습관으로 간주됩니다. 약간의 검색 후, 나는 함께 결국 싱글 패턴 , 어떤 "클래스의 …

11
효과적인 Java의 빌더 패턴
나는 최근 Joshua Bloch의 Effective Java를 읽기 시작했습니다. 빌더 패턴 [책의 항목 2]에 대한 아이디어가 정말 흥미로 웠습니다. 내 프로젝트에서 구현하려고 시도했지만 컴파일 오류가 발생했습니다. 본질적으로 내가하려고했던 것은 다음과 같습니다. 여러 속성이있는 클래스 및 해당 빌더 클래스 : public class NutritionalFacts { private int sodium; private int fat; private int …

7
ServiceLocator는 안티 패턴입니까?
최근 Service Locator 안티 패턴에 관한 Mark Seemann의 기사를 읽었습니다 . 필자는 ServiceLocator가 안티 패턴 인 두 가지 주요 이유를 지적합니다. API 사용법 문제 (완전히 괜찮습니다) 클래스가 서비스 로케이터를 사용할 때 대부분의 경우 클래스에 PARAMETERLESS 생성자가 하나만 있으므로 종속성을 확인하기가 매우 어렵습니다. ServiceLocator와 달리 DI 방식은 생성자의 매개 변수를 통해 …

4
로직을 추가 할 MVC (Laravel)
CRUD 작업을 수행하거나 특정 방식으로 관계를 수정할 때마다 다른 작업을 원한다고 가정 해 봅시다. 예를 들어 누군가가 게시물을 게시 할 때마다 분석을 위해 테이블에 무언가를 저장하려고합니다. 아마도 가장 좋은 예는 아니지만 일반적으로이 "그룹화 된"기능이 많이 있습니다. 일반적으로 이러한 유형의 논리가 컨트롤러에 적용됩니다. 이 기능을 많은 곳에서 재현하고 싶을 때까지는 괜찮습니다. …

3
관찰자 디자인 패턴과“리스너”
GOF에 설명 된 Observer 디자인 패턴은 실제로 다양한 툴킷에서 발견되는 리스너와 동일한 것 같습니다. 개념들 사이에 차이점이 있습니까, 아니면 청취자와 관찰자가 실제로 같은 것입니까? (나는 특정 컴퓨터 언어 구현을 찾고 있지 않습니다. 디자인 관점과의 차이점 (있는 경우)을 이해하고 싶습니다. 예, SOF에 대한 비슷한 질문에 대한 몇 가지 답변이 있지만 근본이 …

10
엔티티 속성 값 데이터베이스 대 엄격한 관계형 모델 전자 상거래
EAV / CR 데이터베이스 모델이 잘못 되었다고 말하는 것이 안전합니다 . 그것은 말했다 질문 : 런타임시 변경 될 수있는 전자 상거래 제품을 설명하는 속성의 "클래스"를 처리하기 위해 어떤 데이터베이스 모델, 기술 또는 패턴을 사용해야합니까? 좋은 전자 상거래 데이터베이스에는 옵션 클래스를 저장합니다 (예 : TV 해상도는 각 TV의 해상도를 갖지만 다음 …

8
프록시와 데코레이터 패턴의 차이점
프록시 와 데코레이터 의 차이점은 무엇 입니까? 내가 볼 수있는 주요 차이점은 프록시 가 컴포지션을 사용 하고 데코레이터 가 집계 를 사용 한다고 가정 할 때 여러 (하나 이상의) 데코레이터 를 사용하여 기존 인스턴스 (장식)에 기능을 수정 / 추가 할 수 있다는 것이 분명해 보입니다. 프록시 는 프록시 클래스의 내부 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.