Hello World
Spiga

归档:2010年05月

编程语言的发展趋势及未来方向(6):并发

2010-05-30 22:53 by 老赵, 9991 visits
摘要:这是Anders Hejlsberg在比利时TechDays 2010所做的开场演讲。由于最近我在博客上关于语言的讨论比较多,出于应景,也打算将Anders的演讲完整地听写出来。在上一部分中,Anders谈论了“元编程”及他正在努力的“编译器即服务”功能。在这一部分中,Anders则谈论了“并发”,这也是他眼中编程语言发展的三种趋势之一,并演示了.NET 4.0中并行库的神奇效果。 阅读全文

编程语言的发展趋势及未来方向(5):元编程

2010-05-30 17:42 by 老赵, 10519 visits
摘要:这是Anders Hejlsberg在比利时TechDays 2010所做的开场演讲。由于最近我在博客上关于语言的讨论比较多,出于应景,也打算将Anders的演讲完整地听写出来。在上一部分中,Anders谈及了他眼中编程语言的另一个发展趋势:动态性。在这一部分中,Anders则讨论了动态语言所擅长的“元编程”,并简单介绍了他为静态类型语言所设计的一种改进方案:编译器即服务。 阅读全文

使用OpenOffice.org将各类文档转为PDF

2010-05-27 12:37 by 老赵, 30348 visits
摘要:最近在项目上遇到一个需求,是要将各类文档转换为PDF。这应该是个很常见的工作,而且我也只需要支持MS Word,Excel,PowerPoint等常见的文档格式就行了。于是有朋友就建议了,可以使用MS Office转嘛。当然也可以使用其他方法,例如装一些PDF打印机,把文档打印成pdf文件。不过这些做法在“授权”方面似乎都有些问题。当然,我也找了一些商业解决方案(如Aspose)保底,咋看之下它的授权方式也并不算贵。不过现在看来,OpenOffice.org已经能够满足我的需求了。如果您有更好的做法也请告诉我。 阅读全文

随便说说邮件列表那点事儿

2010-05-26 00:26 by 老赵, 1385 visits
摘要:这两天推特上在讨论RT方式与时间线干扰的问题,主要是有人抱怨官方的RT,或是民间的RT,还是所谓RT式回复的方式会污染追随者的时间线。对此有朋友应对到,如果感到“信息过载”,应该寻找合适的工具来进行管理。我没有参与这个问题的讨论,因为我本身其实还没有搞清各种RT方式分别是指什么,而且我也没有混乱的感觉──要知道我才fo了不到300人,如笑来老师fo了超过一万五千人还处理的井井有条,和他相比我算什么嘛。不过霍炬刚才举了一个例子提到了邮件列表相关的事情,我也就顺便谈一下吧。 阅读全文

编程语言的发展趋势及未来方向(4):动态语言

2010-05-23 22:16 by 老赵, 12762 visits
摘要:这是Anders Hejlsberg在比利时TechDays 2010所做的开场演讲。由于最近我在博客上关于语言的讨论比较多,出于应景,也打算将Anders的演讲完整地听写出来。在上一部分中,Anders谈及了声明式编程的另一个重要组成部分:函数式编程,并使用.NET平台上的函数式编程语言F#进行了演示。在这一部分中,Anders讨论了动态语言及JavaScript的相关内容,“动态性”也是Anders眼中编程语言的发展趋势之一。 阅读全文

2010年5月《程序员》杂志“架构师接龙”栏目中的问答

2010-05-21 09:48 by 老赵, 4295 visits
摘要:上个月《程序员》杂志向我约稿,希望我可以参加5月份的“架构师接龙”栏目,我略为犹豫了一下便答应了。“架构师接龙”是一个问答形式的栏目,每期由一个人提问,并由另一个人回答。回答的一方便是下期的提问者。这次提问的架构师是新浪微博的技术经理杨卫华。他提出的问题包括语言选择与架构设计、NoSQL存储方案的取舍、微博类系统的架构等多个方面。杨卫华是国内技术社区一等一的高手,这使得我在回答问题时更有小心翼翼地班门弄斧之感。如果您对某些问题感兴趣,也不妨来一起讨论一下。 阅读全文

永远的G点:中医和科学

2010-05-18 23:17 by 老赵, 2715 visits
摘要:最近由于@tinyfool同学要对博客的缓存插件进行压力测试,于是又引发了一场关于中医和科学的讨论、嗯或者说是争论……讨论……好吧我也不知道算是什么。这的确是个G点,一碰就能让许多人兴奋。兄弟我学识浅薄,既不懂科学,也不懂中医,本来不该参与这个话题讨论的,但最近看着其他人围着G点打转,脑子里也产生了不少想法,如果不记下来着实有些浪费脑细胞了。 阅读全文

