문제

나는 오늘 밤 .NET 사용자 그룹 회의에 갔는데, 그 일부는 Model-View-View 모델 패턴을 중심으로 회전했으며, 이것이 패턴으로 자격이 있는지 궁금해했습니다.
내가 가진 문제는 MV-VM이 매우 기술적이라는 것입니다. WPF와 바인딩 메커니즘을 사용하지 않으면 해당 패턴을 어떻게 사용할 수 있는지 알 수 없습니다.
대조적으로, 대부분의 "고전적인"패턴은 대부분 기술 불가지론 적이다. 그들이 만든 가장 큰 가정은 사용 된 언어가 객체 지향적이며 일반적으로 상속을 지원한다는 것입니다. 그 외에도, 고전적인 패턴은 대부분 일반적인 설계 문제를 진술하고이를 해결하기위한 접근법을 제안하는 것입니다. 그러나 여러 구현 또는 변형이 가능합니다.
내 질문은 디자인 패턴이란 무엇이고 매우 구체적인 프레임 워크를 사용하는 방법에 대한 권장 사항은 무엇입니까? 구현 방법과 어떤 언어와 기술을 사용해야하는지 알고 있다면 여전히 패턴입니까?

도움이 되었습니까?

해결책

"접근"에 필요한 기본 개념이 특허, 지적 재산 또는 외설적 인 작업을 위반하지 않고 다른 플랫폼에서 재 구현 될 수 있습니까? 그렇다면, 우리는 여전히 당신이받는 의미에서 디자인 패턴이라고 불릴 수 있다고 말하고 싶습니다. 아직. (플랫폼 별 접근 방식조차도 여전히 사용할 수있는 소규모 커뮤니티의 설계 패턴이 될 수 있습니다).

또한 MVVM은 단지 특정 구현 일뿐입니다. 프리젠 테이션 모델 패턴 Martin Fowler가 발표했습니다, 그것은 당신이 말하는 것처럼 확실히 "고전적인"것인데, 플랫폼-공감자입니다.

그들이 말하는 것처럼 "태양 아래에서 새로운 것은 없다"고, 같은 아이디어의 다른 배열. 원칙은 항상 개선되며, 거의 새로운 원칙은 거의 발명되지 않습니다.

다른 팁

패턴은 다른 바다의 섬이 아닙니다. 무언가가 패턴인지 아닌지는 흑백이 아닙니다. 모든 패턴은 척도로 배치 될 수 있으며 프로세스와 코드와 다른 두 가지 골대가 선택한 일반적인 두 개의 골대가있는 일반적인 회색 음영이 될 수 있습니다.

공유하거나 재사용 할 가치가있는 레시피 인 경우 약간 다른 상황, 그것의 패턴.

예, 디자인 패턴은 종종 사용중인 프로그래밍 언어 및 기술에 의존합니다. 예를 들어, 명시적인 자원 소유권을 다루는 DPS는 쓰레기 수집 된 언어와 크게 재생되는 것입니다. 그래서 - 그것은 정상적이고 완벽하게 훌륭하며 본질적으로 불가피합니다.

"권장 사항"은 기술적 맥락이 아니라 폭과 깊이에 의해 "설계 패턴"과 다릅니다. 적절한 DP는 비슷한 접근 방식의 두 개 이상의 독립적으로 개발 된 두 가지를 식별하고, 그들이 다루고있는 공통 "힘"을 더 깊이 파고 들었습니다. 아름답지만 무거운 가중 메타 형식으로 거기에서 하프. 대조적으로, 권장 사항은 훨씬 덜 형식적이고 깊고 넓습니다!

DPS는 결코 아닙니다 발명, 그들은 발견 유사한 상황을 다루는 기존 코드 (두 개 이상의 독립적으로 개발 된 사건)에 대해 숙고함으로써 "DP"는 "DP"가 훨씬 더 널리 사용되는 인기 있고 눈에 띄는 용어입니다. 알렉산더의 소스로 돌아가서 읽거나 다시 읽어야하는 것보다 시대를 초월한 건축 방법 그리고 그의 다른 작품, 당신이 DP의 유행어의 덤불을 통해 길을 잃었다면, 그들은 당신이 트레일을 다시 찾는 데 도움이 될 것입니다!

WPF와 바인딩 메커니즘을 사용하지 않으면 해당 패턴을 어떻게 사용할 수 있는지 알 수 없습니다.

Silverlight와 Moonlight도 MVVM을 지원합니다.

"언어는 패러다임을 기반으로합니다", 각 패러다임에는 문제를 해결하는 다른 방법이 있습니다. 디자인 패턴은 일반적인 솔루션으로 발생하며 언어에 따라 다르지 않든 상관 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top