该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2011-01-08
ouchxp 写道 如果项目足够小,又不用你们公司去维护, 客户还不会审查代码.
那么 管他耦合不耦合. 反正头疼的是别人.... 做过电信的项目 从没见过Spring的IOC解耦发挥作用. 维护直接上去硬改. 版本乱七八糟..受不鸟... 有这么恐怖! |
|
返回顶楼 | |
发表时间:2011-01-08
yangguo 写道 正如你所言,理解很肤浅。ioc只是帮你实现了工厂模式,根本就没有解放设计的任务。也不会帮助新手理解什么系统,只会帮组老人家如何规范系统,现在的新手玩这些都是行家。
就像yangguo说的,ioc就是个工厂模式,和解耦没多少关系?解耦还是要靠自己. 另外,加个接口就叫解耦?那还要什么设计模式,只要加个接口就ok了? |
|
返回顶楼 | |
发表时间:2011-01-08
多看看一些基础东西吧
|
|
返回顶楼 | |
发表时间:2011-01-08
可以想象,用了Spring 如果不改接口还好,不然就改类的接口实现,改接口的定义,改接口的调用...
|
|
返回顶楼 | |
发表时间:2011-01-08
最后修改:2011-01-08
gtssgtss 写道 yangguo 写道 正如你所言,理解很肤浅。ioc只是帮你实现了工厂模式,根本就没有解放设计的任务。也不会帮助新手理解什么系统,只会帮组老人家如何规范系统,现在的新手玩这些都是行家。
就像yangguo说的,ioc就是个工厂模式,和解耦没多少关系?解耦还是要靠自己. 另外,加个接口就叫解耦?那还要什么设计模式,只要加个接口就ok了? 这观点离谱的一踏糊涂。 就算Spring是工厂,那工厂是用来干什么的?就是让使用对象的类不必和被创建的类直接耦合... 针对接口(interface)编程,的直接目的就是让调用者和被调者解藕,即调用者不必知道具体的被调者是谁... IOC是和针对接口编程一起使用的... |
|
返回顶楼 | |
发表时间:2011-01-08
最后修改:2011-01-08
gdpglc 写道 treblesoftware 写道 gdpglc 写道 没用过ejb,具说ejb2.0失败了。似乎用ejb就要买个很贵的服务器。这样项目成本就上来了...
EJB提供分布式解决方案的,小朋友。 ejb2.0我略有学习,记得有三种bean: 会话bean 消息驱动bean 和 实体bean。 它们可以分布在不同的机器上远程调用。你是指,这个叫分布式解决方安吗? 具体有什么用? 不理解为啥,好好的bean不放在一台机器上调用,呵呵。 ejb3是一点没学了... ejb2的确很差劲,但ejb3非常好,特别是ejb3.1,感觉已经很轻量级了. - pojo作为bean,3.1连业务接口都免了。不像ejb2要写一大堆接口和配置文件。 - interceptor实现了aop - ejb3中可以完全用Annotation方式进行注入,在开发上要简单很多。而对于一些可能需要经常变动的注入,ejb3也提供了xml注入的解决方案。 当然,ejb的容器还是相对比较重量级的。其实对于Spring,也有同样的问题,轻量级的内核,也不意味着整个框架是轻量的,更不意味着基于Spring的整个应用架构是轻量的。你需要去寻找并粘合各种服务,然后让他们能够稳定的在一起工作,如果应用对技术的需求较多,伸缩性要求也较高,你就会不断的在应用服务中加入其他服务,如:资源池、消息队列、集群等。当加入这些后,Spring的解决方案已经和Java EE Application Server解决方案一样重量级了。 |
|
返回顶楼 | |
发表时间:2011-01-08
最后修改:2011-01-08
spring也好ejb也好。 看来都是容器,到底要给开发者带来什么? 不用这个容器,开发者会多付出什么? 这是我的疑惑。
大家回贴通常只是关注一些局部问题。有没有人想Spring或ejb道底会为你的团队带来什么呢? |
|
返回顶楼 | |
发表时间:2011-01-08
gdpglc 写道 spring也好ejb也好。 看来都是容器,到底要给开发者带来什么? 不用这个容器,开发者会多付出什么? 这是我的疑惑。
大家回贴通常只是关注一些局部问题。有没有人想Spring或ejb道底会为你的团队带来什么呢? 不是吧,spring和ejb都不是容器,而是运行在容器中。tomcat,jboss这种才应该算是web容器或者是ejb容器。 对象池,线程池,安全机制,事务机制,服务定位。。。这些东西都是容器提供的功能。不用容器,一般的开发者没有能力和精力去专注于这些底层功能。 |
|
返回顶楼 | |
发表时间:2011-01-08
gdpglc 写道 gtssgtss 写道 yangguo 写道 正如你所言,理解很肤浅。ioc只是帮你实现了工厂模式,根本就没有解放设计的任务。也不会帮助新手理解什么系统,只会帮组老人家如何规范系统,现在的新手玩这些都是行家。
就像yangguo说的,ioc就是个工厂模式,和解耦没多少关系?解耦还是要靠自己. 另外,加个接口就叫解耦?那还要什么设计模式,只要加个接口就ok了? 这观点离谱的一踏糊涂。 就算Spring是工厂,那工厂是用来干什么的?就是让使用对象的类不必和被创建的类直接耦合... 针对接口(interface)编程,的直接目的就是让调用者和被调者解藕,即调用者不必知道具体的被调者是谁... IOC是和针对接口编程一起使用的... 我自认为水平不够,不能直接写出很好的代码;但是最近的一个项目,我一直坚持重构,首先把代码都堆在Controller,之后重构消除重复代码,并且封装变化,我发现需要用到接口的地方很少,特别是自动装配的时候,我尽量用具体类,免得自找麻烦.结果是很少用到接口,倒是用了很多抽象类,因为大量使用了模板方法. |
|
返回顶楼 | |
发表时间:2011-01-08
最后修改:2011-01-08
什么是容器,估且不论。这点我可能表述上有问题。但是你列举的这些我知道的都不是太难的技术:
对象池:apache common-pool 不难用 线程池:jdk1.5后自代就有 安全机制: 这个不太明白是什么? 事务机制:估计没有不会用的。 服务定位:这个不太明白? 这些东西对于一个开发者,只要有对应的库,和使用说明,使用上会是问题吗?一定要出现一个容器来做这些事吗? 还是容器是使用这些东西的一个选择? |
|
返回顶楼 | |