2011-02-09 48 views
7

我需要了解Java中面向组件的编程,我相信这与EJB有关,但我不确定这是...这是真的吗?什么是Java中的面向组件的编程?

能不能请您给我的Java相关的组件面向对象编程有一个关于它的起点一定的联系?

谢谢!

回答

6

元器件面向对象编程是分解成问题主要部分(“组件”),其每个具有特定角色或解决问题的责任域的方法。

企业是有点面向构件的组成部门的“会计”,“采购”,“销售”,其中有超过其业务需要提供一定的任务全域。

面向对象和组分取向之间的差别是规模和可重用性的那些。面向对象的思维倾向于关注小型对象的紧密集成,其中对象在整个软件产品中被重用。面向组件的思维倾向于关注主要独立运作的责任孤岛,并且可能与其他组件共享对象或不共享对象。

JDBC数据库驱动程序的面向构件的思想(在面向对象的世界中实现)一个很好的例子。作为组件(JDBC驱动程序)在内部处理所有这些数据库驱动程序,您并不关心使用哪种数据库驱动程序或数据库通信的细节。

不同类型的EJB也是组件。对于您希望解决的每个问题,您应该选择提供正确通用方法的J2EE组件,然后对其进行扩展以提供解决方案的必要细节。例如,如果您希望显示一个Java生成的网页,您可以使用J2EE HttpServlet组件,这将确保它适合于一个J2EE Servlet容器,该容器将处理所有接收HTTP请求的管道,将它们分解为Java对象和方法调用,指导他们正确的容器,通过容器收集从正确的处理程序的输出,组成输出到HTTP响应等

2

让我们用电子产品为例:所有的电子设备都是由组件(晶体管,电阻,二极管,电容等) 的组件仅仅是一个事物的一部分大。一个部件质量差,质量高。高品质的元件具有相似的特征:

  • 以及指定的接口(例如晶体管线)和行为(晶体管电流/电压特性)

  • 封装(你没有明白晶体管是如何构建使用它)

  • 有据可查的(你可以找到晶体管的文档供应商的网页)

  • 可重复使用(可以使用晶体管建造了许多有趣的设备)

  • 更换(可以更换一个公司与其他类似的制造晶体管)

在软件世界中一个组件可以是几乎所有的东西:一类的,JavaBean,企业级Java Bean时,小应用程序,门户,JAR,Web服务器,应用服务器,数据库服务器,Web服务,...

更多关于这里:http://en.wikipedia.org/wiki/Component-based_software_engineering

+0

hi iirekm,Can CSS,js文件是Java EE中的组件吗? – ThanhLD 2015-10-03 15:54:14