我是新手,Java世界(7岁低水平纯C的)。
当我开始阅读与Java相关的网站:
- http://wiki.apidesign.org/wiki/Main_Page
- http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/
我困惑现有术语:
- 类
- 包
- 模
- 零件
- 容器
- 服务
- 骨架
- 平台
我发现很多资源约条款的定义(以及更多):
- 框架与工具包与图书馆
- 框架和容器之间的区别是什么?
- 什么是Java容器
- 一个Java容器的定义
- http://martinfowler.com/articles/injection.html (控制容器的反转和依赖注入图案)
- http://www.cafeaulait.org/course/week8/36.html (什么是AWT容器?)
- http://en.wikipedia.org/wiki/Web_container
- http://netbeans.org/features/platform/ (NetBeans平台)
- 什么是“应用程序框架”是什么意思?
- 什么是软件架构?
- 是什么框架和图书馆之间的区别?
- 什么是一个类库和框架之间的区别
- https://stackoverflow.com/questions/11576018/what-is-the-difference-between-a-javascript-framework-and-a-library
- 是什么框架和工具之间的主要区别?
- http://blog.orderharmony.com/2011/07/libraries-vs-frameworks.html
- http://www.javacodegeeks.com/2012/04/frameworks-vs-libraries-as-inheritance.html
- 库,平台和框架之间的区别是什么?
- 是什么平台和框架之间的区别?
- 什么是一个框架和平台之间的区别
- 一个模块,库和框架之间的区别
但这些资源的定义他们自己的目的,我仍然不能明显的从组件一般情况下,例如模块。
请解释在大画面这些术语的意思是什么(可以是单级的平台,需要什么样的模块数量,使容器等)。
UPDATE 2019 https://www.artima.com/lejava/articles/reuse3.html (我的高亮)
比尔 :什么是一个框架,一个平台和工具之间的差异,有哪些不同的灵活性需求?
埃里希·伽玛 :一个平台我长期稳定性相关联。 它是安全的,建立在一个平台之上。 一个平台,使兼容性保证。 框架往往不具备这种素质,我已经看到了关于稳定性 许多框架故障。 如果你看一下Eclipse的,是的,它包括框架,工具包,并提供平台的API。 所有这一切都被捆绑作为插件。 抽象的框架,并提供更高级别的默认功能 。 要做到这一点的框架需要在控制 。 这种控制权的丢失会导致有时被称为frameworkitis。
比尔 :和工具包,不要因为...
埃里希·伽玛 :用工具包 创建并调用工具包对象和注册听众对事件作出反应 。 你在控制 。 框架试图在控制和告诉你什么时候做什么 。 一个工具包为您提供了基石 ,但它留下高达你是在控制。
另一个报价回答我幼稚的问题有多少类的东西做了一个框架:
https://www.artima.com/lejava/articles/reuse.html
埃里希·伽玛 :... JUnit是一个小的框架,例如。 它是框架的“你好,世界”。 你有
Test
,TestCase
,TestSuite
和关系定义。 此外,您通过继承某个地方钩到框架。 他们使用的所谓的好莱坞原则“不要打电话给我们,我们会打电话给你。” 该框架允许您定义定制行为,它会叫你回来的时候轮到你做一些事情。 同样使用JUnit,对不对? 它要求你回来时,它要执行一个测试你,但其余的框架来完成。