博文

(翻译)20种贴士用来改善ASP.NET应用程序的执行效率(2007-09-04 22:55:00)

摘要:不是一名.net开发人员
你是否是一名.net开发人员?假如你担心,我们拥有类似Ruby,PHP以及其他开发人员的职位。如果你是一名.net开发人员,那听一下吧!
为获得大量收益而准备
当你开发你的应用程序的时候,有些东西你应该考虑清楚 。我已经为ASP和ASP.NET工作超过12年了,得知避免以及大量地采取改善你应用程序效率的措施!以下是我的改善ASP.NET应用程序执行效率的20种贴士。
1.禁用Session State
       如果你不打算使用它,那禁用Session State吧。它是以缺省的方式打开着的,你其实可以为指定的页面关掉它,而不是所有的页面:
        <%@ Page language="c#" Codebehind="WebForm1.aspx.cs"
AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
EnableSessionState="false" %>        你也可以在web.config文件中设置<sessionState>模式值为off来禁用它跨应用程序。 2.输出缓冲
         利用这一大特点,基本上成批处理你所有的在服务器上的工作,然后运行Response.Flush方法来输出数据。这样做避免放出来回与服务器交互。
             
<%response.buffer=true%> 然后使用: <%response.flush=true%> 3.避免服务器端校验
          尝试使用客户端校验......

阅读全文(2608) | 评论:0

详细解释javascript继承原理(2007-09-04 00:52:00)

摘要:目前 javascript的实现继承方式并不是通过“extend”关键字来实现的,而是通过constructor function和prototype属性来实现继承。首先我们创建一个animal类
js 代码    var  animal= function(){  //这就是constructor function 了 
   this.name = 'pipi';        this.age = 10;          this.height = 0;       }        //建立一个动物的实例      var a1 =  new animal ();   
构造函数与其他普通函数区别在于,1.构造函数里有 this关键字,2.调用构造函数是使用的new关键字。通过new运算符调用构造函数animal 后,系统就会返回一个对象,这个对象就相当于
js 代码 var a1 = { name:'pipi' ,age:10,height:0 }      //或者   var a1 = new Object();   a1.name='pipi';   a1.age = 10;   a1.height = 0;&......

阅读全文(3471) | 评论:0

实例学习JSON(2007-09-03 22:05:00)

摘要:前面我已经介绍过what is json,下面我通过实例来学习在客户端结合javascript调用JSON的例子. 首先在JSON官方网站提供的一个开源的JSON解析器和字符串转换器:json.js. 根据json.js解释文档可以知道:         array.toJSONString(whitelist)
        boolean.toJSONString()
        date.toJSONString()
        number.toJSONString()
        object.toJSONString(whitelist)
        string.toJSONString()    上面6个函数可以产出json文本,这不必包括任何周期性参数,非法值会被排除.date的缺省转换是一个ISO字符串.你能够添加toJSONString()函数到任何date对象来获得不同的呈现.object和array函数包含whitelist参数选项,whitelist是一个字符串数组,如果它被提供的话,那么在whitelist中没有找到在Objects的keys会被排除.    string.parseJSON(filter)这个函数解释json文本来产生对象和数组,它能够抛出语法错误的异常.选项filter参数具有过滤和转换结果的功能,它能够接受每一个键和值,它能够返回被使用的值代替原来的值.如果它返回接收的东西,那么结构会被修改,如果返回undefined(未定义)的话,则成员会被删除.   例子:   //解释文本,如果键包含字符串为'date',那么转换该值为日期.   &n......

阅读全文(2895) | 评论:0

初步了解JSON(2007-09-03 20:28:00)

摘要:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 JSON建构于两种结构:
“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。 JSON具有以下这些形式: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。 字符串(string)与C或者Java的字符串非常相似。 数值(number)也与C或者Java的数值非常相似。除去未曾使用的......

阅读全文(1805) | 评论:0

<<javascript高级程序设计教程>>简介及下载(2007-09-01 23:22:00)