Why Java Sucks and C# Rocks(4):泛型

2010-05-18 00:23 by 老赵, 10573 visits
摘要:Java 5.0和C# 2.0发布于同一年,各自添加了一个重要的特性:泛型。泛型可以让程序员针对泛化的数据类型编写相同的算法,这大大增强了两种语言的类型系统及抽象能力。不过即便是这看似相近的功能,Java和C#两者在语言实现和功能上也有很明显的区别,这甚至会形成编程方式上的不同。在这里可能需要事先打声招呼,因为在这个特定的话题上,语言和运行时的确是密不可分的,因此在这篇文章中我会涉及到相对较多的“运行平台”上的比较,而这点在整个系列中是我尽量避免的。不过您请放心,只此一次,欢迎监督。 阅读全文

盛大创新院赞助首届.NET技术交流会开始报名了!

2010-05-13 14:30 by 老赵, 3754 visits
摘要:自从上次在博客中提到盛大创新院赞助.NET技术会议已经过去了一个半月,如今这件事情终于落实了。我为此准备了数千字的申请书,但老大看也不看便表示支持。他的说法是,只要办得热烈,有影响力,那么这样的活动绝对支持。为此,各场次演讲内容及会场等诸多事宜之后,现在“首届.NET技术交流会”正式进入报名阶段了。人数不设上限,多多益善,怕只怕会场会显得空旷。除了.NET社区的群众以外,也欢迎其他技术社区的朋友前来参与交流。事实上,我组织技术交流会的目的之一便是希望能够促进.NET社区与其他技术社区的交流及相互学习。 阅读全文

使用.NET 4.0中的表达式树生成动态方法

2010-05-13 01:03 by 老赵, 8047 visits
摘要:为了在模型为dynamic类型的视图中使用一个匿名对象,我们在上一篇文章里为匿名对象创建了对应的动态类型。于是在使用时,我们会创建动态类型的对象,然后将匿名对象的属性赋值给动态对象的公开字段上。在赋值时我们使用了反射,再加上这个方法使用比较频繁,因此使用更好的方法来优化性能便是个很自然的选择。在.NET 1.0中,我们需要Emit;在.NET 2.0中则增加了DynamicMethod,相对简化了单个动态方法的创建过程;在.NET 3.5中则增加了可编译表达式树,可谓前进了一大步——那么在.NET 4.0中呢? 阅读全文

当类型为dynamic的视图模型遭遇匿名对象

2010-05-11 10:16 by 老赵, 9518 visits
摘要:当年在ASP.NET MVC 1.0时代我提到,在开发时最好将视图的Model定制为强类型的,这样可以充分利用静态检查功能进行排错。不过有人指出,这么做虽然易于静态检查,但是定义强类型的Model类型实在是太麻烦了,因此也出现了基于SmartBag等折衷方案。强类型是一种极端方案,而在C# 4.0中我们又可以使用另一个极端,那就是让Model成为dynamic类型,这样在视图中便可以完全自由地获取数据了。不过,在使用匿名对象的情况下视图会抛出奇怪的“无法找到成员”异常,我们必须解决这个问题。 阅读全文

您精通XXX吗?那么就来谈谈它的缺点吧

2010-05-06 15:31 by 老赵, 4505 visits
摘要:“精通”这个词已经被用滥了,当年招人时收到过无数简历,继而发现,似乎简历上面不写几个“精通”还真对不起咱这张脸。那么到底啥叫精通呢?应该是对某样东西无比了解,不能再了解的程度吧——不过地球人都知道,简历上的“精通”已经算不得数了。那么,如果我们真要考察一个人(比如自己)对某件事情是否“精通”,又有什么合适方法呢?我觉得有个方式比较靠谱,那就是谈谈这东西的缺点。 阅读全文

编程语言的发展趋势及未来方向(3):函数式编程

2010-05-04 19:09 by 老赵, 20974 visits
摘要:这是Anders Hejlsberg在比利时TechDays 2010所做的开场演讲。由于最近我在博客上关于语言的讨论比较多,出于应景,也打算将Anders的演讲完整地听写出来。在上一部分中,Anders阐述了他眼中声明式编程的理念及DSL,并演示C#中一种内部DSL的形式:LINQ。在这一部分中,Anders谈及了声明式编程的另一个重要组成部分:函数式编程,并使用.NET平台上的函数式编程语言F#进行了演示。 阅读全文
1
使用Live Messenger联系我