12 2009 档案

摘要:前两天在园子里看到一篇用C#实现Python Decorator的文章,看的时候就在想应该可以用C# 4.0 Dynamic来搞。今中午有时间试了一下,果然可以. 本文假设你己安装了VS2010 Beta2和 IronPython 2.6 for .NET 4.0 Beta2, 首先创建一个Console App并引用如下Dll (可以在你的IronPython安装目录中找到)IronPython... 阅读全文
posted @ 2009-12-31 14:49 芭蕉 阅读(1887) 评论(2) 推荐(0) 编辑
摘要:随着微软对动态语言,函数式语言的重视,我们(微软阵营的.Net程度员)也越来越多的开始使用这些"新的语言,新的思想"来完成我们的一些日常工作。对我们来说,动态语言有IronPython, IronRuby可选,函数式语言有F#。F#功能是很强大,但对新手来说,其代码可读性就差一些,经常能看到人抱怨F#写出来的代码丑陋,看不懂。 相反,Python作为一种动态语言,语法简洁,写出的代码也是相当漂亮,... 阅读全文
posted @ 2009-12-28 14:58 芭蕉 阅读(1505) 评论(4) 推荐(2) 编辑
摘要:F#中的lambda表达式很容易给人造成误解,好象它只支持单行的语句,其实不然,它是可以支持多行的,比如let f = (fun () -> (printf "hello" printfn " world" )) 只是上面这种写法实在太过难看,所以一般推荐写成一行,语句之间用分号隔开,letf = (fun() -> ( printf "hello"; printfn "world")... 阅读全文
posted @ 2009-12-28 00:15 芭蕉 阅读(399) 评论(2) 推荐(0) 编辑
摘要:实箭头:  虚线:Dependence,表示一种比较弱的依赖关系,某个类在某一段时间可能使用另一个类。  实线:表示两个对象间的关系,根据对象间有无主从(Owner)关系,可有分为两类    无主从关系: Association, 两个对象的创建和销毁都彼此独立    有主从关系, 既一个对象被创建后只能属于创建它的对象,不能同时被别的对象使用。根据两个对象的生命周期的依赖关系又可分为两类:   ... 阅读全文
posted @ 2009-12-25 14:10 芭蕉 阅读(684) 评论(0) 推荐(0) 编辑
摘要:Python中函数支持default value和keyword arguments(类似于C# 4.0中引入的named and optional parameters). 唯一需要注意的地方就是在一个scope中默认值只会被计算一次,所以如果默认值是可变容器时,要注意side effects.比如def f(a, L=[]):  L.append(a)  return Lf(1) // ret... 阅读全文
posted @ 2009-12-24 13:37 芭蕉 阅读(260) 评论(0) 推荐(0) 编辑
摘要:使用Ctrl + TAB可以在多个打开的代码文件间切换,结合方向键还可以有多个己经打开的tool window间切换 阅读全文
posted @ 2009-12-03 13:33 芭蕉 阅读(351) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示