摘要:当您从书架上拿出这本书的时候,我想您肯定对Ajax技术有着浓厚的兴趣,而本书也正是您的正确选择。本书的作者Nicholas C. Zakas用通俗易懂的语言,将JavaScript的诞生、现在的状况、未来的发展和与其紧密相关的各种技术一一详尽地叙述出来,刚学JavaScript的朋友,可以按部就班成为高手,而已经是高手的朋友,则可以将本书作为参考手册。 第1章讲述了JavaScript的起源,给大家一个关于JavaScript正确的认知。 第2~5章详细介绍了JavaScript语言本身,揭示了一些JavaScript不为认知的语言特点。 第6~9章介绍了JavaScript和浏览器进行交互的一些基础知识和一些进阶知识,如DOM的基础、正则表达式。 第10~13章介绍了一些更加高级的JavaScript技巧,这些技巧可以构建良好的客户端逻辑,包括表格排序、拖动等。 第14章关于错误处理的内容,既有如何编程处理JavaScript错误,也包含了如何调试JavaScript的方法,而调试一直是JavaScript的弱项。 第16、17章讲述了利用JavaScript进行客户端到服务器的同学,不仅仅介绍了现在的Ajax技术的基础XML HTTP Request,还介绍了曾经出现过的一些方法。第17章更明确的介绍了如何调用Web服务。 第19章,介绍了如何考虑生产环境中JavaScript所需要注意的一些事情,如安全性、性能等。 第20章,展望了JavaScript未来的发展。 本书除了介绍了JavaScript的各个方面外,更难得的是,作者更涵盖了现今各个流行浏览器之间在这些方面的区别,并帮助读者,解决这些问题。 本书第1~5章由张欣翻译,第6~20章由曹力翻译,全书由张欣统稿、润色及审校。还要感谢全体工作人员的努力才将本书完成。 我们深深地感我们的家人和朋友。在翻译过程中,他们给予了我们莫大的关心、支持和帮助。 限于我们的水平,翻译过程中的疏漏和错误再作难免,请广大读者批评指正。 曹力
2006年于东南大学 目录第1章 JavaScript是什么 1 1.1 历史简述 1 1.2 JavaScript实现 2 1.2.1 ECMAScript 3 1.2.2 DOM 5 1.2.3 BOM 8 1.3 小结 8......

阅读全文(5631) | 评论:0

iPhone"越狱"(2007-09-01 12:33:00)

摘要:从6月29日iPhone出世到8月29日中国上市,刚两个月,黑客们就?#24403;惊世界殊?#20102;一把。当那个17岁的美国男孩霍茨开着尼桑350Z跑车兜风时,iPhone已经在北京的犄角旮旯与淘宝上火热叫卖了。     要怪就怪乔布斯,谁让他满世界吹风,让?#33529;果迷?#28316;溜傻等不说,结果还点燃了黑客们心中的火,乔治?#38669;茨就是其中一个。这位被AP誉为?#23569;年黑客?#30340;家伙还是个17岁的高中生,但已经是?#25319;门撬锁?#30340;老手了,不过500个小时,他就麻利地开了iPhone这把锁。他的方法是将手机拆开,找到其中的固件程序,使其摆脱单一的AT&T网络。他还扬言随便来台新iPhone,1小时搞定,并表示可以带徒弟,12小时一准出师,少年轻狂啊!不过,霍茨的做法有法律保底,所以根本没惹上什么官司。美国1998年颁布的有关数码产品的版权法中有?#20801;许个人将手机解码?#30340;说法。而且,霍茨深谙此道,此前他曾因设计3D图像播放器,荣获由INTEL的2万刀大奖。在他的窝里摆满了烙铁、木板条等各种实验用具,非常具有专业性。破解之后,肯塔基一手机维修公司买了他的iPhone,并用一辆尼桑牌350Z型跑车和3部8G内存的新iPhone作为交换,同时还给他留了带薪的顾问职位。尼桑350Z靠这次买卖做了次活广告,那些《变形金刚》中跟雪佛兰一起变形未来的家伙们,如今也开始把目光锁定在这款3万刀的新跑车上。     无独有偶,前有美国黑客明目张胆地破解,后有偷渡的iPhone破解版在北京低调上岸。木樨园桥西南侧?#32418;兴通讯广场敂的摊位上美国的水货iPhone开价7500元,据说是美国?#21351;底?#24102;来的,破解一个买一个,供不应求。国内黑客采用的方法是首先插入一块AT&T的SIM卡激活手机,然后将AT&T的SIM卡和国内网络SIM卡部分内容复制到同一张空的SIM卡中。?#24320;机检测的时候,iPhone会认为手机里就是一张AT&T的SIM卡,但是在检测网络的时候,实际上程序已经在寻找国内的网络了。?#32780;iPhone没有中文系统的问题,则靠一个插件程序解决,?#22......

阅读全文(2130) | 评论:0

精通css-高级web标准解决方案(2007-08-26 15:52:00)

