摘要:定义递归函数简单的说,就是使用rec前缀:众所周知,上例是一个阶乘函数。使用rec前缀使得其可以使用其定义本身。基于区分递归函数与非递归函数的考虑,函数本身默认不可递归调用,这会帮助你控制算法逻辑和增加代码可维护性。上例可以形象的表示为:很多方法都可以使用递归调用的方式编写。例如List.length:有时递归也会在流程控制上使用,例如下述代码会持续的获取HTML代码,并且输出到屏幕上:递归很强大...
阅读全文
摘要:使用选项(Option)下面看一个例子:使用模式匹配(Pattern matching)来生成option:Option的一些有用的方法: 方法 类型 描述 Option.get 'T option -> 'T 返回一个Some类型的值。或抛异常 Option.isNone 'T option -> bool 返回一个Option是否是None Option.map ('T ->...
阅读全文
摘要:使用F#的List创建一个list: 语法 描述 示例 [] 空list [] expr :: expr 将一个项加入一个list 1 :: [2; 3] [expr; ...; expr] 列举项创建list [1; 2; 3] [expr .. expr] 连续的数字 [1 .. 99] [ for x in list ... ] 通过运算生成list(类似于Linq里的select) [ f...
阅读全文
摘要:F#的string类型是.NET的System.String的缩写形式,代表了一连串的UnicodeUTF-16字符。使用String几种不同的String书写方式: 示例 种类 类型 "Humpty Dumpty" 字符串 string "c:\\Program Files" 字符串 string @"c:\Program Files" 无转义(Verbatim) string string "...
阅读全文
摘要:伴随着VS2010的公开测试,ASP.NET4.0也进入了我们的视线。ASP.NET4.0究竟给我们带来了什么,将在哪些方面提高我们的生产力?
在何时你需要使用ASP.NET4.0开发你的网站程序?
* 需要更严格的遵守web标准
* 需要更流畅的webform开发方式
* 需要更好的搜索引擎优化
* 需要后知后觉的纠正一些不够优良的设计,这些设计甚至可能是在ASP.NET1.0发布之前就存在的。
* 需要将现有的功能重新改造为支持server farm或跨application domains
* 需要将.NET调节和重组为一个整体
你不需要学习复杂的设计模式或各种SEO技巧,甚至不需要有代码重构的能力。忘记那些复杂的规定和教条吧,使用ASP.NET4.0提供的各种方便又实用的新功能,你将能轻松的开发/升级出与时俱进的高质量的程序。而这一切均需要从这里开始:
阅读全文