闲话WPF近期发展 (转)

WPF正式发布已经一年多了,但国内的很多人对于这个名词仍然很陌生,当然这是很正常的,毕竟一项技术的推广和成熟需要一个漫长的过程。最近我很高兴看到国内越来越多的技术爱好者开始学习WPF,有学生、美工、也有正从事WPF开发的朋友,但相比较国外的WPF开发队伍而言,还属于“珍稀物种”,不过这是一个好的现象,也希望有越来越多的人加入到这只新生技术力量中来。

WPF技术社区(不包括blog)

国外比较著名的WPF社区以MSDN WPF Forum为主,codeproject上也有不少不错的WPF文章。微软自己也为.NET Framework 3.0专门提供了一个门户:www.netfx3.com,原来wpf专栏是wpf.netfx3.com,但目前已经迁移到另外一个网站,叫做windowsclient.net,其中你不仅可以找到大量的WPF范例和教程,也可以找到有关WinForm的资源,这一点从这个域名的字面就可以看出来(它是为Windows客户端技术准备的)。

nibblestutorials.net也是个不错的网站,网站本身就是用silverlight实现的,由于界面特别有质感会给人一种眼前一亮的感觉。这个网站的内容全部是WPF、Silverlight的教程,也有Blend的教程,对于初学者来说确实是一个不可多得的网站。

WPF Blogs

WPF Blogs在最近一段时间如雨后春笋一般,似乎越来越多的人开始接触WPF了。当然比较有看头的Blog自然还是最早一批从事WPF开发的人或者干脆是WPF开发团队的人。下面举出一些比较有代表性的Blog:

ATC Avalon Team Blog
http://blogs.msdn.com/atc_avalon_team/
注释:这个Blog恐怕是最早的WPF Blog了,而且在2006年6月就已经关闭,不过里面的文章质量还是不错的,毕竟是WPF team的人写的,估计很多案例是拿来做测试用的。

WPF 3D Team Blog
http://blogs.msdn.com/wpf3d/default.aspx

WPF Text Team Blog
http://blogs.msdn.com/text/

WPF XPS Team Blog
http://blogs.msdn.com/xps/

Tim Sneath's Blog
http://blogs.msdn.com/tims/

John Smith's Blog
http://www.infusionblogs.com/blogs/jsmith/default.aspx
注释:John Smith是比较早从事WPF开发的一批人之一,他还开发了一套WPF类库,从一定程度上解决了一些开发中的问题,你可以从http://www.codeproject.com/useritems/WPFJoshSmith.asp了解他的这套类库。

Ian Griffiths's Blog
http://www.interact-sw.co.uk/iangblog/
注释:Ian Griffiths是Programming WPF的作者

Adam Nathan's Blog
http://blogs.msdn.com/adam_nathan/
注释:WPF Unleashed的第一作者

WPF范例

最近一段时间最著名的范例应该就是Family Show 2.0了,这是由Vertigo公司出品的,最主要的一个原因可能与其共享源代码有关,很多学习WPF的人都会关注这个应用程序,确实其中有很多东西可以借鉴和参考,而且一些效果也做的很不错,这个程序不仅仅让那些以前从事WinForm开发的人感到震撼,就连一些外行人看到这么漂亮一个程序也不尽会感叹几句,或许这对于用户才是真正友好的用户界面。有关Family Show的详细信息可以参考:http://www.vertigo.com/familyshow.aspx

当然,Family Show仅仅是一个代表而已,其实WPF应用程序现在已经有不少了,只不过很多是不公开源代码的,或者还处于开发阶段,或者开发完了但还没有发布,或者有些是非共享的。例如新的Microsoft Dynamics CRM中就用WPF来做数据呈现,如报表、关系网、联系人等。

Yahoo Messenger也是有很名的一款基于WPF实现的软件,其界面真的可以用完美来形容,不得不感叹UI设计师的功底,这一点也是国内很多软件所应该学习的,似乎国内软件根本不注重界面这一块,要么就是照搬国外著名软件的界面,比如VS IDE。有关Yahoo Messenger的详细信息可以参考:http://messenger.yahoo.com/windowsvista.php

