MyException - 我的异常网
当前位置:我的异常网» Java Web开发 » 很烦恼,到底用框架,还是纯JAVA解决方案

很烦恼,到底用框架,还是纯JAVA解决方案(2)

www.MyException.Cn  网友分享于:2015-08-27  浏览:131次

我的个人观点:使用框架是提高开发效率的捷径,人家国外的大师把框架做出来,我们还要固执的使用纯Java的话,就永远也赶不上人家
常听见的一个比喻是人家都已经造好汽车到处开了,我们还在关着门造轮子

要真有研究学术的精神,是应该把Java底层学好,把人家框架的设计精髓学到,把思想和素质提高,简而言之就是把我们与他们的差距先想办法缩短再努力赶超

但是要真说到开发项目,使用优秀设计思想的代表框架是项目稳定性能的保证,虽然我们也可以用Java来实现,但代价太大,我们可以去做一些小的模型,但我不认为任何人有这个时间去真正实现一个大型项目完全不用框架。这是人家几十年前干的事情,我们为什么现在还要去重复这个过程呢?

任何事情都是双面的,我们既不能依赖框架,又要有效的使用框架,衷心希望中国的程序员整理提高,不光是技术上的,更多是思想和素质上的!
------解决方案--------------------
好热闹 我也来说说
对于项目首先要有侧重,稳定? 实时? 安全? 等等
这些取舍决定了你是否用框架,用什么框架
我接触过三个项目 框架不一 但都用了(自己开发的或者是既有框架扩展)
框架明显的好处是便于统一编程风格。
成熟框架也可以提供很好的稳定性,安全性,扩展性
对框架稍加扩展即可很好的实现效率的提高。
我不觉得现在还有不用框架的应用。

楼主想问的可能是对现在刚刚起步的人,是学框架好,还是先一步一个脚印的作出自己的一个东西来好。
我的回答可能比较扯。但是我还是要说。其实你自己做一个东西不见得好。
其一,你肯定要花大时间调试,重构,最后很可能做不出来或者直接错误百出
其二,当你埋头调试的时候你是不会想如何让你的东西更好,因为你不知道怎么才能更好
其三,很多东西你想不到,最后会有很多bug
好处就是你从此对编程有了不一样的认识,你上路了
而用框架也有很多不好处
其一,你使用的框架决定了你的学习曲线,你很可能花大时间学习到最后也吃不透
其二,使用框架会让你忽略掉大量编程细节,为以后买下隐患
其三,学则框架不当,会使你的知识结构不能和公司接轨,白白浪费时间
但我还是推荐你使用框架,为什么,因为大家都在用,你就捡公司用什么你就用什么
这样可以让你在进公司不久站在更高的起跑线上。

再说说我接触的项目。
项目无非是调研,基本设计,详细设计,编码,测试,发布,维护。
不知道你在什么样的公司,我这里做基本设计的是比较牛的,同时有一批牛人作选框架,定制框架的工作。
框架有什么好处?
作为基本设计人员,你不用考虑编程,但是如果发布了20个版本以后可能你就有点发怵,新设计在旧程序上
跑的过吗?如果有个好框架,不用担心,20个版本都是一水的整洁,扩展良好哦
详细设计?不要犯难,流程是一样的,什么流程,上个版本的一拷贝你就知道了,省心
编码?按照规范编就行,机能差不多的拷一个改改
测试?还是上一个测试框架,熟阿,快啊
发布?还是上一个发布脚本,乐啊
维护?代码还是一样的流程,找bug 快啊

有人说5个版本以上见功夫,真对
如果你有时间又有自信还有不已物喜不已己悲的心那就自己编
如果只是为了出东西,那用框架
如果只存高远那么选框架,用框架,扩展框架,做框架
------解决方案--------------------
探讨
老紫竹

你都是用java-bean的方式开发吗?
spring hb struts都不用吗?

------解决方案--------------------
框架正在学习中.我想这要根据项目大小和复杂度进行一个取舍和平衡.根据lz的公司需求,如果是大型的,开发周期长的,多功能模块的,J2EE项目的开发,建议还是用框架开发的好点,因为框架可以提高开发效率,缩短周期,能有效整和和规范模块设计,开发,同时也易于调试和维护.如果项目不大我想就不要用框架来写,还是用jsp+servlet+javabeen的MVC设计模式来好点,因为可以自己灵活组织,设计项目中类的结构.总之,不管是软件开发还是web开发,其核心灵魂都是要以在项目需求复杂多变的情形下,以最大限度的实现代码复用为原则,要做到这些,就需要对项目架构进行分层设计与开发,即将层与层之间进行隔离,如页面显示层与业务逻辑层进行分离,业务逻辑层与数据库访问层进行分离,数据库访问层与数据层进行分离,这样分离的好处就是各自独立,各司其职,当底层代码发生改变时,不会影响到上层,比如说原先采用的是MSSQL数据库,因为项目需求改成Oracle,那你只要动数据层而不会影响到其他层.这也从一个侧面反映出框架易于对数据的封装与维护.
------解决方案--------------------
其实楼主的疑问是两个方面:
1. 框架对于开发产品有没有实质的帮助?
2. 自己对于框架心存疑虑,因为使用了框架之后,很多方面
都被框架包装掉了,剩余的属于黑箱操作,出了问题我该
怎么办?

其实这个问题在Java中特别的突出,因为Java中存在了太多的
框架可供大家选择。不过,我想在是否决定使用框架之前,你应
该了解下面的问题:
1. 无论是否使用框架,良好的设计和完整的文档是比不可少的。
特别注意:框架不可以代替产品的设计,特别是业务逻辑的
建模和设计。基本上所有的框架都只是一个MVC的实现而已,
本身不会代表任何业务相关的内容。

2. 正如你所感觉的一言,使用了框架之后,你有一种无法了解
系统整体运作流程的感觉,有可能到了出现问题也无法解决的
境地。这对于产品后期的调试和优化可能都会存在一定的障碍。

3. 框架真的很重要么? 未必!大家使用框架的初衷基本上都是
想避免一些无谓的重复劳动,简化自己的工作负担。但是对于
一个复杂系统而言,你无法了解系统整体的运作流程的时候,
出现了Bug应该怎么办?怎么定位这个Bug,这个Bug是属于
框架的还是属于业务模型的?甚至可能出现这种情况:修改这
个Bug需要同时调整框架和自己的业务模型,那么你该不该修改
这个框架呢?在这样的情况下,你使用框架带来的好处可能会
远远小于它带来的坏处,因为你在修Bug上面耗费了很大的精力,
想要更加的精益求精就更加困难了。

4. 如果这个产品代表了你们公司的竞争核心,呵呵。不要用现成的
框架,针对产品的特性自己去开发一个,围绕它进行产品开发。
这样开发出来的产品才有竞争优势。因为你可以用现成的框架开发
产品,你的竞争对手就不行么?全球最大的亚马逊书店就自己开发
自己的电子商务系统引擎,而不是使用现成的商务系统引擎。因为
这样才可以突出自己的竞争力。

写了这么多,无非想表达一下自己对于软件开发的一些体会。
良好程序 = 精准的业务建模 + 简洁明确的数据结构 + 合适的开发技术 
+ 清晰的设计文档。
对于一个真正需要商品化的产品而言,框架在很大程度上不可能从数量级上提高产品的质量和降低开发周期。

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有