软件框架设计的艺术》帮助你解决api 设计方面的问题,共分3 个部分,分别指出学习api 设计是需要进行科学的训练的、java 语言在设计方面的理论及设计和维护api 时的常见情况,并提供了各种技巧来解决相应的问题。 《软件框架设计的艺术》作者是netbeans 的创始人,也是netbeans 项目最初的架构师。相信在api 设计中遇到问题时,本书将不可或缺。 《软件框架设计的艺术》适用于软件设计人员阅读。 本书提供作译者介绍 Jaroslav Tulach NetBeans的创始人,也是NetBeans项目最初的架构师。有着丰富的项目开发经验,一直致力于如何提高开发人员的设计技巧,从而保证了NetBeans项目的成功。 王磊 工学学士及硕士。2006年起任职于普元公司,一直担任普元公司主任架构师。同时是自由软件Aquarius ORM Studio的作者。 朱兴 软件工程师。一直从事软件研发工作,熟悉Java、Eclipse插件开发、API设计等相关技术。
2021-10-05 13:32:26 50.44MB 软件框架 设计 艺术
1
第一部分 理论与理由第1章 软件开发的艺术 41.1 理性主义,经验主义以及无绪 41.2 软件的演变过程 61.3 大型软件 81.4 漂亮,真理和优雅 91.5 更好的无绪 12第2章 设计API的动力之源 142.1 分布式开发 142.2 模块化应用程序 162.3 交流互通才是一切 202.4 经验主义编程方式 222.5 开发第一个版本通常比较容易 24第3章 评价API好坏的标准 263.1 方法和字段签名 263.2 文件及其内容 273.3 环境变量和命令行选项 293.4 文本信息也是API 303.5 协议 323.6 行为 353.7 国际化支持和信息国际化 353.8 API的广泛定义 373.9 如何检查API的质量 373.9.1 可理解性 373.9.2 一致性 383.9.3 可见性 393.9.4 简单的任务应该有简单的方案 403.9.5 保护投资 40第4章 不断变化的目标 424.1 第一个版本远非完美 424.2 向后兼容 434.2.1 源代码兼容 434.2.2 二进制兼容 444.2.3 功能兼容——阿米巴变形虫效应 504.3 面向用例的重要性 524.4 API设计评审 554.5 一个API的生命周期 564.6 逐步改善 60第二部分 设计实战第5章 只公开你要公开的内容 675.1 方法优于字段 685.2 工厂方法优于构造函数 705.3 让所有内容都不可更改 715.4 避免滥用setter方法 725.5 尽可能通过友元的方式来公开功能 735.6 赋予对象创建者更多权利 775.7 避免暴露深层次继承 82第6章 面向接口而非实现进行编程 856.1 移除方法或者字段 876.2 移除或者添加一个类或者接口 886.3 向现有的继承体系中添加一个接口或者类 886.4 添加方法或者字段 886.5 Java中接口和类的区别 906.6 弱点背后的优点 916.7 添加方法的另一种方案 926.8 抽象类有没有用呢 946.9 要为增加参数做好准备 956.10 接口VS.类 97第7章 模块化架构 987.1 模块化设计的类型 1007.2 组件定位和交互 1037.3 编写扩展点 1167.4 循环依赖的必要性 1177.5 满城尽是Lookup 1217.6 Lookup的滥用 126第8章 设计API时要区分其目标用户群 1298.1 C和Java语言中如何定义API和SPI 1298.2 API演进不同于SPI演进 1318.3 java.io.Writer这个类从JDK 1.4到JDK 5的演进 1318.4 合理分解API 143第9章 牢记可测试性 1479.1 API设计和测试 1489.2 规范的光环正在褪去 1519.3 好工具让API设计更简单 1539.4 兼容性测试套件 155第10章 与其他API协作 15810.1 谨慎使用第三方API 15810.2 只暴露抽象内容 16210.3 强化API的一致性 16410.4 代理和组合 16810.5 避免API的误用 17610.6 不要滥用JavaBeans那种监听器机制 180第11章 API具体运行时的一些内容 18411.1 不要冒险 18611.2 可靠性与无绪 18911.3 同步和死锁 19111.3.1 描述线程模型 19211.3.2 Java Monitors中的陷阱 19311.3.3 触发死锁的条件 19611.3.4 测试死锁 20111.3.5 对条件竞争进行测试 20411.3.6 分析随机故障 20611.3.7 日志的高级用途 20811.3.8 使用日志记录程序控制流程 21011.4 循环调用的问题 21511.5 内存管理 218第12章 声明式编程 22312.1 让对象不可变 22512.2 不可变的行为 22912.3 文档兼容性 230第三部分 日常生活第13章 极端的意见有害无益 23613.1 API必须是漂亮的 23713.2 API必须是正确的 23713.3 API应该尽量简单 24013.4 API必须是高性能的 24213.5 API必须绝对兼容 24213.6 API必须是对称的 245第14章 API设计中的矛盾之处 24714.1 API设计中的自相矛盾 24814.2 背后隐藏的工作 25114.3 不要害怕发布一个稳定的API 25214.4 降低维护费用 25
2021-10-05 13:26:59 50.44MB 软件 框架 设计 艺术
1
RUP2007简体中文版
2021-10-04 10:10:16 4MB Rational RUP RUP2007 软件框架
1
基于halcon的视觉软件窗体控件设计,包括自由窗体控件设计,在视觉软件系统窗体自由拖动,组合设计开发C#开发
2021-09-06 14:10:38 742KB 软件框架;halcon;窗体控件 c#
1
已经用该框架做了不少项目,目前没遇到啥问题
2021-08-22 18:09:29 1.46MB php8 软件框架
1
Windows Form是用于创建传统Windows应用程序的基本工具,本工程使用C# Windows Form框架并以网上可免费下载到的优化UI组件库为基础创建。在主窗口上方实现工具栏实现功能的选择,并通过System.Windows.Forms中的基础控件在主窗口中实现向导式窗口,在左侧提供提示栏。
2021-08-18 11:01:01 2.92MB C# Winform 软件框架 向导式窗口
1
springboot 2.X + jsp + mysql 框架实例demo
2021-08-11 19:05:36 7KB 软件框架
1
(Swift)项目底层框架(万能)
2021-08-11 09:51:52 47.64MB 软件框架
1
官方固件包
2021-07-21 17:12:31 1.68MB 软件框架
1
GUNS快速后端搭建,代码生成
2021-07-17 20:02:25 772KB 软件框架
1