«design-patterns» 태그된 질문

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

4
리포지토리 패턴을 사용하는 경우
최근에 ORM과 함께 저장소 패턴을 사용하는 것이 좋지 않다는 것을 읽었습니다. 내 이해에서 이것은 SQL 데이터베이스에 제공하는 추상화가 너무 누설되어 패턴에 포함되지 않기 때문입니다. 이것에 대해 몇 가지 질문이 있습니다. ORM을 끄려면 어떻게해야합니까? 저장소에 ORM 특정 코드가 없으면 응용 프로그램에 ORM 특정 코드가 있습니다. ORM을 사용하지 않고 데이터 액세스 및 …

5
엔터티 구성 요소 시스템 아키텍처 개체는 정의 중심입니까?
는 IS 엔티티 컴포넌트 시스템 아키텍처의 목적은 정의에 의해, 지향? 좀 더 절차적이고 기능적인 것 같습니다. 내 의견은 그것이 당신이 OO 언어로 그것을 구현하는 것을 방해하지는 않지만, OO 방식으로 그렇게하는 것은 관용적이지 않다는 것입니다. ECS가 데이터 (E & C)와 동작 (S)을 분리하는 것 같습니다. 증거로 : 아이디어는 엔터티에 게임 방법을 …

10
단일 책임 원칙을 새 코드에 적용 할 수 있습니까?
이 원칙은 변경해야 할 한 가지 이유가있는 모듈로 정의됩니다 . 내 질문은, 코드가 실제로 변경되기 시작할 때까지 이러한 변경 이유를 알 수 없다는 것입니다. 거의 모든 코드에는 변경 될 수 있는 여러 가지 이유 가 있지만, 이러한 코드를 모두 예상하고이를 염두에두고 코드를 설계하려고하면 코드 품질이 매우 떨어질 수 있습니다. 코드 …

2
내 라이브러리에 구현할 '좋은 수'의 예외는 무엇입니까?
나는 항상 내 소프트웨어의 다양한 부분에 대해 구현하고 던져야 할 예외 클래스가 얼마나 많은지 궁금했습니다. 내 특정 개발은 일반적으로 C ++ / C # / Java와 관련이 있지만 이것이 모든 언어에 대한 질문이라고 생각합니다. 다양한 예외가 발생하는 것과 개발자 커뮤니티가 좋은 라이브러리에 기대하는 것을 이해하고 싶습니다. 내가 보는 단점은 다음과 …

7
자신의 데이터 액세스 / 데이터 매핑 계층을 작성하는 것이 "좋은"아이디어입니까?
우리는 현재 즉시 사용 가능한 객체 관계형 매퍼를 사용하거나 우리 자신의 롤링을 선택할 수있는 상황에 처해 있습니다. 데이터 계층과 비즈니스 계층이 불행하게 뭉친 레거시 응용 프로그램 (ASP.NET + SQL Server)이 있습니다. 시스템은 데이터 액세스 측면에서 특히 복잡하지 않습니다. 상호 관련된 테이블의 큰 그룹 (35-40)에서 데이터를 읽고 메모리에서 조작하고 요약 형식으로 …

1
중첩 REST URL과 부모 ID, 더 나은 디자인은 무엇입니까?
좋아, 우리는 두 가지 자원을 가지고 Album와 Song. API는 다음과 같습니다. GET,POST /albums GET,POST /albums/:albumId GET,POST /albums/:albumId/songs GET,POST /albums/:albumId/songs/:songId 우리는 우리가 어떤 노래를 싫어한다는 것을 알고 Susy있습니다. 우리는 어디에 search행동 을해야 합니까? 다른 질문. 이제 더 현실입니다. 앨범 1을 열고 모든 노래를로드합니다. 우리는 JS 객체를 생성하고 각각 노래 데이터를 보유하며 …

7
패턴과 원리의 차이점
객체 지향 디자인 패턴과 원칙의 차이점은 무엇입니까? 그것들이 다른가? 내가 이해하는 한 두 가지 공통 목표 (예 : 유연성)를 달성하려고합니다. 패턴이 원칙이고 그 반대도 마찬가지라고 말할 수 있습니까? 설계 원리 = SOLID (즉, 의존성 역전 원리) 디자인 패턴 = Gof (예 : 추상 팩토리 패턴)

5
정적 메소드 만 포함하는 *** Helper 또는 *** Util 클래스를 사용합니까?
나는 종종 Java 또는 모든 종류의 언어에서 도우미 또는 유틸리티 클래스에 직면합니다. 그래서 나는 이것이 일종의 안티 패턴인지 여부를 묻고 있었고 이러한 종류의 클래스의 존재는 소프트웨어의 디자인과 아키텍처에서 누락이 부족한 것입니다. 이러한 클래스는 종종 정적 메소드를 사용하여 제한되며 많은 기능을 수행합니다. 그러나 대부분 상황에 따라 다르며 상태가 가득합니다. 내 질문은, …



9
프로그래밍에서 디자인 패턴이 얼마나 중요합니까?
나는 대학생이고 방금 디자인 패턴에 대해 배우기 시작했고 그 목적을 이해하기 위해 고심하고 있습니다. 나는 그것들을 연구하려고 노력했지만 내가 찾은 모든 자료는 그것들이 전문가가 아닌 학문적 인 방식으로 그들에 대해 이야기하는 것처럼 보인다. 그들의 목적은 무엇이며 배우는 것이 중요합니까?

3
메소드 체인을 통해 컨텍스트를 전달하기위한 패턴
이것은 상당히 많은 것으로 보이는 디자인 결정입니다. 컨텍스트 를 필요로하지 않는 메소드를 통해 컨텍스트를 전달 하는 방법. 정답이 있거나 상황에 따라 달라 집니까? 솔루션이 필요한 샘플 코드 // needs the dependency function baz(session) { session('baz'); } // doesn't care about the dependency function bar() { baz(); } // needs the …

6
구현 옆에 로깅이 SRP 위반입니까?
민첩한 소프트웨어 개발과 모든 원칙 (SRP, OCP 등)을 생각할 때 로깅 처리 방법을 스스로에게 묻습니다. 구현 옆에 로깅이 SRP 위반입니까? yes로깅없이 구현을 실행할 수도 있기 때문에 말할 것 입니다. 어떻게 로깅을 더 나은 방법으로 구현할 수 있습니까? 몇 가지 패턴을 확인하고 사용자 정의 방식으로 원칙을 위반하지 않는 가장 좋은 방법은 …


2
유효한 상태를 유지하기 위해, 즉 객체의 데이터 멤버를 업데이트하기 위해 클래스에 하나의 큰 개인 함수를 정의하는 것이 좋습니다.
아래 코드에서 전자 상거래 사이트의 간단한 단일 품목 구매가 사용되지만 일반적인 질문은 모든 데이터 멤버를 업데이트하여 객체의 데이터를 항상 유효한 상태로 유지하는 것입니다. https://ko.wikibooks.org/wiki/Object_Oriented_Programming#.22State.22_is_Evil.21 과 관련하여 "일관성"및 "상태는 악"이라는 문구가 있습니다. <?php class CartItem { private $price = 0; private $shipping = 5; // default private $tax = 0; private …

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