«design-patterns» 태그된 질문

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

2
의존성 주입으로 구성을 어떻게 관리합니까?
저는 DI / IOC의 열렬한 팬입니다. 어려운 종속성을 처리 / 추출하는 데 유용하며 인생을 조금 더 쉽게 만듭니다. 그러나 나는 그것에 대해 작은 그립을 가지고 있는데, 어떻게 해결 해야할지 모르겠다. DI / IOC의 기본 아이디어는 개체가 인스턴스화 될 때 모든 해당 종속성이 생성자 내에 미리 채워져 있다는 것입니다. 그러나 IMHO에는 …

3
웹 사이트 워크 플로우를 디자인하는 방법?
나는 최적의 답변에 도달하지 않고 정말로 오랫동안 이것에 대해 생각 해왔다. 우선, 나는 가정 학습과 자유 시간에 코드를 가지고 노는 많은 시간을 제외하고는 프로그래밍을 좋아하지만 실제로는 결코 연구하지 않은 의사입니다. 현재 저는 클리닉을 관리하기 위해 소규모 프로젝트를 구축하려고합니다.이를 위해 가능한 옵션 목록을 작성했습니다. 예: 활성 환자 기록. 다른 역할을 가진 …


3
데코레이터 디자인 패턴에 대한 초보자 질문
나는 프로그래밍 기사를 읽고 있었고 Decorator 패턴을 언급했다. 나는 잠시 동안 프로그래밍을 해왔지만 공식적인 교육이나 훈련이 없었지만 표준 패턴에 대해 배우려고합니다. 그래서 Decorator를 찾아서 Wikipedia 기사 를 찾았 습니다. 나는 지금 Decorator 패턴의 개념을 이해하고 있지만,이 구절에 약간 혼란 스러웠다. 예를 들어, 윈도우 시스템의 윈도우를 고려하십시오. 창의 내용을 스크롤하기 위해 …

5
MVC가 왜 PAC보다 인기가 있습니까? [닫은]
휴무 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 닫은 3 년 전 . 나는 방금 SO 에 관한 질문을 우연히 발견했다. PAC 및 패턴에 관심이있어. 왜 MVC만큼 널리 사용되지 않는지 …

1
펌프 프라이밍이란 무엇입니까? 프라이밍 읽기라고도 함
나는이 표현과 패턴을 배웠습니다. 물론, 그 이름은 물을 펌핑하기 전에 물로 채워야했던 오래된 펌프에서 유래 한 것입니다. 우리는 여기서 코드에 대해 이야기하고 있습니다. 정말 좋은 예와 패턴이 달성하는 것에 대한 설명은 환영받을 것입니다. 이 패턴은 오늘날 어떻게 간주됩니까? 프라이밍은 때때로 루프 작동에 결함이 생길 수 있지만 DRY가 필요 합니다. 따라서 …

2
최소 놀랍게도 (POLA)와 인터페이스의 원리
1 세기 전 C ++을 배울 때 인터페이스는 용서해야하며, 소비자가 소스 나 문서 대신 소스 나 문서에 액세스 할 수 없기 때문에 메소드가 호출 된 순서를 신경 쓰지 않아야한다는 점을 배웠다. 이. 그러나 내가 멘토링 할 때마다 프로그래머 나 고위 개발자들이 저를 듣게 될 때마다 놀랍게 반응하여 이것이 실제로 일인지 …

4
단일 책임 원칙이 기능에 적용 가능합니까?
Robert C. Martin에 따르면 SRP는 다음과 같이 말합니다. 수업 이 바뀌어야 하는 이유는 하나 이상이어야 합니다. 그러나 그의 책 Clean Code , 3 장 : Functions에서 다음 코드 블록을 보여줍니다. public Money calculatePay(Employee e) throws InvalidEmployeeType { switch (e.type) { case COMMISSIONED: return calculateCommissionedPay(e); case HOURLY: return calculateHourlyPay(e); case SALARIED: …

5
열거 형이 취성 인터페이스를 작성합니까?
아래 예를 고려하십시오. ColorChoice 열거 형을 변경하면 모든 IWindowColor 하위 클래스에 영향을줍니다. 열거 형은 취성 인터페이스를 유발하는 경향이 있습니까? 더 다형성 유연성을 허용하는 열거 형보다 좋은 것이 있습니까? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: ColorChoice getColor() const=0; void setColor( const ColorChoice …

7
소프트웨어 디자인 패턴을 사용하지 않으면 어떻게됩니까? [닫은]
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 육년 전 . 소프트웨어 디자인 패턴을 사용하지 않으면 어떤 문제가 발생할 수 있습니까? 표준 객체 지향 기술을 사용하여 디자인에 접근하는 문제에 …

8
의존성 주입은 UnitTesting 외부에서 가치가 있습니까?
초기화하는 여러 객체의 다른 구현을 절대 사용하지 않아도되는 생성자가 주어지면 DI를 사용하는 것이 여전히 실용적입니까? 결국, 우리는 여전히 단위 테스트를 원할 수 있습니다. 문제의 클래스는 생성자에서 몇 가지 다른 클래스를 초기화하며 사용하는 클래스는 매우 구체적입니다. 다른 구현을 사용하지 않습니다. 인터페이스 프로그래밍을 피하는 것이 정당합니까?

3
국가 패턴이 Liskov 대체 원칙을 위반합니까?
이 이미지는 도메인 기반 디자인 및 패턴 적용 : C # 및 .NET의 예제 포함 이는 대한 클래스 다이어그램 주 패턴 A가 SalesOrder수명 시간 동안 여러 가지 상태를 가질 수 있습니다. 다른 상태 사이에는 특정 전환 만 허용됩니다. 이제 OrderState클래스는 abstract클래스이고 모든 메소드는 서브 클래스로 상속됩니다. Cancelled다른 상태로의 전이를 허용하지 …

1
Liskov 대체 원칙은 인터페이스를 구현하는 클래스에도 적용됩니까?
LSP는 클래스가 기본 클래스를 대체 할 수 있어야하는데 파생 클래스와 기본 클래스는 의미 적으로 동일해야합니다. 그러나 LSP는 인터페이스를 구현하는 클래스에도 적용됩니까? 다시 말해서, 클래스에 의해 구현 된 인터페이스 메소드 가 사용자가 예상 한 것과 의미 적으로 다른 경우, 이것이 LSP의 위반으로 간주됩니까?

2
리포지토리와 작업 단위 간의 관계
리포지토리를 구현하려고하며 리포지토리 소비자가 여러 작업을 수행 할 수 있기 때문에 UOW 패턴을 사용하고 싶습니다. 한 번에 커밋하고 싶습니다. 문제에 관한 몇 가지 기사를 읽은 후에도 다른 방법으로 수행되는 기사에 따라이 두 요소를 관련시키는 방법을 얻지 못합니다. 때때로 UOW는 저장소 내부에있는 것입니다. public class Repository { UnitOfWork _uow; public Repository() …

6
컨트롤러에서 SQL을 피하기위한 전략… 또는 모델에 몇 개의 메소드를 사용해야합니까?
따라서 합리적으로 자주 발생하는 상황은 모델이 다음 중 하나를 시작하는 상황입니다. 수많은 방법으로 몬스터로 성장 또는 백만 가지 방법이 필요하지 않을 정도로 유연하도록 SQL 조각을 전달할 수 있습니다. 예를 들어 "위젯"모델이 있다고 가정합니다. 우리는 몇 가지 기본 방법으로 시작합니다. get ($ id) 삽입 ($ record) 업데이트 ($ id, $ record) …

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