«design-patterns» 태그된 질문

디자인 패턴은 소프트웨어 디자인에서 일반적으로 발생하는 문제에 대한 일반적인 재사용 가능한 솔루션입니다.

7
마법사와 전사의 규칙 우회
에서 블로그 게시물이 시리즈 , 에릭 Lippert의이 마법사와 예제로 전사를 사용하여 객체 지향 설계에서 문제를 설명 : abstract class Weapon { } sealed class Staff : Weapon { } sealed class Sword : Weapon { } abstract class Player { public Weapon Weapon { get; set; } } sealed class …

3
도우미 스타일의 "유틸리티 백"정적 클래스를 피하면서 "자유 ​​기능"을 깨끗하게 처리하는 C # 패턴
나는 최근에 내가 작업하는 큰 C # 코드베이스 주위에 떠있는 몇 가지 도우미 스타일의 "유틸리티 백"정적 클래스를 검토하고 있었다. // Helpers.cs public static class Helpers { public static void DoSomething() {} public static void DoSomethingElse() {} } 내가 검토 한 특정 방법은 대부분 서로 관련이없고 호출에서 명시적인 상태가 지속되지 않으면 …

3
파일의 시작 부분에서 끝에서만 알고있는 것을 쓰는 것
배경 : EBML 파일을 작성하기 위해 마이크로 컨트롤러 C 코드를 작성하고 있습니다. EBML은 중첩 된 요소가있는 이진 XML과 유사하지만 시작 및 끝 태그 대신 시작 ID, 길이 및 데이터가 있습니다. 저전력 응용 프로그램에서 외부 플래시에 이것을 쓰고 있으므로 플래시 액세스를 최소로 유지하고 싶습니다. 쉬운 일이 없기 때문에 메모리도 제한됩니다. 전체 …

4
복잡한 도메인 중심 애플리케이션에서 기본 CRUD 작업에 대한 DDD 접근
우리 회사는 웹 애플리케이션을 처음부터 다시 작성하고 있습니다. 금융 업계에서 복잡한 도메인을 가진 대기업 수준의 응용 프로그램입니다. 지속성을 위해 ORM (Entity Framework)을 사용하고 있습니다. 본질적으로 응용 프로그램의 절반은 사용자로부터 원시 데이터를 수집하고 저장하는 데 중점을 둔 다음 실제 도메인 논리를 대부분 포함하는 응용 프로그램의 나머지 절반은 원시 데이터를 사용하여 원본과 …

1
비즈니스 로직과 서비스 계층
나는이 대답을 읽었습니다 : https://softwareengineering.stackexchange.com/a/234254/173318 이해하십시오. 비즈니스 규칙 은 실제 비즈니스 단계 목록 (코드 없음)을 나타냅니다. 비즈니스 로직 (Business Logic) 은 비즈니스 규칙을 코드로 변환하는 프로세스 및 이러한 코드를 "비즈니스 로직"으로 처리합니다. 그리고 서비스 계층은 무엇에 사용됩니까? 이 답변을 읽으면 비즈니스 로직과 다르지 않습니다 https://stackoverflow.com/a/4817935/4190539 서비스 계층이 비즈니스 로직과 저장소를위한 …

2
반복자를 디자인 패턴으로 만드는 것은 무엇입니까?
다른 유사한 구조와 비교할 때 Iterator를 특별하게 만드는 것이 무엇인지 궁금해했으며 Gang of Four가 그것을 디자인 패턴으로 나열했습니다. 반복자는 다형성 (공통 인터페이스를 가진 컬렉션의 계층)과 우려의 분리를 기반으로합니다 (컬렉션에 대한 반복은 데이터의 구성 방식과 독립적이어야 함). 그러나 컬렉션 계층을 예를 들어 수학 객체 (정수, 부동 소수점, 복소수, 행렬 등)의 계층과 …

4
경계 컨텍스트의 경계를 명확하게 정의하는 방법
한 달 정도 DDD를 읽고 연구 한 후, 나는 내 자신의 프로젝트를 시작하기로 결정하고 이러한 제한된 맥락으로 DDD를 만들었습니다.> 고객 제품 명령 청구 각 경계 컨텍스트에는 프리젠 테이션 계층, 도메인 계층, 영구 계층으로 나머지 API가 있습니다. 지금까지는 코드가 원활하게 실행되지만 모 놀리 식 세계에서 왔지만 여전히 다음을 알아 내려고 노력하고 …

