HG使用备忘录(三)
前面的两节简要地记录了使用hg命令的一些注意事项,并提到了文件merge的一些知识,这一节将回顾使用hg来添加、删除、复制文件的一些操作。
在项目推进的过程中,经常会出现两个人共同修改一个文件的情况。这个时候,我们就要进行代码合并。如果文件不存在冲突,合并将非常顺利。如果文件存在冲突,合并代码就相对要麻烦一些。本文将对代码合并作一些简要的回顾。
对于项目开发来说,源代码的管理是一项不可小视的工作。而管理好源代码,自然少不了管理工具。本文记录我在使用hg时记录的笔记,希望对初次使用hg的朋友能有所帮助。
不知道如何翻译它,只好直接用它作为标题。在《Hight Performance Javascript》一书中对此有过描述,详情可查看本书,这里只对此做一个简单描述。该技巧适用于以下场景: 只关注数据是否被发送到服务器,客户端对该请求是否做出响应无关紧要。在对站点数据进行分析时,这种技巧正可大行其道。即: var url = ‘/status_tracker.php’; var params = [ 'step=2', 'time=1248027314' ]; (new Image()).src = url + ‘?’ + params.join(‘&’); 同样,你可以监听Image的load事件来确定数据是否发送成功。 var url = ‘/status_tracker.php’; var params = [ 'step=2', 'time=1248027314' ]; var beacon = new Image(); beacon.src = url + ‘?’ + params.join(‘&’); beacon.onload = function() { if (this.width == 1) [...]
在前端开发中,经常会出现一些bug。其实这些 bug背后包含很多东西。一旦你彻底弄清bug的实质之后,你会收获很多,本文只是想告诉你。bug来了,别怕,学会分析,学会思考。
UglifyJS是一个对javascript进行压缩和美化的工具,在它的文档说明中,我看到了几种关于if语句优化的方法。尽管我还没使用它去做一些尝试性的测试,但从这里可以看到它的确对js作了美化的工作。也许有人认为if语句就那么简单,能优化到什么程度?但是看看以下的几种方式,你也许会改变看法。 一、使用常见的三元操作符 if (foo) bar(); else baz(); ==> foo?bar():baz(); if (!foo) bar(); else baz(); ==> foo?baz():bar(); if (foo) return bar(); else return baz(); ==> return foo?bar():baz(); 对于以上使用三元操作符来优化if语句你肯定不会陌生,或许你经常使用它。 二、使用and(&&)和or(||)运算符 if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar(); 老实说,我并没有这样去写过代码,这种写法我在学习《鸟哥的 Linux 私房菜》时看到过,但我并没想到在js中实现它。 三、省略大括号{} if (foo) return bar(); else something(); ==> {if(foo)return bar();something()} 这种写法你我都很熟悉,但我建议在代码优化的时候这样做,或者交给UglifyJS帮你去解决。毕竟少一个大括号,代码的可阅读性并不高。 写到这里,我想到jQuery之父在《精通 JavaScript》中的一个获取HTML元素属性的方法。 function [...]
2010年走过的时候,我的朋友们忙着写年终总结,并开始新年的规划。而我没有,尽管过去的一年发生了太多事,但在这一年里,我觉得我并没有太多的收获。2010年,我唯一感觉到真实的是——我懒散了许多,对生活的激情明显少了许多,这也许是人到中年的一个信号。整个春节期间,我什么也没做。倒是我的那些朋友们,一如既往的追寻自己的梦,他们的那份激情,使我汗颜。在这样的朋友身边,你也不得不审视自己的过去,开始新的征程。2011年,我只有一句话——在思考和探求中稳步前行。而眼下,我正在读《寒山诗注》,那么就从此书带给我的心境开始新的探求之路。
最新评论