代码不仅仅考虑性能

今天阅读opencv2.0手册的时候,看到一句话,很有感触:

Unless
you are targeting embedded platforms, there’s no point to using the old
methods

(unless
you’re a masochist programmer and you’re asking for trouble).

如果没有操作底层硬件的需求,我们完全不必从那么细节的角度思考如何programming。考虑更多宏观的方法,专注于解决问题本身。

项目组做了一个渲染引擎,最初一代作者花了很多心思在利用底层的方法加速代码的运作速度(比如宏,利用宏展开代替函数,节省调用栈的开销;借用大量的位操作符),但这同时带来了一定程度上的封装困难和模块之间关联度的紧密的问题。这些问题,带给后续的开发者和维护者很多困扰,这些困扰带给了他们不理解系统运作的前提下就编写新功能。在这样的情境下添加的新功能可能会BUG倍出,结果与最初的设想大相径庭的情况。以至于有师兄想实现新功能的时候,问导师可不可以不在我们自己的引擎中实现=
=!

利用最精简的代码,写出最高效的程序(less
to write, to achieve
more
),似乎是我们每一个程序员的终极目标。但有时候,我们可能需要牺牲那么一点性能,让代码多一点阅读性、可维护性、扩展性。

代码不仅仅考虑性能

时间: 2024-10-04 01:27:37

代码不仅仅考虑性能的相关文章

OutputCache缓存优化asp.net代码 提高网页性能

对于asp.net编写的网页来说,使用缓存是一种非常重要也是很常用的优化技术,它可以大大减轻服务器的负载压力,优化这些网页的性能,在网与使用 .NET Framework 的任何其他功能相比,适当地使用缓存可以更好地提高站点的性能.同时,在网页加速显示上也起了很大的作用. OutputCache以声明的方式控制 ASP.NET 页或页中包含的用户控件的输出缓存策略. 语法: <%@ OutputCache Duration="#ofseconds"   Location=&quo

如何书写高质量jQuery代码(使用jquery性能问题)

1.正确引用jQuery 1.尽量在body结束前才引入jQuery,而不是在head中.2.借助第三方提供的CDN来引入jQuery,同时注意当使用第三方CDN出现问题时,要引入本地的jQuery文件.(对于已经使用了cdn的网站可以忽略,现在用户带宽都升级了,这个可以忽略了,放别人机器不一定稳定)3.如果在</body>前引入script文件的话,就不用写document.ready了,因为这时执行js代码时DOM已经加载完毕了. ? 1 2 3 4 <body>  <s

JavaScript代码规范和性能整理

性能 Js在性能方面有多要注意的地方: 避免全局查找 Js性能优化最重要的就是注意全局查找,因为作用域的查找是先找局部作用域在没有找到之后在去上一级作用域查找直到全局作用域,所以全局作用域查找的性能消耗肯定要比本函数局部作用域的消耗大.举个例子: function setInnerHtml(){ var divDom=doucument.getElementsByTagName("div"); for(var i=0,len=divDom.lemgth;i<len;i++){ d

NodeJS的代码调试和性能调优

NodeJS 自 2009 年显露人间,到现在已经六个年头了,由于各种原因,中间派生出了个兄弟,叫做 iojs,最近兄弟继续合体,衍生出了 nodejs4.0 版本,这东西算是 nodejs new 1.0 版本,原班人马都统一到一个战线上.我没有太关注 nodejs 背后的开发,但一直是它的忠实使用者,通读了 v4.1.2 的 文档,感觉从开发者角度去看,也没啥大的变化,所以这两个兄弟分开这么久,主要是在底层内建模块上做改造,上层建筑尚未有大的变更,具体可以看 这篇文章. 如果你一直用着 no

xhprof代码添加分析性能

<?php xhprof_enable( XHPROF_FLAGS_MEMORY, [ 'ignored_functions' => [ //'call_user_func', //'call_user_func_array' ] ] ); //逻辑代码 //...... $xhprofData = xhprof_disable();// $xhprofData是数组形式的分析结果 require '../xhprof_lib/utils/xhprof_lib.php'; require '.

飘逸的python - 使用dis模块进行代码层次的性能剖析

dis - Disassembler for Python bytecode,即把python代码反汇编为字节码指令. 使用超级简单:python -m dis xxx.py 当我在网上看到while 1比while True快的时候,我感到很困惑,为何会有这种区别呢? 于是使用dis来深入. 假设est_while.py代码如下. #coding=utf-8 while 1: pass while True: pass 下面是使用dis来进行剖析. E:\>python -m dis test

如何依靠代码提高网络性能

我们可以通过减少文件大小和本地缓存来达到减少http请求,从而提高响应速度. 下面几个方法可以达到这个目的: 1).尽量减少对http提出请求,减少对图片的加载:可以用css Sprites(精灵)合成图片,根据位置大小确定具体使用图片. 2).使用CDN(CDN:将源站内容分发至最接近用户的节点,使用户可就近取得所需内容,提高用户访问的响应速度和成功率.解决因分布.带宽.服务器性能带来的访问延迟问题,适用于站点加速.点播.直播等场景)存放静态网页: 3).把样式文件放在网站<head>部分:

Android 插件应用与,代码检查与性能分析

修改一行代码提升 Postgres 性能 100 倍

http://www.datadoghq.com/2013/08/100x-faster-postgres-performance-by-changing-1-line/ SELECT c.key,       c.x_key,       c.tags,       x.name FROM context c JOIN x   ON c.x_key = x.keyWHERE c.key = ANY (ARRAY[15368196, -- 11,000 other keys --)])  AND