2
관찰자가 서로 독립적이지 않은 경우 관찰자 패턴이 적합합니까?
나는 class Car2 개의 속성을 가지고 있습니다 : int price및 boolean inStock. 그것은 또한 보유하고 List의 abstract class State(빈 클래스). 이 차에 적용 할 수 있으며, 각각 자신의 클래스에 의해 표현되는이 개 상태는 다음과 같습니다 class Upgrade extends State및 class Shipping extends State. A Car는 2 개 상태 각각에 제한이 …

1
명령 객체를 올바른 수신자와 어떻게 연결합니까?
프로젝트에서 실행 취소 및 다시 실행을 구현 하기 위해 명령 패턴 을 사용하려고했습니다. public abstract class Command { protected Form Receiver { set; get; } protected HtmlElement Element { set; get; } abstract public void ReDo(); abstract public void UnDo(); public Command(Form receiver) { this.Receiver = receiver; } } class …

8
데이터베이스에서 잘못된 널 항목을 방지하기위한 설계 및 실습
내 프로그램의 한 부분은 처리를 위해 데이터베이스의 많은 테이블과 열에서 데이터를 가져옵니다. 일부 열은 null이지만 현재 처리 컨텍스트에서 오류 일 수 있습니다. 이것은 "이론적으로"일어나지 않아야하는데, 그렇게된다면 그것이 나쁜 데이터 나 코드의 버그를 가리 킵니다. 어떤 필드가 어떤지에 따라 오류의 심각도가 다릅니다 null. 즉, 일부 필드의 경우 처리를 중지하고 누군가에게 통지해야합니다. …

1
쓰기가 드문 경우에만 이벤트 소싱이 이루어 집니까?
나는 이벤트 소싱에 대해 읽고 있으며 글이 매우 드물거나 군사 등급 감사가 필요한 이국적인 상황에서만 의미가 있는지 스스로에게 물어볼 수는 없습니다. 사용량이 많은 예외가 아닌 시스템은 하루에 수백에서 수천 번의 쓰기 작업을 수행하여 연간 운영 횟수가 백만 또는 2 회 (따라서 이벤트)로 변환 될 수 있습니다. 기존 스토리지에서 일직선으로 읽은 …

5
추상화에 따라 중요한 단점이 있습니까?
SAP (Stable Abstractions Principle)에서이 위키를 읽고있었습니다 . SAP는 패키지가 안정적 일수록 더 추상적이어야한다고 말합니다. 이것은 패키지가 덜 안정적이고 (변경 될 가능성이 높으면) 더 구체적이어야 함을 의미합니다. 내가 실제로 이해하지 못하는 것은 이것이 사실이어야하는 이유입니다. 확실하게 안정성에 관계없이 모든 경우에 추상화에 의존하고 구체적인 구현을 숨겨야합니까?

6
switch 문에서 스위치를 줄이는 방법은 무엇입니까?
그래서 데이터베이스에서 두 사람을 기반으로 인사말 줄을 만드는 방법을 만들고 있습니다. 두 개의 이름 ( name1및 name2)과 두 개의 성별 ( gender및 gender2)의 네 가지 매개 변수가 있습니다 . 모든 성별 조합에 대해, 나는 다른 결과를 가지고 있습니다. 예를 들어, 성별 1이 M(man)이고 성별 2도 M이면 출력은 다음과 같아야합니다. Dear …

4
계층을 강요하지 않고 개체가 서로 상호 작용하고 통신하도록하려면 어떻게해야합니까?
이 문제가 내 질문을 명확하게 해주길 바랍니다. 그래도 이해가 안된다면 완전히 이해하고 싶습니다. 그럴 경우 알려주세요. 더 명확하게 해보도록하겠습니다. 객체 지향 게임 개발에 익숙해 지도록 만든 매우 간단한 게임 인 BoxPong을 만나보십시오 . 상자를 드래그하여 공을 제어하고 노란색 물건을 수집하십시오. BoxPong을 만드는 것은 무엇보다도 근본적인 질문을 공식화하는 데 도움이되었습니다. 서로 …

1
"플럭스"와 순수 기능적 반응성 프로그래밍의 관계는 무엇입니까?
내가 이해하는 한 Flux는 응용 프로그램의 데이터 흐름을 단방향으로 처리하고 프로그램의 나머지 부분과 격리 된 상태를 읽기 전용의 독립적 인 "저장소"로 유지하여 수신 대기하여 자체 상태를 변경할 수있는 기술입니다. "조치"는 뷰에 의해 생성되고 디스패처에 의해 전달됩니다. 또는 간단히 말해서 상태를 제어하는 ​​방법입니다. 그것이 맞다면, 기능적 반응성 프로그래밍과 어떻게 관련이 있습니까? …

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