Eu li a maioria dos tópicos principais sobre WPF vs. WinForms e me vejo preso na ambivalência infeliz em que você pode cair ao decidir entre a tecnologia anterior testada e verdadeira (Winforms) e seu sucessor (WPF).
Eu sou um programador veterano de Delphi há muitos anos que finalmente está saltando para o C #. Meus colegas programadores de Delphi por aí entenderão que estou empolgado em saber que Anders Hejlsberg, famoso por Delphi, foi o arquiteto por trás do C #. Tenho uma forte dependência dos componentes personalizados da Delphi VCL, especialmente aqueles envolvidos na criação de assistentes e componentes de várias etapas que atuam como um contêiner para componentes filhos.
Com esse pano de fundo, espero que aqueles que mudaram de Delphi para C # possam me ajudar com minha decisão WinForms vs. WPF para escrever meus aplicativos iniciais. Observe que estou muito impaciente quando a codificação e coisas como suporte completo ao depurador automático e completo podem fazer ou interromper um projeto para mim, incluindo a capacidade de encontrar informações prontamente disponíveis sobre os recursos e chamadas da API e, mais ainda, soluções alternativas para bugs .
Os tópicos e comentários do SO no início de 2009 me preocupam muito com o WPF quando se trata de possíveis frustrações que podem prejudicar minha codificação de desenvolvimento da interface do usuário do C #. Por outro lado, gastar uma quantidade excessiva de tempo aprendendo uma tecnologia de API que, mesmo que não seja abandonada, será substituída em breve (WinForms), é igualmente preocupante e acho o suporte da GPU no WPF tentador.
Daí minha ambivalência. Como ainda não aprendi nenhuma das técnicas, tenho uma rara oportunidade de começar de novo e não tenho que enfrentar a grande curva de "desaprendizagem" que vi as pessoas mencionarem em vários tópicos quando um programador do WinForms faz a mudança para o WPF. Por outro lado, se o uso do WPF for muito frustrante ou terá outras importantes consequências negativas para um desenvolvedor RAD impaciente como eu, continuarei usando o WinForms até que o WPF atinja o mesmo nível de suporte e facilidade de uso. Para dar um exemplo concreto da minha psicologia como programador, usei o VB e, posteriormente, o Delphi para evitar completamente a dor real de codificar com o MFC, uma biblioteca de interface do usuário do Windows que muitos desenvolvedores sofreram enquanto desenvolviam aplicativos antigos do Windows. Nunca me arrependi da minha sorte de evitar o MFC.
Também seria reconfortante saber se Anders Hejlsberg tinha uma mão na arquitetura do WPF e / ou WinForms, e se existem disparidades na visão criativa e na facilidade de uso incorporadas em qualquer base de código. Finalmente, para os programadores Delphi novamente, deixe-me saber quanto "IDE schock" eu uso ao usar o WPF em oposição ao WinForms, especialmente quando se trata de suporte a depurador. Quaisquer comentários do mercado de trabalho atualizados para 2011 também serão apreciados.