`
ynztpwl
  • 浏览: 59529 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

说说为什么使用Java框架的道理

 
阅读更多

what

如今,“J2EE框架”一词如雷贯耳,那么什么J2EE是框架?框架,即FrameWork。其实就是某种应用的半成品,就是一组零件,供你选用完成你自己的系统。简单说就是使用前人提供的工具,来做你需要做的事情,比如:木匠在做家具的时候不需要去考虑去把木材从森林里面砍伐回来,再到工厂里面进行加工,他只要从市场里面买来现成的木料即可,木匠只管做家具。而除了做家具以外的砍树伐木事情木匠不必操心,他只管拿木材来用。上述说的木材市场中的木料就是好比框架,他并不是直接能用的家具,需要进行加工,反之,在古代很多木匠都需要自己去砍伐木料回来自己加工,很辛苦,而且降低了整体的工作效率。
对于一个有经验的木匠他会知道什么样木材的用在什么地方,把哪些不同类型的木材拼一起会成为一个外观好看并且坚固耐用的桌子,成本低,经济实惠。而一个有 经验的软件工程师,他会知道在什么场景,什么功能需求下运行什么样框架技术最适合,什么框架与什么框架技术相互组合以后能发挥他更好的性能,使用框架产品 后让系统更出色。
我们并不是在说与软件开发企业应用无关的话题,前人告诉我们大多数的科学理论都是来自于我们的日常生活,做这样的比喻是希望读者能明白,使用任何框架并不 会让你的系统更出色,更稳定,只是简化了你的工作,规范了你的工作,锦上添花而已,对于企业来说用不用某种Java框架技术并不是企业应用成败的关键因 素,对于个人来说会不会使用某种框架技术更不是衡量软件工程师能力的强弱的标准。

why

为什么要用框架? 因为软件系统发展到今天已经很复杂了,特别是服务器端软件,设计到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基 础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,他可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问 题。

还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,你可以直接享受别人升级代码带来的好处。框架一般处在低层应 用平台(如J2EE)和高层业务逻辑之间的中间层。因为某种框架用的人多,而且项目比较大,采用以后熟悉该框架技术的人可以马上和开发团队紧密结合,“规 范”

when

如果你想提高你系统的性能,可能会考虑到使用缓存技术,那么不采用任何Cache框架的前提下你自己就得去想用Java API里面的什么方法可以去实现。“哦,可以用 静态变量的 HashMap”。接着去编码,去测试,运用到项目中运行了一段时间,发现了一个问题,需要将在多台机器上运行自己写的缓存程序,会考虑到缓存同步的问题,继续修改,继续测试,继续使用,但是没有多久发现还是不稳定,每台机器上缓存并不是想象那样在同步着。此时,再回头看看Day Line、项目的时间表、完成进度…….还有很多任务没有完成,下个星期就要上线了,很多时间都放在非关键性的技术研究上了。

从上述这个案例来看,对于想提高运行的性能并改良是一个很好的想法,但人的精力是有限的,而竞争是激烈的,需要有强大的系统性能,又需要能按期完 成,又需要节省人力成本,怎么办?使用一些现成的Java缓存框架技术,这些框架由专业的团队完成,这些团队的主要任务就是做出杰出的Java缓存框架, 产品并且经过严格测试与成功案例。如果直接采用可以解决上述所说的一部分问题,比如:可以提高系统的性能和节省人力成本,这就是为什么需要使用框架的道 理之一。
去面试的时候面试官会问面试者会不会使用某种框架技术,我对于这样问题本意的理解就是:“他希望你能很快的融入公司的开发团队,无需对你进行更多的技术培训,另外,他们希望你会使用这样的框架技术,可以提高开发中的工作效率,降低时间上的成本,让我的精力放在关键性的任务上。”同样我在做面试官的时候也希望别人这样理解我的意图,而并非是希望面试者能对某种框架技术能使出少见的绝招,让我认为他是一个技术上“厉害”的角色。

分享到:
评论

相关推荐

    Java 三大框架项目

    Java 三大框架项目,通常指的是Struts、Spring和Hibernate这三个在Java Web开发中广泛应用的开源框架。它们分别负责Web层、业务...对于学习者来说,理解并掌握这三个框架的使用,对于提升Java Web开发能力大有裨益。

    如何搭建自己的Java开发框架

    首先,我们需要回答几个问题,以确定我们为什么要写一个框架,什么是我们的框架,谁是我们的用户对象,如何维护和发展我们的框架等等。这一步骤被称为定位。只有在明确了我们的目标和方向后,我们才能开始设计和开发...

    java SSM 框架源码 企业

    java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业java SSM 框架源码 企业...

    JAVA框架项目

    - **背景介绍**:《JAVA框架项目教程》是翰子昂实训体系丛书中的一部分,旨在通过真实的项目案例,为学习者提供贴近实际工作的JAVA技能训练。随着软件产业在全球范围内的快速发展,软件人才成为推动经济增长的关键...

    JAVA五大框架整理

    Hibernate是一个对象关系映射(Object-Relational Mapping,ORM)框架,它为Java开发者提供了方便的数据持久化服务。Hibernate允许开发者用面向对象的方式来操作数据库,避免了SQL的繁琐,同时提供了性能优化的可能...

    2014年java技术与框架使用情况统计报告

    2014年java相关技术与框架使用情况统计报告。英文。由RebelLabs统计。 JAVA TOOLS AND TECHNOLOGIES LANDSCAPE FOR 2014 A GLOBAL SURVEY OF 2164 JAVA PROFESSIONALS 包括不同java框架、服务器、构建工具,静态代码...

    基于Java实现的SSM框架整合实战案例

    基于Java实现的SSM框架整合实战案例 基于Java实现的SSM框架整合实战案例 基于Java实现的SSM框架整合实战案例 基于Java实现的SSM框架整合实战案例 基于Java实现的SSM框架整合实战案例 基于Java实现的SSM框架整合实战...

    使用java实现OR框架

    ORM(Object-Relational Mapping,对象关系映射)框架是软件开发中的一种技术,它将数据库中的表结构映射到Java对象,使得开发者可以使用面向对象的方式来操作数据库,而无需关心底层SQL语句的编写。在Java中实现ORM...

    Java验证码框架.

    Java验证码框架.可实现多种验证很强大

    游戏Java开发框架.zip

    游戏Java开发框架.zip游戏Java开发框架.zip游戏Java开发框架.zip游戏Java开发框架.zip 游戏Java开发框架.zip游戏Java开发框架.zip游戏Java开发框架.zip游戏Java开发框架.zip 游戏Java开发框架.zip游戏Java开发框架....

    30种java技术框架图

    标题“30种java技术框架图”与描述“这个介绍的比较全面,内容比较详细 对初学者有很大帮助 欢迎下载”揭示了文档的性质——它似乎是一份图解资料,为初学者介绍了30种Java技术框架。这些框架包括了Java类加载器架构...

    java框架基础

    再来说说MyBatis,它是一个优秀的持久层框架,将SQL语句与Java代码分离,避免了传统的DAO层繁琐的编写工作。MyBatis允许开发者自定义SQL,存储过程,甚至能根据条件动态生成SQL,提高了数据库操作的灵活性。它通过...

    java所有开发框架的开发手册集合 打包

    Java开发领域涵盖了大量的框架,这些框架为构建高效、可维护的Web应用程序提供了强大的支持。本压缩包集合了几个最常用且具有代表性的Java框架的开发手册,包括Spring、SpringMVC、MyBatis、iBatis、Struts2以及...

    java常用4种框架搭建过程

    Java开发中,常常使用框架来提高开发效率和代码质量。Spring、SpringMVC、Hibernate和MyBatis是Java领域常见的四大框架,它们分别在不同层面提供了强大的支持。 Spring框架是一个全面的企业级应用开发框架,它提供...

    JAVA学习 Java集合框架.ppt

    JAVA学习 Java集合框架.ppt

    源码 java SSM 快速开发框架项目源码

    【源码】 java SSM 快速开发框架项目源码【源码】 java SSM 快速开发框架项目源码【源码】 java SSM 快速开发框架项目源码【源码】 java SSM 快速开发框架项目源码【源码】 java SSM 快速开发框架项目源码【源码】 ...

    Java定时器框架(Quartz)

    Java定时器框架Quartz是Java开发中用于任务调度的一个强大工具,它允许开发者精确地控制任务的执行时间,包括一次性任务和周期性任务。Quartz以其灵活性和稳定性,在企业级应用中广泛使用,尤其在需要定期执行后台...

    java游戏服务器框架.zip

    java游戏服务器框架.zipjava游戏服务器框架.zipjava游戏服务器框架.zip java游戏服务器框架.zipjava游戏服务器框架.zipjava游戏服务器框架.zip java游戏服务器框架.zipjava游戏服务器框架.zipjava游戏服务器框架.zip...

    java mina 通讯框架

    java mina 通讯框架

Global site tag (gtag.js) - Google Analytics