摘要:本来有一本<<精通css-高级web标准解决方案>>做成的pdf文件,它的大小需要46.3MB.上传到空间测试(http://test2008-1.at.vwdhosting.net)一下不能下载,郁闷!!!现在唯有将其中的一部分英文版上传到我新开的空间,测试一下可以下载.下载地址:http://www.box.net/shared/1qnfotem1q.如果有哪位朋友需要<<精通css-高级web标准解决方案>>中文版pdf文件的话,可以联系一下我!......

阅读全文(2624) | 评论:2

理解REST软件架构(2007-08-25 13:39:00)

摘要:一种思维方式影响了软件行业的发展。REST软件架构是当今世界上最成功的互联网的超媒体分布式系统。它让人们真正理解我们的网络协议HTTP本来面貌。它正在成为网络服务的主流技术,同时也正在改变互联网的网络软件开发的全新思维方式。AJAX技术和Rails框架把REST软件架构思想真正地在实际中很好表现出来。今天微软也已经应用REST并且提出把我们现有的网络变成为一个语义网,这种网络将会使得搜索更加智能化。 REST与HTTP协议 REST软件架构是由Roy Thomas Fielding博士在2000年首次提出的。他为我们描绘了开发基于互联网的网络软件的蓝图。REST软件架构是一个抽象的概念,是一种为了实现这一互联网的超媒体分布式系统的行动指南。利用任何的技术都可以实现这种理念。而实现这一软件架构最著名的就是HTTP协议。通常我们把REST也写作为REST/HTTP,在实际中往往把REST理解为基于HTTP的REST软件架构,或者更进一步把REST和HTTP看作为等同的概念。 今天,HTTP是互联网上应用最广泛的计算机协议。HTTP不是一个简单的运载数据的协议,而是一个具有丰富内涵的网络软件的协议。它不仅仅能够对于互联网资源进行唯一定位,而且还能告诉我们对于该资源进行怎样运作。这也是REST软件架构当中最重要的两个理念。而REST软件架构理念是真正理解HTTP协议而形成的。有了REST软件架构理念出现,才使得软件业避免了对HTTP协议的片面理解。只有正确的理论指导,才能避免在软件开发的实际工作过程中少走弯路。 REST与URI(资源定位) REST软件架构之所以是一个超媒体系统,是因为它可以把网络上所有资源进行唯一的定位,不管你的文件是图片、文件Word还是视频文件,也不管你的文件是txt文件格式、xml文件格式还是其它文本文件格式。它利用支持HTTP的TCP/IP协议来确定互联网上的资源。 REST与CRUD原则 REST软件架构遵循了CRUD原则,该原则告诉我们对于资源(包括网络资源)只需要四种行为:创建(Create)、获取(Read)、更新(Update)和销毁(DELETE)就可以完成对其操作和处理了。其实世界万物都是遵循这一规律:生、变、见、灭。所以计算机世界也不例外。这个原则是源自于我们对于数据库表的数据操作:insert(生)、......

阅读全文(1841) | 评论:0

Prototype 1.6 RC版发布了(2007-08-25 12:57:00)

摘要:Prototype 1.6 RC版包括了DOM Builder和Event API检查 这个月初,Prototype团队发布了版本号为1.6.0的第一个的RC版。该版本包括了许多核心API更新、错误修正以及新增特征。其中比较重要的: 增强事件(Event)API 过去使用Event.oberver或Element#observe登记的事件处理器现在将自动地绑定到事件的目标元素(在所有浏览器中)上 事件对象现在扩展了一组实例方法。 针对Event.stopObserving和Element#stopObserving的事件名及处理器参数现在是可选的 Prototype现在支持定制事件 我们已经为DOMContentLoaded事件内建了跨浏览器支持 增强函数(Function)API Function#wrap提取面向方面编程的精华到一个单个方法中 Function#curry允许partial function(译注:指定部分函数的参数,在使用时再提供另一部分参数)应用 Function#methodize封装了将函数的第一个参数转变成this值的模式 Function#argumentNames返回一个字符串数组,它代表函数的命名参数 Function#delay提供了一个对window.setTimeout方便的包装 增强类(Class)API Class.create现在支持三种可选的调用形式 新的Class.extend方法工作起来象Object.extend 如果你要覆盖来自父类的一个方法,你现在可以通过指定所覆盖函数的第一个参数为$super来访问父类方法 类现在有了constructor、superclass和subclasses属性 增强Ajax API 现在你可以以JavaScript对象来访问JSON响应体 传输对象本身现在被Prototype包装起来了 DOM API Enhancements Prototype现在有一个新的引以为傲的跨浏览器DOM Builder 我们已经摒弃了Insertion对象和Position名字空间 Element#update和Element#replace现在也都接受DOM elemen......

阅读全文(2384) | 评论:0

web标准让我重新审视网页设计(2007-08-25 02:00:00)

摘要:     web标准让我重新开始审视网页设计,以前喜欢设计网页,但往往缺乏书写需求分析的习惯,网页如何设计?使用table layout 或者css layout呢?一开始学做网页的时候,都从比较简单的table layout来设计网页的布局,然后书写简单的css来渲染整个网页.外国web标准已经盛行多年,况且外国已经有学校开设这样的课程.如何设计富有web标准气息的网页呢?在这一层面上,本人还在不断地学习与研究!今后网页的工作主要应用css layout,待续............

阅读全文(2031) | 评论:1