JFinal 里的模块化结构设计目标是什么呢?

红萝卜OO 发布于 2013/08/02 11:25
阅读 648
收藏 0

@JFinal 你好,想跟你请教个问题:

很想知道@JFinal 里的模块化结构(也就是特性里说的Plugin体系结构)的设计目标是完成什么功能?因为plugin接口的方法还是挺简单的start\stop。是不是只是为了模块化代码阅读更清淅,还是往后会继续扩展plugin功能,使系统可以热管理功能的停止或启用呢?

可以说说这样的设计现阶有什么好处吗

加载中
0
黄开源中国
黄开源中国
mark一个等高手回答~~~
0
玛雅牛
玛雅牛

想完成任何你想完成的功能,感觉像废话。呵呵。
jFinal框架只是帮你在合适的时间点初始化资源(start)和释放资源(stop)。
这样做具有很大的灵活性。

0
红萝卜OO
红萝卜OO

引用来自“玛雅牛”的答案

想完成任何你想完成的功能,感觉像废话。呵呵。
jFinal框架只是帮你在合适的时间点初始化资源(start)和释放资源(stop)。
这样做具有很大的灵活性。

其实也不是废话的泽元cms和portal就有这类实现 我不是想要jfinal实现这些 只是我很想知道@JFinal 是如何看待系统模块化
0
无聊的人们啊
无聊的人们啊
个人愚见:插件话这样首先有利于扩展,这样每次新加什么功能几乎是不用动核心代码的,而且有利于平台话和自己定制比较特殊的服务,例如eclipse,如果你想用比较复杂的东西的话,你完全可以自己做个插件放到里面。这只是一个方面。
0
光石头
光石头
就说一次吧。jfinal本质是扩展点,不是插件,jfinal定义好扩展点接口,自行实现,例如 datasource,cache等,和eclipse等osgi的插件体系本质不同,受制于扩展点的接口,例如,我现在存储不是数据库,是ladp,在不改动jfinal代码的情况下,仅仅依赖“插件”能实现吗?当然,对于web程序来说,jfinal的扩展点基本足够了
JFinal
JFinal
忘掉剑招,只记剑意,概念并不重要,JFinal Plugin与eclipse plugin或 OSGI没有任何关系,也没有可比性
光石头
光石头
手机打错字了,是ldap
0
JFinal
JFinal

    JFinal 的五大组成部分:Handler、Interceptor、Controller、Render、Plugin,其中前四部分是对特定方向扩展准备的,除此之外还需要对未知方向扩展做准备,这样才是一个完备的系统。

    Plugin 是为了实现未知的功能,为满足此目标,就需要给出尽可能高层次的抽象,越是高层次的抽象适应性就会越强。

    一个能满足未知需求的抽象需要以最少的约束却能满足最多的需求,Plugin的start/stop或许是合适的。如果有更好的抽象大家可以提给我。

光石头
光石头
spring有很多Aware是因为spring有ioc容器,它需要提供切入点,jfinal不需要。我用spring最关键的只有两个,一个是aop事务,一个是ioc
JFinal
JFinal
回复 @屁屁果 : Spring有太多类型的 Aware接口,而JFinal力求简洁,以尽可能少的概念实现尽可能丰富的功能。越简单的招式威力越强,无招胜有招
光石头
光石头
spring的方式也不错,扩展点和其他扩展分离,实现Aware接口就会在启动时初始化,几乎没有任何限制。
返回顶部
顶部