atitit 软件框架类库设计的艺术.docx

目录

1. index 1

2. 第2章 设计api的动力之源 14 2

2.1. .1 分布式开发 14 2

2.2. 2.2 模块化应用程序 16 2

3. 第4章 兼容性 42 2

3.1. 4.2.1 源代码兼容 43 2

3.2. 4.2.2 二进制兼容 44 2

3.3. 4.2.3 功能兼容——阿米巴变形虫效应 50 2

3.4. 反射解决兼容性 2

4. 第6章 面向接口而非实现进行编程 85 3

5. 第7章 模块化架构 98 3

6. 第12章 声明式编程 223 3

7. 常用扩展性方法提升 4

7.1. 函数回调 4

7.2. Map参数 4

  1. index

第1章 软件开发的艺术 4

第2章 设计api的动力之源 14

第3章 评价api好坏的标准 26

第4章 不断变化的目标 42

第5章 只公开你要公开的内容 67

第6章 面向接口而非实现进行编程 85

第7章 模块化架构 98

第8章 设计api时要区分其目标用户群 129

第9章 牢记可测试性 147

第10章 与其他api协作 158

第11章 api具体运行时的一些内容 184

第12章 声明式编程 223

第13章 极端的意见有害无益 236

第14章 api设计中的矛盾之处 247

第15章 改进api 258

第16章 团队协作 286

第17章 利用竞赛游戏来提升api设计技巧 300

第18章 可扩展visitor模式的案例 328

第19章 消亡的过程 348

第20章 未来 356

第1章 软件开发的艺术 4

  1. 第2章 设计api的动力之源 14

    1. .1 分布式开发 14
    2. 2.2 模块化应用程序 16

第3章 评价api好坏的标准 26

  1. 第4章 兼容性 42

4.2 向后兼容 43

  1. 4.2.1 源代码兼容 43
  2. 4.2.2 二进制兼容 44
  3. 4.2.3 功能兼容——阿米巴变形虫效应 50
    1. API演进不同于SPI

API中添加内容是容许的,移除是不容许的
SPI中添加内容是有损的,移除是可以的

  1. 反射解决兼容性

第5章 只公开你要公开的内容 67

  1. 第6章 面向接口而非实现进行编程 85
  2. 第7章 模块化架构 98

.1 模块化设计的类型 100

7.2 组件定位和交互 103

7.3 编写扩展点 116

7.4 循环依赖的必要性 117

7.5 满城尽是lookup 121

7.6 lookup的滥用 126

第8章 设计api时要区分其目标用户群 129

第9章 牢记可测试性 147

第10章 与其他api协作 158

第11章 api具体运行时的一些内容 184

  1. 第12章 声明式编程 223

第13章 极端的意见有害无益 236

第14章 api设计中的矛盾之处 247

第15章 改进api 258

第16章 团队协作 286

第17章 利用竞赛游戏来提升api设计技巧 300

第18章 可扩展visitor模式的案例 328

第19章 消亡的过程 348

9.1 明确版本的重要性 349

19.2 模块依赖的重要性 349

19.3 被移除的部分需要永久保留吗 352

19.4 分解庞大的api 352

第20章 未来 356

20.1 原则性内容 357

20.2 无绪长存 358

20.3 api设计方法论 360

20.4 编程语言的演变 361

  1. 常用扩展性方法提升

    1. 函数回调
    2. Map参数

软件框架设计的艺术_百度百科.html

atitit 软件框架类库设计的艺术.docx 目录 1. index 1 2. 第2章 设计api的动力之源 14 2 2.1. .1 分布式开发 14 2 2.2. 2.2 模块化应用程序 16相关推荐

  1. Atitit xml框架类库选型 attilax总结

    Atitit xml框架类库选型 attilax总结 1. 1. XML类库可以分成2大类.标准的.这些类库通常接口和实现都是分开的1 2. Jdom 和dom4j1 2.1. 5.1. jdom1 ...

  2. 游戏设计的艺术:一本透镜的书——第二十六章 团队以技术制作出游戏

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第二十六章团队以技术制作出 ...

  3. 游戏设计的艺术:一本透镜的书——第十五章 其中一种体验是故事

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第十五章 其中一种体验是故 ...

  4. 游戏设计的艺术:一本透镜的书——第二十五章 好的游戏是通过游戏测试做出来的

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第二十五章好的游戏是通过游 ...

  5. 游戏设计的艺术:一本透镜的书——第十六章 故事和游戏结构能用间接控制巧妙地联合起来

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第十六章 故事和游戏结构能 ...

  6. 游戏设计的艺术:一本透镜的书——第十二章 游戏机制支撑谜题

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第十二章 游戏机制支撑谜题 ...

  7. 游戏设计的艺术:一本透镜的书——第二十二章 其他玩家往往会形成社区

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第二十二章其他玩家往往会形 ...

  8. 软件框架设计的艺术----读书总结

    总结 软件开发的艺术 理想主义,经验主义和无绪 文艺复兴时期,现代科学产生了两个重量级理论: 理性主义和经验主义. 理性主义认为理智是信息的首要来源.给出一个假设,只要通过思考就能理解和描述这个世界, ...

  9. Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvc

    Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCo ...

  10. 80c51流水灯汇编语言,单片机AT89C51可控流水灯课程设计报告(汇编语言).docx

    单片机AT89C51可控流水灯课程设计报告(汇编语言).docx 目录目录1第一章 课题的意义及应用2第二章 系统的总体设计32.1 设计方法32.2 数码管显示方案32.3 键盘输入方案4第三章 硬 ...

最新文章

  1. 构建你的第一个Flutter视频通话应用
  2. 指纹传感器沾水便失效的原因解析
  3. python 等比例缩放图片 自写
  4. Eclipse中设置在创建新类时自动生成注释的方法
  5. 基本明白了什么是冲突域和广播域
  6. 数据结构实验之查找四:二分查找
  7. 基于JAVA+SpringMVC+Mybatis+MYSQL的体育竞赛比赛赛事管理系统
  8. Unity3D基础15:触发器
  9. goodbye 2018, hello 2019
  10. mysql 23000_mysql – SQLSTATE [23000]:完整性约束违规:1452无法添加或更新子行:外键约束失败...
  11. python少儿编程教案_超好玩的Python少儿编程
  12. Ubuntu18.04安装网易云音乐后通过图标打不开
  13. java 图文验证码
  14. 超赞,52个数据可视化图表鉴赏!
  15. 我从DuraznoConf中学到了编程的人性化方面
  16. 杨卫华谈新浪微博架构
  17. charles及弱网测试
  18. 新手教程—— Mac电脑如何正确断网
  19. 操作系统——页面置换算法练习题
  20. I/O多路转换之select与select服务器

热门文章

  1. 怎么让图片一直转圈_半夜跟着导航开进山路,货车绕了3小时仍原地转圈,小两口快急哭...
  2. 多个安卓设备投屏到电脑_无线投屏器投屏不需要网络
  3. 肥城市c语言入门自学零基础,2019年自考C语言程序设计模拟试题十三答案.doc
  4. oracle中插入图片,在Oracle数据库的表中插入图片的方法
  5. vba宏语言_Excel VBA(1) – VBA 简介及录制宏
  6. oracle11g的adg需要付费嘛,Oracle11g ADG 搭建
  7. js 获取father_layer弹出子iframe层父子页面传值
  8. 项目长期运维中产生的一些问题
  9. 批量执行newman
  10. 从nginx访问日志中的400错误说起