论道WP(三):应用程序栏
作者通过具体翔实的例子介绍了Winodws Phone 7中应用程序栏的使用方式。
该内容已经被标记书签!
标记书签错误,请重试!

作者 霍泰稳 发布于 2007年6月11日
Guido van Rossum是Python编程语言的创始人,现在就职于Google公司,但在他的大部分时间里他都还在为Python语言的发展而努力。自1989年Guido在ABC与语言的基础上创建了Python语言,目前这门语言不仅得到其他开发社区的认可,比如JPython和IronPython的广泛应用,在教育和科学技术领域也起到举足轻重的作用,据Guido介绍,Python甚至可以和价格昂贵的Matlab等商业软件相媲美。在5月31日举行的Google开发者日期间,InfoQ中文站的编辑霍泰稳对Guido van Rossum就Python的相关话题进行了交流。
InfoQ中文站:你为什么决定加入Google?目前在Google的主要工作是什么?
Guido:首先,我决定加入Google,是因为我有很多朋友都是Google的员工,他们告诉我说Python是Google的三大主要编程语言之一,在Google工作的感觉很棒,于是我就加入进来了。现在我在Google的工作主要有两部分。一部分工作是Python3000的开发项目,因为我们现在要出3.0版本;另一部分工作是为Google内部的工程师提供开发工具,比如我开发了一个代码检测(CodeReview)工具,用于工程师之间相互检测编码,收到了很好的效果。
InfoQ中文站:Python未来的发展方向是什么?Python3.0中最值得关注的特点是什么?
Guido:现在我们所做的是尽快开发出新的版本Python 3000。Python 3000的推出应该是在明年夏天北京奥运会的时候。编程语言的发展通常有两种方式,一种是传统的方式,它使得语言越来越复杂。另一种是创新式,Python 3000将坚持走新的编程语言路线。Python 3000中,我们将更加简化编程语言,去除所有的图形功能,取而代之以更加简洁和优雅的新特征。Python 3000中较为明显的一个特征就是增加了对Unicode的支持,比如你可以在定义变量、创建函数或定义类名上直接使用中文来进行编写。但是,对于一些核心的关键字,还是会保留使用英文。
InfoQ中文站:现在Python似乎受到了来自Ruby的挑战,后者更加面向对象,你如何比较这两种出色的动态语言?Ruby在元数据编程方面似乎更加方便,Python是否可能在这方面有所改进?
Guido:你刚才提到,相比Python,Ruby是更多地面向对象的编程语言,对此我不敢苟同。其实,Python也是面向对象的。在Google公司,曾经有人提出要用Ruby来编程,而且也得到Google管理层的支持。于是,他们用Ruby来做项目,最后却失败了。失败的原因不在于Ruby语言本身是否比Python更好或者更差,而在于Google内部用不着花费那么多的金钱和精力去支持多种语言。从编程的角度来说,我想Python 3000会有所改进,如引进泛型函数(generic functions)、抽象类(abstract class)等。我相信Python目前在很多方面都比Ruby更成熟,比如说它的运行速度更快、用户数量更多,而且支持第三方的编码软件数量也更大。
InfoQ中文站:刚才你也说到Python的性能比Ruby好很多,但是Python到现在为止还未出现向Ruby-on-Rails这样的Killer Application。你如何看待Ruby-on-Rails?Python社区何时可以出现这样的杀手锏应用?
Guido:对于杀手锏应用,我个人并不十分迷信。如果你太看重杀手锏应用的话,实际上你可能会把焦点放错地方,或者你可能太专注于某一个方面。刚才你谈到Ruby on Rails这个框架,实际上是因为Ruby它只有这样一个Web应用的框架。而Python则有好几个应用框架,比如Django(这是一个非常不错的框架)、TurboGears(有人说它完全可以和Rails媲美)、Zope等。这些Web框架与Ruby on Rails相比,发展时间更长,也更成熟。另外,我还想特别提到的一点是,Python也已经进入到科学研究的领域。实际上,在美国、还有欧洲的很多政府和学术界的实验室已经开始使用Python来替代一些商业化的工具,同时还专门建立了一个数字库(numeric library)来更好地支持Python。而且,Python也广泛地为教育界所采纳。美国的很多初中、高中以及大学(包括麻省理工、剑桥大学等)一二年级的学生,通常将Python作为其在编程语言方面的入门级课程。
InfoQ中文站:现在比较流行的是在虚拟机平台上支持动态语言,像微软有DLR(Dynamic Language Runtime),Java也有类似的Jython,你如何评价.NET平台下的动态语言支持和Jython之间的竞争?我们是否能够看到动态语言之间的兼容性,比如放在一个平台上如JSR 292?
Guido:我认为微软能够接纳Python是一件很好的事情。对于JVM上的Jython,我也是非常支持的。 我很高兴看到,通过改进平台对动态语言的支持等项目,动态语言终于获得了它们应得的认可。.NET和Java世界都在飞快地增长,两者之间的竞争是显而易见的。我不知道下一步将会出现什么情况。但是我想,在很长一段时间内,两者对于全世界的开发者来说都是很重要的。我很高兴,Python能够成为这两个平台上解决方案的一个重要部分。随着人们对Python支持的增加,使用Python的人也会越来越多。
对于动态语言之间的兼容性,我想当然是有这种可能的。.NET平台和JVM都支持元语言(meta language),.NET从一开始就是为支持元语言而创建的,JVM也可以用于元语言并增强支持。JSR 292并不一定要使得动态语言的运行速度更快。我想,你在这些平台上能看到的最大用处,不是这么多的动态语言之间的相互兼容,而更多的是动态语言与用静态语言(如JVM上的Java,以及.NET上的C#)来写的库之间的兼容,我想这将是一种更为常见的编程方法。所以,你可以看到动态语言之间的一些联系,平台通过一些对象类型、或者基本的数据如String或者Class等使之具备兼容的可能性。由于每一种语言在接口上能够与另一个平台实现很好的兼容,所以要成功地在动态语言之间实现兼容也是有可能的,但是不能指望它成为这些平台上的杀手锏应用。
InfoQ中文站:我知道在Python 2.5当中增加了一个新的条件负值语法规则,而且Python文档里说是Guido最后决定采用这种形式,我非常好奇您自己为什么选择这样的形式?
Guido:其实我本人一开始不是非常愿意的,因为我的宗旨是把Python做成非常小巧的,人脑能够记住和能够把握的语言,而不是经常查阅用户手册。因为有时候一个功能一个月才能用到一次。其实在很多年之前就有人向我建议,说建议加入这样的语法。后来越来越多的人告诉我说他们经常用到这个语法。其实没有这个语法也是豪无问题的。但最后我妥协了,将这个语法加进来了。
InfoQ中文站:事实上,Python在中国的使用者还是比较少,而且限于高水平的开发人员自娱自乐,请问你有没有什么好的建议来推动Python在中国的发展?
Guido:关于这一点,我想可以有很多方式来做。比如,CSDN网站上有人在翻译我的英文Blog。出版社也可以考虑出一本中文的Python教程或图书,或把一些现有的Python书籍翻译成中文。另外,也可以组织一些Workshop或者会议,例如在美国、欧洲、阿根廷、韩国等地都会每年举办一次Python的大会,有各种用户组合开发者社区的活动。我认识一些人,他们在北京成立了一个Linux用户组,我想这对我们Python在中国启动用户组是一个很好的开端。
(InfoQ中文站编辑Jason Lai和博文视点出版公司编辑方舟对此文亦有贡献!)在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中对于锁的性能优化,以及锁的存储结构及升级过程。
本次分享将首先介绍现代富文本编辑器的组成和实现,然后结合UEditor的开发过程,与参会者分享UEditor在设计和实现的过程中,所涉及到的核心功能的细节实现。
本次演讲视频录制于百度技术沙龙。
我们所开发的应用程序大多都需要提供一个图形用户界面(GUI)。关于GUI应用的架构设计,已经有了Form & Control、MVC,、MVP、 Passive View等多种模式。模式可以帮助我们建立优雅的架构,但前提是弄清楚模式的应用场景。弄清楚GUI应用面临的设计上的问题,有助于我们正确的挑选设计方案。
MongoDB是一种非常易用的NoSQL方案,Brian C. Dilley在这篇文章里介绍了MongoDB的优劣势,并介绍了MJORM项目。MJORM用于MongoDB,是一个没有注解的Java ORM库。
随着网络基础设施的逐步成熟,从RPC进化到Web Service,并在业界开始普遍推行SOA,再到后来的RESTful平台以及云计算中的PaaS与SaaS概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
精益软件开发方法因其对市场和交付的重视和在各种场景下体现出的适应能力正在获得广泛的关注。特别是在精益创业(Lean Startup)渐渐兴起和技术日新月异的今天,其"极端"的思想也变得越来越必要和可行。 InfoQ就此主题对他做了深入的采访。
没有回复
关注此讨论 回复