ECSide源码初读
yiqunch
2007-02-04
首先感谢FIns的辛劳工作,看到ECSide稳步在前进,而且目前的版本推出非常快,让人也是倍感期待。周末花了些时间,初步看了下源码,对ECSide加强了了解。ECSide主要通过标签的形式,提供了易用的界面接口给表现层;EasyList本质上是通过Filter机制,将数据从数据库中取出,放到context的attribute中,以供页面使用。Ajax特性加入,增加前后台之间的交互体验。其中对Javascript的使用,让人印象深刻。这里主要想说几点想法:
1、权限: 可以考虑在这里提供权限控制定义,主要是提供接口,方便用户定制权限。这个接口应该具有可扩展和无侵入性。不替母系统做权限机制的假设,只提供基本接口,用户可根据实际系统采用的权限机制来对ECSide控件进行访问。 2、在实际的系统中,常碰到数据关联问题。比如角色和用户,一个角色可以拥有多个用户。这样在角色表中可能想通过选中角色,然后再来查删改对应用户。这种级联表形式不知fins兄是否考虑过。当然初步感觉实现是可以的,但需要解决许多具体问题。呵呵,废话了!不过如果这个能够做到,基本上是比较成熟了,其应用会更加广泛和实际。 3、现有系统:个人感觉就目前已经实现的功能而言,急需用户指南。Fins兄想让ECSide真正深入人心,这个是必需的。演示的例子应该相对稳定。近几个版本演示例子变动较大。用的人越多,bug和需求暴露的越多,通过取舍,相信ECSide可以有更广阔的发展空间。 最后再次感谢Fins的工作,我已经看到ECSide可以在我以后系统中的应用。从代码角度虽然还可以进一步refactor,但绝对是瑕不掩瑜。 |
|
fins
2007-02-04
感谢你的关注 和建议
我一定会认真思考这些问题的 过年期间 电脑不在身边 正好可以沉淀一下思想 写些文档 好好考虑一下下一步的发展. 同时你说的 例子变动较大 重构余地较大的问题 我也深有体会 例如 将要发布的 1.1 final 版本 和现在的 rc版本就又有了差距 我重构了 easylist相关代码 抽离出了 easy data access 模块 主要是想把这种" 配制sql 快速执行数据库操作 并把操作结果返回叶面"的机制弄的更灵活易用一些 让他不仅仅适用于ecside. (当然绝对没有野心更没有不自量力的要去做另一个iBATIS的打算 呵呵) 代码出现与老版本不兼容的变动,这种状况出现的原因主要是项目需求紧 我要立即实现 根本没有时间仔细的思考. 在未来 这样的情况也许还会存在,但随着ecside的逐步完善 这一情况会好转的. 我想 在1.2版 以后 一定要稳定 同时要保证 1.2 -- 1.99 版本绝对的兼容. 我当然也不会忘记进一步的优化和重构 再次谢谢你的支持 谢谢 |