[原文发表地址]:
STM.NET on DevLabs
[原文发表时间]:Monday, July 27, 2009 2:20 PM
今天我们在MSDN DevLabs发布了STM.NET。STM.NET是.NET Framework 4 Beta 1的增强版本的实验级产品。STM.NET将为C# 程序员提供了软件事务内存功能。
事务内存技术的目标是提供事务性语义来读写内存,由此将开发人员从并行程序的繁杂工作中解放出来。这样开发人员在创建多核应用程序的时候,可以集中力量开发应用逻辑,而不必再担心细粒度锁定(fine-grained locking)或多线程应用中的同步,也不再纠结于内存I/O的细节。
创建事务
利用STM.NET可以将一段代码声明为原子(atomic)操作,然后只需编写一个包含这段代码的函数或lambda表达式,将它传递给委托变量Atomic.Do。就像数据库事务中的SQL代码一样,这一段代码会独立于其它事务处理代码模块块。如果它在执行过程中产生错误,整个事务会自动回滚,您不需要做任何特定的锁定操作。
它是如何工作的?
.NET Framework的实时编译器会找到您声明的原子代码,重写这段代码让它使用事务内存。这样做的好处是,大部分已有的.NET代码不需要做任何改动,包括那些使用锁定的代码。STM.NET还提供了与系统事务处理(System.Transactions)的集成,在此基础上您可以协调原子的内存操作和已有的事务资源管理器(比如MSMQ)。
STM.NET 的另一大优点是它与Visual Studio工具的集成。无论你的事务性变量出现在Atomic.Do代理之内还是之外,您都能通过STM.NET在Visual Studio 2008调试器中查看其变量的值。
你可以从这里下载STM.NET,通过项目的论坛告诉我们你的想法和使用的感受。更多 STM.NET 的精彩内容在STM.NET的团队博客。
Namaste !
[原文地址]:Silverlight 3
[原文发表时间]:Wednesday, April 29, 2009 7:37 PM
昨天,我宣布了Silverlight 3和Expression Blend的发布候选版本发布的消息。
Silverlight 3的新功能和改进包括:支持在浏览器外运行Silverlight应用程序, H.264/AAC/MP4媒体播放, GPU的支持,像素API包括像素着色器,三维透视, Silverlight的应用程序之间的本地信息通信,经过改进的业务对象框架,搜索引擎优化的支持和更好的文字的质量等。通过和不断创新的Visual Studio和Expression Blend相结合使用, Silverlight的3使得. NET的开发人员能够创建最前沿的富互联网应用程序和媒体体验。
今天,我想给大家深入介绍一下Silverlight 3的几个新功能。
三维透视
在Silverlight中对三维透视的支持允许开发者使用的2D内容创建的3D体验。三维透视也是一种更好地利用屏幕空间的好方法。让我们来看一个简单的图像浏览应用程序如何使用三维透视改善外观并更好地利用屏幕空间。不同于一次只显示一个影像,我们会展示一个全分辨率的主要图像和其他一些不同角度的透视的影像。
为了对图像进行三维投影,您需要设置图像的Projection 属性为PlaneProjection 。PlaneProjection提供的一套属性将使得元素被视如三维空间中的形状。将RotationY属性设为70即沿Y轴或叫垂直轴将对象旋转70度。这将使得经过旋转的元素看起来像是垂直于屏幕。下一步,我们要把这个元素往后并往右移,以腾出空间给其他的图像。为达到这一目的,我们要对GlobalOffsetX和GlobalOffsetZ属性进行设置。三维投影元素的输入和事件如预期般运作,所以经三维投影的DataGrid或文本框将具有普通控件完全相同的功能。我们将继续并添加其他4个图像和实施略有不同的角度透视转换以完成这个程序。通过设置不同的GlobalOffsetX属性值将把这些图像移动到左侧或右侧。
这就是最终的结果:

数据绑定的改进
ElementName绑定允许开发人员在XAML中将一个UIElement绑定到另一个上,而不需要写事件处理程序。在Silverlight 3的Binding类中有一个新的属性叫ElementName 。当ElementName被设置后,绑定引擎会使用指定的元素作为数据来源进行绑定。Path属性是指UIElement绑定的数据源的属性。如果ElementName指向DependencyProperty,绑定引擎会侦听DependencyProperty的变化并相应更新绑定。这里有一个XAML片段,展示了一个滑杆如何使用ElementName绑定来控制中央图像的不透明度:
上述XAML的显示以下界面。移动滑块改变蓝龙的图像从完全透明到完全不透明:

Out of Browser支持
Silverlight 3的Out of Browser支持使开发人员能够创建在浏览器之内或者之外都能运行的Silverlight的应用程序。为了使我们的应用程序能在浏览器外运行,需要修改应用程序的AppManifest.xml文件。在Visual Studio中,此文件位于Solution explorer中属性节点之下。在AppManifest.xml ,添加如下:
当您运行该应用程序,您会发现一个右键菜单会多一个新的选项里面写着“安装我的Silverlight的应用程序到这台计算机... ”在下方的图片,注意右键菜单的左下角:

单击该菜单选项后,您会得到一个安装此应用到你的机器的选项。浏览器外的应用看起来就像这样:

现在您可以关闭浏览器版本的应用程序而运行浏览器外的应用程序版本。如果您打开“开始”菜单,您可以找到一个启动浏览器外的应用程序版本的快捷方式。即使在没有网络连接的情况下,您也可以启动应用程序。
这些是Silverlight 3的部分新功能。你可以在这里找到更多的资料。
Namaste!
[原文地址]:An evening at the Giza Pyramids - Imagine Cup '09
[原文发表时间]:Tuesday, July 07, 2009 2:59 PM
今天早些时候,我参加了微软2009年度的“创新杯”颁奖礼。
这次活动是在胡夫金字塔下举行,意义可谓深远。因为,胡夫金字塔是远古工程学的伟大成就之一。
想象一下,你今天看到的这个金字塔是古埃及人花费了无数个星期,无数个月和无数年的时间,并透过细致的规划才最终建立起来的。这不是一个人能单独修建的… …它需要大量的协作,无数的人工和紧密的团队合作。现在回想起来,仍让我们觉得有些难以置信。其中最让我们觉得不可思议的是,这些修建于4500年前的金字塔拥有在远古时期都堪称精确的结构设计。直到今天,人们还在质疑,古埃及人是如何修建起这些由巨石组成的庞然大物。
7年前,首届“创新杯”正式启动。在2003年,来自11个国家和地区的1000名学生参加了这个活动。而今年,2009年,这个活动已经吸引了超过30万名来自全世界100多个国家和地区的学生。过去7年,我们一路走来,不断成长。“创新杯”已成为学生们把他们的好点子转换成改变世界的力量,并展示他们的热情、专注和才能的一个广阔舞台。
我个人也被学生们所展示出来的创新精神,热情和想推动这个世界向更美更好的方向发展的愿望所深深感动。对于创新的渴望引领出突破性的创意。在将来,这些都会让我们受益匪浅。此情此景又让我不禁回想起去年“创新杯”的颁奖礼。
去年,一个来自爱尔兰的学生组合运用嵌入式开发,建立了一个全新而高效的模型,帮助把柴油转换成生物燃料。稍后,他们决定把这个主意付诸行动。他们租用了一辆大卡车,灌入他们自己研制的燃料,驾驶着它从爱尔兰开到“创新杯”颁奖礼现场 –— 巴黎。在行驶行使过程中,他们的卡车不幸在英法海底隧道抛锚了。不过,那不是因为燃料的问题,而是一起事先没有预料到的机械故障。当时,他们被迫停下来,既没有足够的现金,也没有车辆保险可用来支付卡车修理的费用。一个棘手的问题随之出现在他们面前,“我们能否按时赶到比赛现场,还是会与之失之交臂?”最后,他们决定致电给当地的ADE(Academic Developer Evangelist),告知此事。后者成功地帮助他们找到帮手,修复了卡车。最后,他们驾驶着那辆卡车,按时赶到了颁奖礼现场,并赢得了第二名的好成绩。在整个过程中,这些学生表现出强烈的想要解决问题的决心,并亲身告诉大家有了科技和软件每个人都可以成就一些事情。这对我们所有人来说,都是宝贵的经验一课。
[原文发表地址] Launching Silverlight 3 and Expression 3!
[原文发表时间] Friday, July 10, 2009 11:45 AM
今天我很高兴地宣布Silverlight 3、Expression Blend 3 RC版本和SketchFlow发布了。此外,Expression 3的全系列产品也将于30天内发布。
在第3版中,Silverlight为富互联网应用程序的关键领域提供了很多创新和有益的功能,包括:
- 支持真正的高清晰视频
- 改进了对商业应用支持,包括数据验证和元素对元素的数据绑定
- 提供更深层渲染控制的像素着色引擎
- 在Silverlight的工具包中提供了90多个控件和主题,其中不少还包括其源代码和单元测试
此前,我曾介绍过SketchFlow。SketchFlow已经引发了设计界的讨论,改变了对既定的流程和工具的想法,因为它提供了一种从原型到产品化的工作流程,将草图转化为客户演示、原型和完整的应用程序。
我们的客户群正在不断增加——最近,Silverlight帮助向全世界展示了2009年罗兰加洛斯法国网球公开赛和2009年温布尔顿网球公开赛。在下一个冬季,2010年冬季奥运会将再次提供高清晰视频的详细赛事报道。美国大陆航空公司正在使用Silverlight来改善其客户服务的体验。MGM公司正在使用Deep Zoom功能建设星际之门官方网站,这使得粉丝们可以沉浸在有史以来最详尽的电视系列中。
今天,NBC体育宣布他们将在体育特许节目中,使用Silverlight作为其提供在线高清晰视频的主要技术。
请前往seethelight.com体验最新发布的内容,并随时到www.microsoft.com/Silverlight关注最新的Silverlight的发展动态。
全新设计的Expression社区网站有更多关于Expression 3的信息,帮助您与社区联系,更好的了解和学习Expression:
![ExpressionCommunitySiteSmall[1] ExpressionCommunitySiteSmall[1]](http://blog.joycode.com/images/metaapis/171/WindowsLiveWriter/Silverlight3Expression3_EE5E/ExpressionCommunitySiteSmall%5B1%5D_3.jpg)