摘要:
在编码的过程中,对代码重用的追求应该是我们的一个永恒的追求。我们先从相同或相似的代码里提出公用方法,来方便我们的重用;而后,随着面向对象技术的提出,我们又提出父类或基类,在类的基础上对代码进行重用;后来,我们又有了模式这种层次的代码重用,虽然模式不仅仅是为了代码重用,但这也是一个目的;最后,我们又创建了各种框架或架构,来在更高层次的重用代码;展望未来,我们会在元数据、域领域的范围内进行代码的重用。所有这一切,仍然还不能满足我们对代码重用的要求,我们还是会遇到各种各样的代码重用上的烦恼。以下我来简单举出几个我们在编码过程中遇到的实际问题:System.out.println(……);这个方法是我 阅读全文
摘要:
指令名称 : chmod 使用权限 : 所有使用者 使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。 把计 : mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。 + 表示增加权限、- 表示取消权限、= 表示唯一设定权限 阅读全文
摘要:
<?xml version="1.0" encoding="GBK"?> <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.puppycrawl.com/dtds/configuration_1_2.dtd"> <!-- Checkstyle configuration that checks the sun coding conventions from: - t 阅读全文
摘要:
Google Desktop Search默认的索引文件是保存在"c:/Documents and Settings//Local Settings/Application Data/Google/Google Desktop"文件夹中,如果时间长了,里面的索引文件会越来越大,如果系统盘剩余的空间不大,就很影响系统运行速度。为此可以将该文件夹进行转移。具体操作如下:1. 进入注册表HKEY_CURRENT_USER/Software/Google/Google Desktop 2. 将data_dir的值改为你有足够硬盘空间的目录3. 将在c:/中目录Google Desk 阅读全文
摘要:
Mock 方法是单元测试中常见的一种技术,它的主要作用是模拟一些在应用中不容易构造或者比较复杂的对象,从而把测试与测试边界以外的对象隔离开。编写自定义的 Mock 对象需要额外的编码工作,同时也可能引入错误。EasyMock 提供了根据指定接口动态构建 Mock 对象的方法,避免了手工编写 Mock 对象。本文将向您展示如何使用 EasyMock 进行单元测试,并对 EasyMock 的原理进行分析。1.Mock 对象与 EasyMock 简介单元测试与 Mock 方法单元测试是对应用中的某一个模块的功能进行验证。在单元测试中,我们常遇到的问题是应用中其它的协同模块尚未开发完成,或者被测试模块 阅读全文
摘要:
jquery在ajax方面是非常强大和方便的,以下是jquery进行ajax请求时方法模板:$.ajax({ type: "get", url: "", data : {}, beforeSend : function(){}, success : function(data){}, complete : function(){}});jquery的ajax方法的全部全局事件:ajaxStart:ajax请求开始前ajaxSend:ajax请求时ajaxSuccess:ajax获取数据后ajaxComplete:ajax请求完成时ajaxError:aj 阅读全文
摘要:
影响JavaScript性能的另外一个杀手就是递归,在上一节中提到采用memoization技术可以优化计算数值的递归函数,但 memoization不是万能的,不是所有的递归函数都可以用memoization技术优化,本文介绍了这些情况,并介绍了解决办法,就是将递归转换为迭代,同时需要注意,本文末尾介绍的方案不是最终的方案,还需要和上一节优化循环的方案综合起来才能达到最佳效果。【原文】Speed up your JavaScript, Part 3【作者】Nicholas C. Zakas【译文】http://cuimingda.com/2009/02/speed-up-your-javas 阅读全文
摘要:
在Web开发中,JavaScript的一个很重要的作用就是对DOM进行操作,可你知道么?对DOM的操作是非常昂贵的,因为这会导致浏览器执行回流操作,而执行了过多的回流操作,你就会发现自己的网站变得越来越慢了,我们应该尽可能的减少DOM操作。本文是这个系列的最后一篇,给出了一些指导性原则,比如在什么时候应该对DOM可以进行什么样的操作等。【原文】Nicholas C. Zakas - Speed up your JavaScript, Part 4【译文】明达 - 如何提升JavaScript的运行速度(DOM篇)以下是对原文的翻译:在过去的几周中,我为大家介绍了几种可以加快JavaScript 阅读全文
摘要:
根据Nicholas的说法,有四种代码会拖慢脚本的运行,并最终导致脚本失控。分别是次数过多的同步循环、庞大的函数体、不恰当的递归和不合理的DOM调用。这篇着重讲第一个原因。最后给出了一个开发模式,替换传统的循环结构,可以完全避免脚本失控的状况发生。原文标题:Speed up your JavaScript, Part 1原文作者:Nicholas C. Zakas在我 上一篇帖子(译文)中,谈到了各个浏览器究竟会在什么情况下弹出脚本失控提示,对于Internet Explorer来说,当浏览器执行了数量过多的语句时就会停止执行脚本,而其他的浏览器,则是持续执行脚本超过一定时间的时候就会给出提示 阅读全文
摘要:
这篇是Nicholas讨论如果防止脚本失控的第二篇,主要讨论了如何重构嵌套循环、递归,以及那些在函数内部同时执行很多子操作的函数。基本的思想和上一节trunk()那个例子一致,如果几个操作没有特定的执行顺序,而且互相不是依赖关系,我们就可以通过异步调用的方式加以执行,不止可以减少执行的次数,还可以防止脚本失控。本文还介绍了通过memoization技术取代递归的方法。【原文标题】Speed up your JavaScript, Part 2【原文作者】Nicholas C. Zakas以下是对原文的翻译:上周我在《too much happening in a loop》(译文:如何提升Ja 阅读全文