Atiitt 提升复用性之道  项目成本之道

Atitit 代码复用的理解attilax总结

1. 复用分类 1

1.1. 类库侧重代码重用,框架侧重设计重用 2

2. 文档与索引体系 2

3. 模块化 模块体系化 功能体系化 2

4. 标准化 接口标准化 元数据标准化 2

5. API提供了一种代码复用的机制。webapi 2

6. 类库机制 2

7. 代码复用性提升 2

7.1. 继承 2

7.1.1. 模式1:原型继承 2

7.1.2. 模式2:复制所有属性进行继承 拷贝继承 2

7.1.3. 模式3:混合(mix-in) 2

7.1.4. 模式4:借用方法 3

7.2. 组合 3

8. 其他 3

8.1. Include import 3

8.2. Cfg 3

8.3. 良好的复用和不良的复用 3

8.4. 可复用组件的 5 种类型  代码块 Code Block算法 模式   数据类型 库 4

8.5. 2. 算法 Algorithm算法在本质上只是思路 4

9. 参考资料 4

1. 复用分类

1.1. 类库侧重代码重用,框架侧重设计重用

2. 文档与索引体系

3. 模块化 模块体系化 功能体系化

4. 标准化 接口标准化 元数据标准化

5. API提供了一种代码复用的机制。webapi

6. 类库机制

7. 代码复用性提升

7.1. 继承

7.1.1. 模式1:原型继承

7.1.2. 模式2:复制所有属性进行继承 拷贝继承

7.1.3. 模式3:混合(mix-in)

混入就是将一个对象的一个或多个(或全部)属性(或方法)复制到另外一个对象,我们举一个例子

7.1.4. 模式4:借用方法

一个对象借用另外一个对象的一个或两个方法,而这两个对象之间不会有什么直接联系

7.2. 组合

8. 其他

8.1. Include import

8.2. Cfg 

8.3. 良好的复用和不良的复用

良好的复用帮助我们编写更好的程序,并且提高程序的编写速度。不良的复用可能短时间内帮助我们借用其他程序员的思维,但最终会导致不良的开发。下面表格对它们之间的区别进行了总结。

左边一列显示了良好复用的属性,右边一列显示了不良复用的属性。在考虑是否对代码进行复用时,要考虑它很可能会产生左边一列的属性还是右边一列的属性。

8.4. 可复用组件的 5 种类型  代码块 Code Block算法 模式   数据类型 库

8.5. 2. 算法 Algorithm算法在本质上只是思路

1. 模式 Pattern

2. 4. 抽象数据类型 Abstract Data Type

3. 5. 库 Library

 

9. 参考资料

 

完整版:资深程序员都了解的代码复用法则.htm

深入理解JavaScript系列(46):代码复用模式(推荐篇) - 汤姆大叔 - 博客园.htm

 

库和工具包与框架有何不同?

库和工具包侧重代码重用,框架侧重设计重用。库和工具包从微观上解决具体问题,为程序员带来自由的;框架是从宏观上控制软件整体的结构和流程,为程序员带来约束的。框架是通过控制反转(IoC)机制反客为

 

 

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon Al Rapanui

埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门  阿尔 拉帕努伊

常用名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

转载请注明来源:attilax的专栏   http://blog.csdn.net/attilax

--Atiend

 

 

 

