代码库更新的障碍【笔记】
2014-10-24 13:21
134 查看
前言:
1、代码库这里重点指现在或者未来被广泛复用的代码库
2、代码这里重点指像js这样的动态语言(C#和Java不存在本文提到的问题)
以js为例,
可以给原生对象或代码库对象扩展功能,利用prototype特性。
Array现在(2014年)没有Sort函数,你现在可以给他扩展,Array.prototype.Sort=function(p1,p2){}
假设相关协议在三年后(2017年)发布标准说,Array有一个Sort的函数并且只有一个参数。那么你的项目在2017年的时候势必出现bug。
目前typeof null=='object'
如果未来有一天修复了这个bug,势必项目会出现Bug。
所以,我们能做的是有两点,第一不要扩展原生对象和库对象;第二应用公共规范
1、代码库这里重点指现在或者未来被广泛复用的代码库
2、代码这里重点指像js这样的动态语言(C#和Java不存在本文提到的问题)
以js为例,
可以给原生对象或代码库对象扩展功能,利用prototype特性。
Array现在(2014年)没有Sort函数,你现在可以给他扩展,Array.prototype.Sort=function(p1,p2){}
假设相关协议在三年后(2017年)发布标准说,Array有一个Sort的函数并且只有一个参数。那么你的项目在2017年的时候势必出现bug。
目前typeof null=='object'
如果未来有一天修复了这个bug,势必项目会出现Bug。
所以,我们能做的是有两点,第一不要扩展原生对象和库对象;第二应用公共规范
相关文章推荐
- Emacs笔记——配置篇(不断更新中)
- 没头没尾--项目开发笔记:如何开发代码更新工具?!(下)
- php dom function 笔记(随时更新)
- 用ado.net进行分布式程序设计更新数据库(学习笔记)
- (更新中)JavaScript学习笔记
- wpf学习笔记-更新数据源
- JavaScript学习笔记已经更新完毕
- 3D学习笔记之一句话总结(不断更新中)
- [笔记]使用 .NET 和后台智能传输服务 API 来编写自动更新应用程序
- 没头没尾--项目开发笔记:如何开发代码更新工具?!(上)
- Scott Mitchell 的ASP.NET 2.0数据教程之应用笔记(12.1更新)
- 我的C#笔记……更新中
- 关于c++的学习情况,不再更新了,因为找到了更好的笔记记录工具
- [ITIL学习笔记]ITIL问题集(不断更新中)
- Gentle.Net学习笔记三:常用更新数据的方法总结
- [原创]Java最佳实践笔记。(不断更新)
- Oracle 10g使用笔记(不断更新中...2006年9月15日)
- Java 基础学习笔记(持续更新中)
- Ubuntu常见问题(持续更新) - [技术笔记][zt]
- 《WF编程》系列之17 - 工作流与外部事件:工作流参数 居然有两个多月没有更新WF笔记,这段时间也许真的太忙了,毕业的事情,工作的事情,从今天起继续更新.