代码改变世界

艾伟:有关Web 3.0

2011-08-28 23:56 by 狼人:-), 175 阅读, 0 推荐, 收藏,
摘要:很难得,看到园子里有朋友开始关注Web 3.0的概念了。也许很多朋友会认为概念陈述都是虚无飘渺的东西,不如讨论技术来得实在。是的,概念脱离了实际则无异于海市蜃楼,虽然美丽却遥不可及。不过,话也回来,概念的提出或者归纳也许是推广普及的需要,也许是为了创造更大的舞台,Ajax就是一个非常成功的先例。 Web 3.0是一个新的概念,很可惜,我们很难找到权威的定义。不过,从有限的资料中,我们约莫可以猜想到Web 3.0的一些特点: 1、Web 3.0时代的网络访问速度会非常快; 2、Web 3.0时代的网站会更加开放,对外提供自己的API将会是网站的标准配置; 3、Web 3.0时代的信息关联通过语义 阅读全文

艾伟:C#3.0笔记(一)预备知识之Delegate

2011-08-28 23:56 by 狼人:-), 189 阅读, 0 推荐, 收藏,
摘要:在学习C#3.0之前还是先来回顾下委托、事件,因为这样能更加有助于理解C#3.0里面的一些新的特性,如Lambada表达式等。 背景 在C语言中我们可以用函数指针来创建回调函数,但是在C里面回调函数存在一些安全问题。因为它只是在内存地址中记录了下来,并没有像方法的参数类型、参数个数、返回值等其他安全信息。而在.Net FrameWork中,回调仍然是可以的,.net framework中提供了更为高级的更为安全的面向对象的delegate来实现。 定义委托 在委托中主要包含了三个重要的信息: 1.调用的方法的名称; 2.方法的参数; 3.方法的返回值。 定义... 阅读全文

艾伟:让.NET程序脱离.NET Framework框架运行

2011-08-28 23:56 by 狼人:-), 289 阅读, 0 推荐, 收藏,
摘要:Net 框架目前逐步在普及了,仍然有很多人在寻找如何让.Net程序脱离.NET框架的方法。 现成的工具有 Xenocode 的postbuidle或者vas,还有 Salamander .NET Linker 。 另外还有 MaxToCode 作者以前做的 framework linker。 以及一些支持注册表模拟和文件模拟的打包工具molebox,thinstall等。 最后还有某网友(应其要求隐去网名) 兜售的一个实现方法。 Xenocode的是使用了一个虚拟机环境,模拟框架需要的注册表信息和文件信息.Xenocode号称的生成nativa代码功能实际上就是指的这个功... 阅读全文

艾伟:打通.NET 3.5与ExtJS数据交互的任督二脉

2011-08-28 23:56 by 狼人:-), 209 阅读, 0 推荐, 收藏,
摘要:ExtJS是一套非常好的UI框架,已经有越来越多的企业级应用程序使用上了这个框架而从中受益。然后,在众多的项目当中,以J2EE项目居多,原因是ExtJS与Java的集成化越来越强。而对于使用.NET平台的开发者来说,想要在自己的项目当中使用ExtJS却困难重重,原因在于数据通信很难达到统一。在.NET 3.5以前,.NET平台提供有限的JSON原生支持。因而很多程序员都是使用第三方的组件。例如LitJson.net组件。 在.NET 3.5中,框架提供了DataContractJsonSerializer类,可以方便地对对象进行JSON序列化跟反序列化。另外,.NET3.5提供了扩展方... 阅读全文

艾伟:正则表达式30分钟入门教程

2011-08-28 23:55 by 狼人:-), 238 阅读, 0 推荐, 收藏,
摘要:本文目标 30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。 如何使用本教程 最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :) 别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看完这篇教程后,能把提到过的语法记住80%以上的可能性为零。这里只是让你明白基本的原理,以后你还需要多练习,多使用,才能熟练掌握正则表达式。. 阅读全文

艾伟:编写自文档化的代码

2011-08-28 23:55 by 狼人:-), 132 阅读, 0 推荐, 收藏,
摘要:文所以载道也。 —— 宋·周敦颐《通书·文辞》 对于我们程序员来说,我们的工作也是写作——几乎每天都要写代码;而且还要载“道”,不仅仅要满足客户的需求,还要让代码具有高度的可读性,这样其他的程序员可以更容易地对代码进行修改和扩展。 按这样的要求,我们需要为代码编写足够的文档,也就是将代码“文档化”。常见的做法有两种,外部文档和注释。 外部文档 外部文档指的是在代码文件之外编写的附加文档,比如在Word文档中采用大量的篇幅(如UML图、表格)来设计或记录相关的包、类型、类型成员、成员参数之类的信息。这看起来很规范,但如果你用过这种方式,一定会讨厌它。这种方式的主要问题在于: 阅读全文

艾伟:一次挂死(hang)的处理过程及经验

2011-08-28 23:55 by 狼人:-), 315 阅读, 0 推荐, 收藏,
摘要:前言: CPU占用率低,内存还有许多空余,但网站无法响应,这就是网站挂死,通常也叫做hang。这种情况对于我这样既是CEO,又是CTO,还兼职扫地洗碗的个人站长来说根本就是家常便饭。以下是一次处理hang的经验及总结,前后用了一个月,不仅涉及程序排查,数据库优化,还有硬件升级的苦恼。其中辛酸苦辣只有经历过的站长才能体会,希望此文能对各位有所帮助! 首先介绍一下网站基本情况,是一个在线小说阅读网站,每天有一定页面访问量,在优化开始前由两台服务器运行,均为Dell PowerEdge 2950,配置为一台Intel xeon E5410 2.33G*2 ,4GB ECC内存,另一台Intel xe 阅读全文

艾伟:Regex.Replace 方法的性能!

2011-08-28 23:55 by 狼人:-), 374 阅读, 1 推荐, 收藏,
摘要:园子里有很多关于去除Html标签的文章。一个常用的经验是使用 Regex.Replace 方法利用正则去替换。这里有一篇使用该方法的文章C#中如何去除HTML标记。下面我贴出该方法的代码,见代码清单1-1 代码清单1-1引用http://www.cnblogs.com/zoupeiyang/archive/2009/06/22/1508039.html /// ///去除HTML标记 /// ///包括HTML的源码 ///已经去除后的文字 publicstaticstringReplaceHtmlTag(stringHtmlstring) { //删除脚本 Htmlstring=Htm... 阅读全文

艾伟:C# Design Patterns (1) - Factory Method

2011-08-28 23:55 by 狼人:-), 155 阅读, 0 推荐, 收藏,
摘要:Simple Factory Pattern (简单工厂模式) 特性: 把类的实例化工作,集中到一个「工厂类」去处理,亦即将 new instance 的工作,都交给一个「工厂」去处理,而不要分散写在各个类中。 客户端程序,与创建实例 (对象) 的工作必须隔离,亦即「解耦」,客户端程序只要专注于自己的业务逻辑。适用于客户端程序在开发过程中,尚无法预知要创建的具体类型。 产品具体的实现能和客户端隔离,便于事后抽换。 Simple Factory Pattern (简单工厂模式)、Factory Method Pattern (工厂方法模式),在实作的代码中,有时很难明确去界定此二者。Simp.. 阅读全文

艾伟:[原创]再谈IIS与ASP.NET管道

2011-08-28 23:55 by 狼人:-), 245 阅读, 0 推荐, 收藏,
摘要:在2007年9月份,我曾经写了三篇详细介绍IIS架构和ASP.NET运行时管道的文章,深入介绍了IIS 5.x与IIS 6.0HTTP请求的监听与分发机制,以及ASP.NET运行时管道对HTTP请求的处理流程: [原创]ASP.NET Process Model之一:IIS 和 ASP.NET ISAPI[原创]ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline - Part I[原创]ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline - Part II 很多人留言为何没有IIS. 阅读全文

艾伟:基于.NET平台的Windows编程实战(六)—— 题目管理功能的实现

