当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: Functional Programming Functiona
 

 

    摘要:什么是 uploadmodule?我们在上传大文件时都遇到过这样或那样的问题。设置很大的maxrequestlength值并不能完全解决问题,因为asp.net会block直到把整个文件载入内存后,再加以处理。实际上,如果文件很大的话,我们经常会见到internet explorer显示 "the page cannot be displayed - cannot find server......
    摘要:编程手记之杂谈篇-(一)c 失落的世界 发c的贴子,很少有人回应,难道c太低俗了吗?写c的文章,技术版面不收,难道c是儿童读物吗?编c的程序,不时髦不卖钱,难道c的程序员要领救济金度日吗?说c不面向对象,难道程序员是为了“对象”而活着吗?说c不是第四代语言,难道第n代的程序员就要用第n代的傻瓜语言吗?说c简陋落伍,难道这曾经使万人空巷的世纪盛宴,在今天要人寰散尽吗? 朴实的c,优美的c,沉默的c啊......


.NET 2.0 基础类库中的范型——Functional Programming
functional programming

我们来看一个简单的例子.假设有一个联系人列表 list<contact>,联系人的定义如下: 【程序编程相关:nhibernate数据加载之Crite

functional programming 不是一个新鲜的概念了,例如 c++ 虽然不是一门 functional programming 语言,但对它也有变通的支持——通过使用模板,函数对象(function objects)与运算符重载等手段,stl.boost 等库提供了巧妙无比的.高性能的算法与功能.长久以来似乎 c++ 能实现的这些特性对于诸如 java 与 c# 这些强调类型安全的面向对象的编程语言与框架来说是绝缘的.现在,在 clr 范型与 c# 2.0 匿名委托的支持下,我们也可以构造令人吃惊的 functional programming 程序了,而且比 c++ 更加简单(当然性能无法相比,因为 clr 中的范型是一种运行时技术,而 c++ 中的模板则是编译时技术).当前 .net bcl 对 functional programming 的支持限于集合类,确切说是 list<t> 与 array. 【推荐阅读:用宏实现动态数组

class contact { 【扩展信息:ANT(1.6)高级特性:模块化

 

public string name;

...

}

 

现在我们要把这个列表中所有联系人的姓名拷贝到另外一个列表.你可能马上就动手写了出来:

 

list<contact> c1 = ...;

list<string> c2 = new list<string>();

 

foreach (contact c in c1) {

c2.add(c.name);

}

 

这是一段非常规矩的 c# 代码.在 .net 2.0 中,有了范型与匿名委托,我们可以写出如下的完成相同功能的实现:

 

list<contact> c1 = ...;

list<string> c2 = c1.convertall<string>(

delegate(contact c) { return c.name; } );

 

显然这段代码比手工编写的 foreach 代码更简捷,在表达意图方面也显得更加清楚与直接.
...   下一页
 ·ejb学习笔记1 -- 重拾ejb    »显示摘要«
    摘要: 以前学习过一段时间ejb,但由于其中涵盖的知识面比较广,且结构较为复杂,所以先转学习相对较为简单的struts。这回的新项目中用到了ejb,所以决定重新学习ejb。 构建一个ejb组件的步骤如下: 1.编写组件接口(ejbobject远程接口,ejblocalobject本地接口),home接口,enterprise bean等。 2.编写部署描述文件。ejb-jar.xml等。 3.利用jar......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE