Practical.API.Design.Confessions.of.a.Java.Framework.Architect
“编程界已经有足够多的设计书籍了,”你可能会
认为事实上,有这么多,问我为什么要写作是有道理的——尤其是
你为什么要读——还有一本。特别是著名的设计模式:可重用面向对象软件的Elements,
1关于面向对象的设计模式
系统,由所谓的“四人帮”编写,这是每个开发人员的必读书目
使用任何面向对象的语言。此外,还有许多专业书籍
描述设计模式,所有这些在编写特定类型的应用程序时都很有用。
此外,还有非官方的Java程序员圣经——高效Java。
2鉴于这些事实,
真的需要另一本设计书吗?
我相信这种需要是存在的。自1997年以来,我一直在设计NetBeansAPI,也就是应用程序编程接口。作为一个人,我几乎经历了所有可能的阶段
设计一个框架或共享库可以通过。在早期,我慢慢地对
Java语言,同时尝试应用我所知道的在其他语言中效果良好的编码风格。后来,我精通Java。在这一点上,将各种已知的模式应用到我的
用Java编写的代码看起来很简单,尽管过了一段时间我意识到事情并不是
总是看起来那么容易。我意识到传统模式不适合
面向对象的应用程序框架,如NetBeans,并且您需要一个
不同的技能。
最古老的NetBeans API是在1997年设计的。其中一些即使在服务了十年后仍在使用并充分发挥作用,尽管说实话,这些并不完全是
与以前相同的API。多年来,我们需要适应新的需求,
扩展库功能,并修复初学者的错误。尽管如此,API客户
编译了他们的代码,即使使用了今天的最新版本,仍然能够执行他们的代码
这些图书馆中的一个。这是可能的,因为我们总是尽可能地
保持向后兼容性。因此,针对我们十年前的计划
即使在当前版本中,库也可能正常工作。这种投资保护--
也就是说,我们决定让我们的库以向后兼容的方式发展——
没有出现在常见的设计书籍中,至少到目前为止我读过的书中没有。并不是所有的NetBeans API都是毫无问题地进化而来的,但我开始相信NetBeans团队
现在已经高度掌握了这项技能,而且这项技能在
其他程序员群体。这就是为什么这本书的大部分内容都在谈论保留向后兼容性,以及产生适用于
以向后兼容的方式进行维护。
-
互联网十大网盘密码提取工具v1.0.1.30
互联网十大网盘密码提取工具是一款十分神奇的网盘工具,顾名思义,该软件主要就是帮助用户们从网盘里提取密码,让用户们可以从而这些网盘的... 962 0 25-05-06 -
Hadoop技术内幕深入解析MapReduce架构设计与实现原理
突然之间,大数据一下子就“火”了,开源软件Hadoop也因此水涨船高。得益于一些国际领先厂商,尤其是FaceBook、Yahoo!以及阿里巴巴等互联网... 1279 0 24-05-28 -
微信聊天截图生成器 - 微商截图侠
如果你的好友列表中有微商朋友,相信你一定经常看到他们发的对话截图、转账截图,眼见不一定为实,这些图片都可以使用营销神器制作出来。微... 1470 0 24-11-14 -
考研政治重点资料
中国近代史纲要.pdf习新时代中国特色社会主义思想(考研政治).pdf五位一体总体布局(考研政治).pdf徐涛押题重点梳理记忆(上).pdf徐涛押... 1269 0 24-08-20 -
卸载Windows自带软件-PyDebloatX
PyDebloatX是一款十分好用的Windows系统默认应用卸载工具,这款软件可以帮助用户轻松的卸载Windows系统中自带的一些应用程序,例如XBOX、计... 901 0 25-05-06 -
个人音乐台小程序
【微信小程序 - 个人音乐台】是一个以音乐为主题的微信小程序项目,它提供了用户自定义音乐播放的平台。这个项目不仅包含完整的源代码,... 986 0 24-09-17 -
3D小人素材ppt
648 0 21-07-12 -
便宜买药 - 直接在外卖平台下单
推荐平台:外卖平台之前喉咙不舒服,去线下药店买慢严舒柠,一问要62,但是这个药我以前买过,所以知道这个价格有点离谱,然后我在美团外卖... 1204 0 24-11-18
发表我的评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~