2011-08-28 23:55 by 狼人:-), 204 阅读, 0 推荐, 收藏,
摘要:本系列文章导航基于.NET平台的Windows编程实战(一)——前言基于.NET平台的Windows编程实战(二)—— 需求分析与数据库设计基于.NET平台的Windows编程实战(四)—— 数据库操作类的编写基于.NET平台的Windows编程实战(五)—— 问卷管理功能的实现基于.NET平台的Windows编程实战(六)—— 题目管理功能的实现 申明:本系列课程是专为新手们写来入门练习用的,目的是想通过一个完整的问卷调查管理系统的案例开发来让新手们了解、加深或是熟悉软件项目的开发流程及在.NET平台上使用VS2005和C# 进行Windows方面的编程;在整个课程的设计上,... 阅读全文

艾伟:关于.NET中的循环引用

2011-08-28 23:55 by 狼人:-), 322 阅读, 0 推荐, 收藏,
摘要:在现在开发模式日益增多,框架泛滥的时代里,人们越来越多的依赖于固有的框架模式的开发而忽略了对项目底层架构的理解。所以在部署项目结构的时候,会遇到“循环引用”这个问题,今天我就遇到了。 其实说起来并不复杂,就是我有5个项目A,B,C,D,E,然后我在项目A中引用了B的类,然后又在B中引用了C的类,最后又在C中引用了A中的类,这就构成了循环引用。 那么碰到这样的问题,怎么解决呢? 解决方案一: 我们考虑创建新的一个项目Z,然后分别添加对A,B,C的引用,这样A,B,C只要引用Z就行了。 解决方案二: 也可以创建一个类库项目,然后将A,B,C,D,E,F... 阅读全文

艾伟:老赵谈IL(3):IL可以看到的东西,其实大都也可以用C#来发现

2011-08-28 23:55 by 狼人:-), 329 阅读, 0 推荐, 收藏,
摘要:在上一篇文章中,我们通过一些示例谈论了IL与CLR中的一些特性。IL与C#等高级语言的作用类似,主要用于表示程序的逻辑。由于它同样了解太多CLR中的高级特性,因此它在大部分情况下依旧无法展现出比那些高级语言更多的CLR细节。因此,如果您想要通过学习IL来了解CLR,那么这个过程很可能会“事倍功半”。因此,从这个角度来说,老赵并不倾向于学习IL。不过严格说来,即使IL无法看出CLR的细节,也不足以说明“IL无用”——这里说“无用”自然有些夸张。但是,如果我们还发现,那些原本被认为需要通过IL挖掘到的东西,现在都可以使用更好的方法来获得,并且可以起到“事半功倍”的效果,那么似乎我们真的没有太多.. 阅读全文

艾伟:基于.NET平台的Windows编程实战(三)—— 项目的创建及主界面的设计

2011-08-28 23:55 by 狼人:-), 158 阅读, 0 推荐, 收藏,
摘要:第一步:创建一个新的Windows项目 打开VS2005,点击“文件”-->“新建”-->“项目”,在弹出的对话框里,在左边选择“Windows”,在右边选择“Windows应用程序”,并在下面的名称里输入“QuestionnaireSystem”,选择相应的保存位置后,点“确定”,如下图3-1所示: 图3-1 这样一个新的Windows项目就创建好了。 另:为了整个系统的操作需要,我们为项目新建二个文件夹:一个是DataBase[用来存放数据库文件],另一个为Images[用来存放用户所要用到图片资源],创建方法为:右击项目名称,选择“添加”à“新建文件夹”;创建好后, 阅读全文

艾伟:基于.NET平台的Windows编程实战(五)—— 问卷管理功能的实现

2011-08-28 23:55 by 狼人:-), 179 阅读, 0 推荐, 收藏,
摘要:本系列文章导航基于.NET平台的Windows编程实战(一)——前言基于.NET平台的Windows编程实战(二)—— 需求分析与数据库设计基于.NET平台的Windows编程实战(四)—— 数据库操作类的编写基于.NET平台的Windows编程实战(五)—— 问卷管理功能的实现基于.NET平台的Windows编程实战(六)—— 题目管理功能的实现 首先,为了使我们的界面更加便于操作及布局,我们引入第三开源控件DockPanel[当然也可以不引入控件而直接进行开发],你可以从这里:DockPanel控件下载其编译好的DLL文件,也可以从这里:http://sourceforge.ne... 阅读全文
上一页 1 ··· 291 292 293 294 295 296 297 298 299 ··· 312 下一页