黑马程序员技术交流社区

标题: java中的轻量级与重量级框架? [打印本页]

作者: 陈振兴    时间: 2012-9-17 15:30
标题: java中的轻量级与重量级框架?
本帖最后由 陈振兴 于 2012-9-18 13:27 编辑

我不知道java中的轻量级框架和重量级框架最大的区别什么?
我就知道Vector在考虑并发的情况下用Vector(保证线程的安全),这是重量级的组件(Hashtable也是),轻量级的组件说是swing?
轻量级框架是hibernate,struts,spring这些,
但我又不能完全明白他们这些组件了、框架的区分程度到底是些什么?

作者: 程振    时间: 2012-9-17 16:31
本帖最后由 orgcheng 于 2012-9-17 16:33 编辑

就那spring和ejb来说,spring是相对ejb是轻量级框架,因为spring能实现ejb的大部分功能,而且使用简单,而ejb则学习起来难,使用也难,但有些功能只能使用ejb来完成。
另外,轻量级框架与重量级框架是互补的关系,知道这个面试应该就可以了吧
作者: 霍永刚    时间: 2012-9-17 16:42
我的理解是:重量组件一般支持线程安全而轻量不支持。
例如:                 
        JDK GUI里面的awt包 为重量级,swing包尾轻量级。
        集合类List、Map、Set为轻量级,Vector、Hashtable为重量级。
作者: 李健_8    时间: 2012-9-17 17:49
hibernate封装了数据库   structs封装了MVC模式  至于spring的最大特点就是面向切向和控制转换
我认识一个搞编程的  他说  不要太迷信框架  但是了解他的思想  比如说他们编程是很少用hibernate  都直接用JDBC
作者: 史小兵    时间: 2012-9-17 18:52
轻量级组件 是用JAVA代码画出来的,这样具有平台移植性
重量级组件 是调用操作系统的函数画出来的组件,比如主窗体
主要记住他们的定义就好了。
swing是由100%纯Java实现的,Swing组件是用Java实现的轻量级( light-weight)组件,没有本地代码,不依赖操作系统的支持,这也是它与AWT组件的最大区别。
hibernate主要封装了数据库,structs主要是封装了MVC模式,spring主要就是面向切向和控制转换。
作者: 陈振兴    时间: 2012-9-17 21:35
火火 发表于 2012-9-17 17:49
hibernate封装了数据库   structs封装了MVC模式  至于spring的最大特点就是面向切向和控制转换
我认识一个 ...

恩,就是要懂这个思想我才会提出这个问题,我不怎么迷框架了,呵呵
作者: 陈振兴    时间: 2012-9-17 21:44
史小兵 发表于 2012-9-17 18:52
轻量级组件 是用JAVA代码画出来的,这样具有平台移植性
重量级组件 是调用操作系统的函数画出来的组件,比如 ...

恩,有点那个意思了!呵呵
作者: 陈振兴    时间: 2012-9-18 13:27
轻量级框架侧重于减小开发的复杂度,相应的它的处理能力便有所减弱(如事务功能弱、不具备分布式处理能力),比较适用于开发中小型企业应用。采用轻量框架一方面因为尽可能的采用基于POJOs的方法进行开发,使应用不依赖于任何容器,这可以提高开发调试效率;另一方面轻量级框架多数是开源项目,开源社区提供了良好的设计和许多快速构建工具以及大量现成可供参考的开源代码,这有利于项目的快速开发
  轻量级框架的产生并非是对重量级框架的否定,甚至在某种程度上可以说二者是互补的。就只能先理解到这里。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2