the North Face(著名的服饰和背包品牌)也有一个基于WPF的应用,是一个产品的浏览器,只不过下载不到,有关这个软件的介绍可以看:http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=201147

New York Times Reader也是很有名的WPF范例之一,由于它通过WPF基本还原了纽约时报的排版,给人的感觉就像在看真正的纽约时报一样,有关它的详细信息可以参考:http://firstlook.nytimes.com/

WPF产业

以WPF为基础的产业在国外已经逐渐形成,以几家老牌控件厂商为首的“WPF先锋队”已经冲到了最前线,比如Infragistics、Xceed、ComponentOne等都是我们十分熟悉的控件厂商,当然其制作出来的WPF控件也自然是比较牛的,Infragistics将其拳头产品NetAdvantage升级为WPF的版本,叫做NetAdvantage For WPF;Xceed的WPF Grid堪称一绝,不信的话你可以去Xceed的网站看看Demo,相信你一定会被这套控件的绚丽效果所折服;ComponentOne则瞄准了Silverlight控件市场,推出了代号为Sapphire Control Suite的产品,目前ComponentOne正和Silverlight team密切合作,这与目前Silverlight的不成熟有关,很多效果和控件还很难实现,有了ComponentOne的介入,相信以后开发silverlight应用会很轻松(当然肯定不是免费的);VantagePoint也出了一套WPF控件,不过这套控件的风格有些特别,第一眼乍一看还以为是Flash动画,比如风车、街机按钮、开关、电压指示器等,不过放在程序中应该会很玄,给人一种娱乐的感觉。

还有一些公司则完全做WPF咨询兼开发,不过目前为止还没有特别出名的,好些还是刚刚成立的小公司(有几家是原来最早从事WPF开发或者参与过著名的WPF范例的人开的)。不过有一家公司不得不提,那就是identity mine,这是一家典型的从事WPF开发咨询的公司,它与微软合作开发了多款基于WPF的应用,具体大家可以去看该公司的网站:http://identitymine.com/。我个人很看好WPF咨询这块市场,毕竟WPF刚刚起步,知道有WPF这个东西就不错了,能够精通实属不易,这无疑会成为技术咨询公司的核心竞争力。

thirteen23也是很著名的WPF解决方案提供商之一,从它网站首页的横幅中就可以看到它的产品有多么多,并且大部分(也许是全部)都是基于WPF的,具体信息大家可以看该公司的网站。

国内到目前为止只看到过个位数的公司在从事WPF开发,至于开发咨询就更少了(微软自己除外)。

WPF工具

目前大部分的开发者还是基于VS2005+.NET Framework 3.0 Extension在做WPF开发,VS2008目前仍然是beta版,恐怕用的人并不多,当然其对于WPF的支持要远远好于VS2005,就让我们期待明年2月VS2008正式发布吧。

Expression Blend和Expression Design作为WPF最主要的两款设计工具,目前已经有Expression Blend 2 Sep Preview版本了,功能上比Expression Blend 1.0强好多,对于很多原本不支持的WPF功能进行了增强,我个人用下来觉得使用Expression Blend进行WPF开发要比在VS2005中开发不知道好多少,最突出的特点就是Expression Blend的界面预览功能明显要比VS2005 extension强,并且支持动态资源,基本上只要xaml是正确的都可以在设计时显示出界面来,这样才叫所见即所得嘛!VS2005对于WPF而言似乎还是只能当代码编辑器来用,希望VS2008在这方面能够有所改进,至少不要动不动就说XAML无法呈现。

至于Expression Design目前仍然是1.0,不过功能基本够用了,Expression Design可的确是给美工用来编辑矢量图形的,设计完了再导入Expression Blend,似乎更像一个图像编辑软件。

转自:http://www.cnblogs.com/tonyqus/archive/2007/09/30/896936.html
原文地址:https://www.cnblogs.com/sxlfybb/p/921133.html