2010-03-01 2 views

답변

1

학습 곡선을 무시한 경우 (Harry Whittington에게 묻기를 "너는 메추라기를 어떻게 생각하니?"), 모든 단계에서 Windows Forms에 비해 WPF의 장점은 엄청납니다. 해상도 독립성, 리치 미디어 및 애니메이션과 같은 사항을 무시하고 사용자가 데이터를 입력 할 수 있도록 양식을 만드는 데 집중하십시오.

나는 그것이 데이터 바인딩에 관한 것이라고 생각한다. 데이터 바인딩을 가능하게하기 위해서는 많은 다른 것들 (특히 종속성 속성)을 이해해야하지만 WPF의 데이터 바인딩 구현은 UI 개발이 근본적으로 바뀌는 것과 같습니다.

아주 단순하고 일반적인 UI 어포던스를 고려하십시오. 입력 창의 영역은 사용자가 다른 부분에서 선택한 객체의 유형에 따라 다릅니다. 이것은 Windows Forms에서 흥미로운 과제입니다. WPF에서는 절차 코드를 전혀 작성하지 않고도 (종종 올바른 뷰 모델을 작성한 후에) 수행 할 수 있습니다.

2

이에 대한 간단한 대답은 없습니다. 마이크로 소프트의 전략은 WPF가 앞으로 나아갈 플랫폼이되고, WinForms는 이 될 것이고, 결국은 덜 관심을 끄기 시작합니다. 그럼에도 불구하고 WinForms는 여전히 매우 큰 개발 플랫폼입니다. WinForms에 대한 타사 구성 요소는 WPF보다 많습니다 (단,이 협상은 분명히 끝나지만). 구직 시장에서 더 많은 WinForms 개발자를 찾을 수 있습니다.

차이점은 실제로 당신이하는 일에 달려 있습니다. 어떤 종류의 프로젝트입니까?

1

양식에 아이 컵을 구현하려면 WPF를 사용해야합니다. 또한 WPF는 벡터 기반이기 때문에 일반 winform보다 많이 확대/축소를 처리 할 것입니다.

여러분의 응용 프로그램이 데이터 관리, 클라이언트 등록을위한 것이라면, 지금 당장 WinForms를 고수하고 싶을 것입니다. Model-View-Controller를 계속 사용하면 나중에 필요에 따라 또는 원하는대로 쉽게보기를 변경할 수 있습니다.

1

IMHO .NET 1.0이 출시되었을 때 VB6과 비슷하다고 생각합니다. 시간이 지나면 가장 재능있는 프로그래머 (그리고 가장 비싼 프로그래머)가 모두 WPF로 이동합니다. 덜 재능있는 사람들 만 창문에 남아있을 것입니다. 형식 ...하지만 시간이 걸릴 것입니다.

내 직업에서는 2002-2004 년부터 기존 COM + ASp3.0 응용 프로그램을 지원해야합니다. 적어도 .NET 1.0에 있었으면 좋겠습니다.

WPF로 개발 된 코드는 향후 Windows.forms 코드에서보다 쉽게 ​​사용할 수 있습니다. 그러나 Adam이 말했듯이, 그것은 프로젝트의 유형에 달려 있습니다.

1

Mono는 현재 이 아니며 WPF를 지원하는 계획은입니다. 그들의 계획은 Moonlight에서 Silverlight가 제공하는 하위 집합 만 지원하는 것으로 보입니다. 먼저 Moonlight가 데스크톱과 Silverlight를 목표로 삼아 WPF의 고급 기능이 필요한 특정 기능이 없으면 Silverlight를 사용할 수 있습니다.

+0

좋은 점 kenny! –

+0

이것은 교차 플랫폼을 타겟팅하는 경우에만 관련이 있습니다. WinForms와 WPF 사이의 선택은 두꺼운 클라이언트 Windows 응용 프로그램을 의미하므로 WPF는 Silverlight보다 더 합리적입니다. –

1

관리자의 관점에서 볼 때, 적어도 당신이 질문하는 것처럼 보입니다. 관리자는 코드를 작성하지 않으며 일반적으로 요구 사항을 설정하지 않아야합니다. 질문에 대한 대답은 "비즈니스 요구 사항을 가장 효과적으로 충족시키는 것이 무엇이든지"이며 이는 직접적인 질문이 아닙니다.

정말 관리자는 소프트웨어를 구현할 팀인 의 기술 피드백을 요청해야합니다. 그들은 비즈니스 요구 사항, 자신의 기술 및 그들이 수행하는 과정에서 지원/통합해야하는 기존 자산에 대한 이해를 기반으로 해답을 제시합니다.

동일한 요구 사항이 주어 지더라도 다른 팀/개인이 다른 답변을 제공한다는 점을 기억해야합니다. 그 중 하나가 잘못되었다는 것을 의미하지는 않습니다!

관련 문제