«builder-pattern» 태그된 질문

1
“StringBuilder”는 Builder Design Pattern의 응용 프로그램입니까?
"빌더"패턴은 "텔레 스코핑 생성자"반 패턴을 다루는 것으로 제한됩니까, 아니면 불변 개체의 복잡한 생성에 대한보다 일반적인 문제를 해결한다고 할 수 있습니까? 이 StringBuilder클래스에는 이름에 "builder"라는 단어가 있지만 텔레 스코핑 생성자와는 아무런 관련이 없으며 변경 불가능한 객체의 생성자에 전달하는 데 필요한 모든 데이터를 수집하는 데 도움이됩니다. 나에게 그것은 대답이 매우 "예"인 것처럼 …

9
빌더 패턴을 구현할 때 빌더 클래스가 필요한 이유는 무엇입니까?
빌더 패턴 (주로 Java)의 많은 구현을 보았습니다. 그들 모두는 엔티티 클래스 (클래스라고합시다 Person)와 빌더 클래스를 가지고 PersonBuilder있습니다. 빌더는 다양한 필드를 "스택" new Person하고 인수가 전달 된 a 를 리턴합니다 . 모든 빌더 메소드를 Person클래스 자체 에 넣는 대신 명시 적으로 빌더 클래스가 필요한 이유는 무엇 입니까? 예를 들면 다음과 같습니다. …

8
팀에서 빌더 패턴 사용을 어떻게 홍보 할 수 있습니까?
우리의 코드베이스는 나 자신과 마찬가지로 오래되고 새로운 프로그래머 이며 균일 성을 위해 수행 된 방식으로 신속하게 학습합니다 . 우리는 어딘가에서 시작해야한다고 생각하면서 다음과 같이 데이터 홀더 클래스를 리팩터링했습니다. 세터 메소드를 제거하고 모든 필드를 작성했습니다 final( final공식적으로 "양호합니다"). 세터는 생성자에서만 사용되었으므로 부작용이 없었습니다. 빌더 클래스 소개 생성자 (처음에 리팩토링을 촉구 한 …

3
수많은 매개 변수와 빌더 패턴의 생성자
클래스에 많은 매개 변수가있는 생성자 (예 : 4 개 이상)가 있으면 코드 냄새 일 가능성이 높습니다 . 클래스가 SRP를 충족하는 경우 다시 고려해야 합니다. 그러나 10 개 이상의 매개 변수에 의존하고 결국 빌더 패턴을 통해 모든 매개 변수를 설정하는 것으로 끝나는 경우 어떻게해야합니까? Person개인 정보, 작업 정보, 친구 정보, 관심사 …

5
유형이 빌더와 결합 된 이유는 무엇입니까?
최근 에 Code Review 에서 내 자바 답변을 삭제했습니다 . private Person(PersonBuilder builder) { 중지. 빨간 깃발. PersonBuilder는 Person을 빌드합니다. 그것은 사람에 대해 알고 있습니다. Person 클래스는 PersonBuilder에 대해 아무 것도 알 수 없습니다. 불변 유형입니다. 여기에 원형 커플 링을 만들었습니다. 여기서 A는 A에 의존하고 B는 A에 의존합니다. 사람은 그 …


4
Java : setter 순서가 중요하지 않은 단계 작성기를 구현하는 방법은 무엇입니까?
편집 : 이 질문은 이론적 문제를 설명하고 싶습니다. 필수 매개 변수에 생성자 인수를 사용하거나 API가 잘못 사용되면 런타임 예외가 발생할 수 있음을 알고 있습니다. 그러나 생성자 인수 또는 런타임 검사가 필요 없는 솔루션을 찾고 있습니다. 다음 Car과 같은 인터페이스 가 있다고 상상해보십시오 . public interface Car { public Engine getEngine(); …

3
객체 이니셜 라이저와 빌더 및 유체 인터페이스를 사용할 때 요점이 있습니까?
Java 및 C #에서는 매개 변수를 사용하여 생성자를 정의하거나, 오브젝트를 구성한 후 각 특성을 정의하거나, 빌더 / 유체 인터페이스 패턴을 사용하여 초기화시 설정할 수있는 특성으로 오브젝트를 작성할 수 있습니다. 그러나 C # 3에는 객체 및 컬렉션 이니셜 라이저가 도입되어 빌더 패턴이 크게 쓸모가 없었습니다. 이니셜 라이저가없는 언어에서는 빌더를 구현 한 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.