Atiitt 提升复用性之道 项目成本之道 Atitit 代码复用的理解attilax总结 1. 复用分类 1 1.1. 类库侧重代码重用,框架侧重设计重用 2 2. 文档与索引体系 2 3相关推荐

  1. elasticsearch——海量文档高性能索引系统

    elasticsearch elasticsearch是一个高性能高扩展性的索引系统,底层基于apache lucene. 可结合kibana工具进行可视化. 概念: index 索引: 类似SQL中 ...

  2. ElasticSearch入门系列(三)文档,索引,搜索和聚合

    一.文档 在实际使用中的对象往往拥有复杂的数据结构 Elasticsearch是面向文档的,这意味着他可以存储整个对象或文档,然而他不仅仅是存储,还会索引每个文档的内容使之可以被搜索,在Elastic ...

  3. 第六讲:BBdoc软件版本升级与文档内容索引更新操作

    第六讲:BBdoc软件版本升级与文档内容索引更新操作

  4. 缺陷管理-基于企业微信文档设计的一个缺陷管理文档

    基于企业微信文档设计的一个缺陷管理文档 虽然禅道.jira很好用,但对于开发周期较短的项目,将项目部署到禅道或jira中会有些许繁琐(老板讲的,不是我认为的).既然无法要求团队使用什么工具,那就改变自 ...

  5. Effective Java 类和接口 第17条:要么为继承而设计,并提供文档说明,要么就禁止继承

    第16条提醒我们,对于不是为了继承而设计,并且没有文档说明的"外来"类进行子类化是多么危险.那么对于专门为了继承而设计并具有良好文档说明的类而言,这有意味着什么呢? 该类的文档必须 ...

  6. php网站设计文档,企业门户网站设计与实现(word文档)最新版

    <企业门户网站设计与实现.doc>由会员分享,可免费在线阅读全文,更多与<企业门户网站设计与实现(word文档)>相关文档资源请在帮帮文库(www.woc88.com)数亿文档 ...

  7. java计算机毕业设计高原特色农产品网站设计MyBatis+系统+LW文档+源码+调试部署

    java计算机毕业设计高原特色农产品网站设计MyBatis+系统+LW文档+源码+调试部署 java计算机毕业设计高原特色农产品网站设计MyBatis+系统+LW文档+源码+调试部署 本源码技术栈: ...

  8. java毕业设计旅游网站设计源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计旅游网站设计源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计旅游网站设计源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技术栈: 项目 ...

  9. 复古像素风游戏设计之:需求文档

    复古像素风游戏设计之:需求文档 引言 在这个流行运用3D建模重现现实世界.使用大量精美贴图渲染视觉效果的游戏时代,或许大多数人会被那些震撼逼真的场景设定所吸引,而习惯性的对那些画面略显粗糙的游戏嗤之以 ...

  10. java计算机毕业设计车辆保险平台系统研究与设计MyBatis+系统+LW文档+源码+调试部署

    java计算机毕业设计车辆保险平台系统研究与设计MyBatis+系统+LW文档+源码+调试部署 java计算机毕业设计车辆保险平台系统研究与设计MyBatis+系统+LW文档+源码+调试部署 本源码技 ...

最新文章

  1. Java socket调用Http协议Get请求
  2. linux定位so快捷方式_Linux动态库(.so)搜索路径 | 学步园
  3. JAVA两类比较器的区别(Comparable,Comparator)
  4. aop注解配置切点 spring_Spring通过自定义注解灵活配置AOP切点
  5. 【离散数学】论域和客体函数的区别
  6. apache apr介绍
  7. element-ui多选框模糊搜索输入文字闪动问题
  8. Java NIO学习笔记 三 散点/收集 和频道转换
  9. Android学习笔记(十七)——使用意图调用内置应用程序
  10. 华为模拟器 ENSP 教程
  11. (附源码)小程序 记账微信小程序 毕业设计 180815
  12. Energyplus运行提示缺失.OCX文件的解决方法
  13. 在输入框输入时限制输入框只能输入正整数以及两位小数正则表达式
  14. Android studio:select process to attach to...找不到debug调试的目录
  15. # USACO@2020铜级赛第二题
  16. 不是maf格式的somatic突变数据就没办法读入到maftools了么
  17. 抖音拍摄脚本怎么写,掌握这几点快速拍摄爆款视频丨国仁网络资讯
  18. python 召回率_使用sklearn获取精确性和召回率
  19. 射频(RF)一些参数小记
  20. 导航电子地图数据存储标准NDS中文版和英文版

热门文章

  1. linux18.04系统下载,Lubuntu 18.04-desktop-amd64
  2. 天津农学院计算机科学与技术在那个校区,天津农学院有几个校区及校区地址
  3. EDMA - DMA QDMA
  4. Python之迭代器(iterator)
  5. 求高人指点此分页存储过程怎么样?
  6. cocos2d里面如何实现mvc系列
  7. 转 常用C#正则表达式收集。
  8. 我的double array trie
  9. 用批处理开启或关闭windows 服务
  10. 空间数据库学习笔记(四):空间引用标识符(SRID)