@英雄
谢谢你的精彩回复。
确实,我当然也感受到了spring带来的种种好处,就好像从汇编到C,从过程到OO一样,软件进化进程的每一环节都确实给许多开发者带来了好处。
本文主要是想换个角度思考一下。在这里,我和你的观点恰好相反了,我认为就是因为形式上的不一致,给开发者带来了很多困惑。尤其是用配置语法来描述程序逻辑,而目的仅仅是为了满足许多凭空想象的,子无虚有的灵活性,可配置性(好像敏捷开发所抵制的一样),打断了过程中的连续性。
再好比现在多如牛毛的各种中间件,本意都是好的,代码复用,提高开发效率,代码质量。但现实往往与预期相反,开发者首先需要想学习一大堆中间件。学习曲线并未降低,项目进度并未改善,项目质量也乏善可陈。
也许,事物就是在矛盾中发展的吧,所谓有利就有弊嘛。
re: 修改/usr的挂载点 -- linux bluoy 2008-07-17 22:44
@Aeowolf
我修改了博文,追加了更详细的注释,希望能够容易看明白。
re: 修改/usr的挂载点 -- linux bluoy 2008-07-17 22:32
@Aeowolf
你好。看了你遇到的情况,我博文中的挂载步骤,就可以适应你的情况。
1. 首先修改/usr的挂接点。
你的根分区下有个usr,他现在是挂接到了/dev/sda9。当你按步骤做完后,因为fstab中/usr的挂载点去掉了,重启后系统会自动从/usr从挂接的。
2. 其次按步骤把home的内容mv 到/dev/sda9,挂载/home即可。
re: 修改/usr的挂载点 -- linux Aeowolf 2008-07-17 14:42
对你提到的spring大大降低了应用程序的可维护性,我有几点争议:
我们的应用说到底就类似是一本说明书。spring利用ioc,aop两个概念,其实给出了说明书的表述结构。IOC给出了对象的生命周期描述框架(类似说明书中出现的目录),AOP给出了横切式的描述方式(类似说明书中出现的附注)。剩下的部分,我们就开始在IOC的基础上描述系统启动后要建立哪些对象,对象间如何相互引用,每个对象是随叫随生还是保持唯一,每个对象提供哪些服务,具体实现的细节;我们还要时不时加点附注,主要是事务控制。这些描述之后,再加上spring对web层的薄薄的封装描述(类似阅读须知罢),整个说明书描述结束。
所以从这个角度,我认为spring的这两项技术应用,使应用程序的逻辑标书更加简洁清晰完整。至于一部分描述出现在配置文件中这只是个形式,并没有什么问题。
关于spring的配置文件,即使不能找到一些插件啊之类的工具来管理,也可以自己写一些东西来帮助管理。如果你所在的项目还在手工书写和维护配置文件,而且是巨大的配置文件,那确实是非常头大的。
IOC+AOP不仅仅给出了一个完整的描述结构,同时这两个大模式也强有力地规范了代码,统一了程序员的编程方式,应该说合理地使用spring能带来类间的高度解耦,保证享受到面向对象,面向方面编程实践的好处。
@Allen Liu
这儿不是指在实例类的内部调用,而是在实例类的外部如何使用呢?
你这里的A.foo()与((A)b).foo();没什么两样吧?
非常感谢,注册码好用,
能不能麻烦把SI Object Browser 10 也破解了,找了好久的注册码都没找到,看来只有你这里是唯一的希望了。
@kuaile
1. alter table tmm2076 enable row movement
2. flashback table PCS TO TIMESTAMP to_timestamp('2007-05-22
12:00:00','yyyy-mm-dd hh24:mi:ss')
re: 恢复oracle中被删除的表的数据 kuaile 2007-11-01 11:45
请问 到底那个步骤先啊
我在数据库了的PCS表里的记录被我全删除了,怎么恢复?
谢谢