首页 | 公告 | 参考资料  | 教程 | 框架/设计 | 源码/下载 | 构件产品 | MyRSS | 博客 
简易java开源论坛->EasyJF专区
  版主:招聘中
 版面公告:Java新手提问及技术交流区,EasyJF有专人进行解答.
搜索 文章标题: 发表人:
[回复] [精华帖] [版主管理]
 主题:以下是easyjf官方群中关于easyjf框架如何easy的激烈讨论片断,请大家继续积极参与讨论。 [收藏]
  [引用回复]

以下是easyjf官方群中关于easyjf框架如何easy的激烈讨论片断,请大家继续积极参与讨论。



calmness
我想问一下,零配置的规则是什么?

stef_wu
只配置module
page new出来
service @Inject
或者继承abstractPageCmdAction

大峡
有什么问题?

calmness
你看可不可以做灵活点,action不作为一个抽象,针对方法进行处理,就是说配置的时候可以随便配置

任何一个类,然后通过注释指定某一方法处理请求,可以是bean,也可以是action,什么都行,这样就

减少了框架的依赖,方便移植,而且也可以满足旧有的习惯,习惯用action的也可以自己写个action,

只需要用注释指定一个方法处理即可,而form呢就通过注释指定,对form没要求的话也可以不指定,这

样就灵活好多,而且也很简单,用户需要做的就是指定请求处理的一个类即可,其他的配置都不需要,

基本通过注释搞定一切,抛弃以前的配置方式

大峡
ction不作为一个抽象,针对方法进行处理,就是说配置的时候可以随便配置任何一个类,!
跟 webwork一样了。。。。

calmness
我没看过webwork,但是我觉得这种方式是最简单的
这种方式的好处我以前也说过,那就是可以使用纯粹的bean,不会对框架有任何的依赖

大峡
但实际应用想过没?

calmness
你说说

大峡
玩玩Spring之八卦MVC框架与 “中庸”之道
http://myrss.easyjf.com/html/20060522/1187140214822294.htm
这是我一年前的想法
看到这里很多人一定会疑问,在前一篇演示webwork应用的文章中,webowrk都快被捧上天了,而现在你

又来推荐EasyJWeb,这不明摆着忽悠人吗?EasyJWeb这个轮子跟他们有什么区别及特色呢?
  要回答这个问题,说来有点话长,这得从我们中华民族儒家文化中的核心思想,“中庸之道”说起

(中庸之道是本文中的一个主角,请大家鼓掌!)。“中庸者,以其记中和之为用也;庸,用也。孔子之

孙子思作之,以昭明圣祖之德也。”-《中庸》郑玄注;《中庸》中有说:“天命之谓性,率性之谓道

,修道之谓教”。怎么样,很多朋友看不懂是吧?谁叫咱们80后人注重素质教育,搞到连老祖辈的文化

思想核心都搞不懂。若长此下去,恐怕三、四十年后,咱们的后辈都将会看不懂也听不懂中文了。
  什么是中庸?这里我用通俗点的语言看能不能解释一下。我认识一位大伯,他以前是知识分子,但

他因为他的知识而坐了10年牢,于是他把他儿子从小就带进了我们贵州最穷的山区里面,如今儿子变成

了文盲。另外我还听说有一个人本来住在南极的,但后来他说南极太冷了,他要搬到北极去住,到了北

极他才发现其实北极跟南极一样的冷。为什么会这样,因为他们不懂中庸。
  再说现实一点,好比我们的有些朋友,刚出学校的时候什么都敢想、敢做,但在社会中若打拼一两

年,经历了一些挫折或失败后,就歇菜了。“梦想”、“激情”、“脚踏实地”可能被人利用过,我们

可能因此会犯错、吃亏,但那是“人”的错,不是“梦想”、“激情”、“脚踏实地”本身的错,我们

不能因此就变得没有梦想、没有激情、投机取巧、处处设防,做人得学会中庸。
  还是没明白,对吧?那么说到Java技术上来就是不要因为有了类(Class)的存在可能会破坏我们面向

对象编程的精华,所以你就把类(Class)从Java中消除,而只保留接口(Interfaces)。同样的道理,

你不能因为Struts的action中的那四个讨厌的参数看起不爽,你webwork就把它们全部去掉,一个不留

。其结果就是过分的简洁、高雅造成了很多新人的都无法理解及领悟其中妙处的尴尬处境。为了给页面

传一个参数得翻遍大大小的接口API说明文档。本来一个简单的MVC你却暗藏那么多华丽的机关,跟我们

这些平庸的程序员玩起捉迷藏,有必要吗?有时还得学学人家ASP、PHP,就那么简单的几条语句,还不

一样搭建起了一栋栋赏心悦目的高楼大厦吗?这应该也算是很多Struts粉丝不喜欢webwork的一个原因

吧。
  可以这么说,EasyJWeb的做法恰好就是得益于这个我们中华民族所独用的中庸思想,即要保持一定

的技术先进性(什么[I]OC、[A]OP、OX、拦载器等值钱的我们通通都要!呵呵),又要照顾广大的普通

代码“水泥”工人的应用及理解方便。

calmness
我觉得以纯粹javabean形式处理已经成为趋势,我们不应该再走老路,javabean是j2se的标准,有利于

以后的扩展,而且更有利于客户应用的移植

大峡
我以前的想法可能有点作古板了。
但是凭经验,在大多数项目里面,mvc这一层,基本上很少有普通的javabean

calmness
我这样想并非是一时的冲动,而是想了很久,一直依赖我都非常不喜欢struts这种方式,配置麻烦,维

护麻烦,移植麻烦,仅仅就是为了把MVC分得更清楚,但是事实上这种MVC的实现让我们在实际开发中烦

恼重重,在我第一次接触jsf的时候,它给我的最深印象就是没有了action,仅仅是javabean,让我看

到了更轻松的方式,而ibatis的petstore实现,一个action引导全局,处理都在javabean,又让我体验

到javabean的简单以及魅力,可惜我没领略过webwork,不管如何,我认为,没有必要再有action,或

者说action这个类应该由用户来定制,而非是通过继承

大峡
我更倾向于中庸。
EasyJWeb已经不需要继承了。
JSF是基于组件模型的,说起来更正统

calmness
我不太了解你为什么要中庸,这种中庸又带来什么好处?就是为了action看起来更符合习惯吗?使用

javabean一样可以做到,你喜欢的话你可以专门写个action,一样可以实现你的中庸方式
我这种方式并非是完全废弃原来的action,只是给了用户更多的选择,他喜欢旧的方式,一样可以很容

易的实现一个action

大峡
其实以前的想法是为了让新手更容易理解及使用。
中庸的目的是为即能满足高手们灵活多变的需求,也能方便低手理解程序。

calmness 但是我们要清楚,现在的新手再非以前那样以action开始了,可能很多新手最先接触的不再

是struts的方式

大峡
然后通过注释指定某一方法处理请求,可以是bean,也可以是action,什么都行,这样就减少了框架的

依赖,方便移植,而且也可以满足旧有的习惯,习惯用action的也可以自己写个action,只需要用注释

指定一个方法处理即可,而form呢就通过注释指定,对form没要求的话也可以不指定,这样就灵活好多

,而且也很简单,用户需要做的就是指定请求处理的一个类即可,其他的配置都不需要,基本通过注释

搞定一切,抛弃以前的配置方式  
这个方式可以的。

calmness 而且最重要的是,struts的方式并不一定比这种javabean的方式更容易理解

大峡
现在的bean,像搞成<module path="/kkk" ref="kkk"/>类似的方式 。
其实你可以试着改改,然后通过这种方式来做一些小东西。看看怎么样方便?

calmness
其实对于这种方式还有一点我还没想到该如何去做的,就是如何指定请求的处理,通过配置又是我所不

愿意的

大峡
在启动的时候,扫描所有包 然后把注释转换成配置信息。 就可以了。可以一个配置都不要的。

calmness
这个方法我也想过,就是觉得太笨了,有没更好点的

大峡
更好点的就是用约定代替配置。。。

calmness 约定是可以考虑

大峡
以前tony说,也可以直接配置几个要扫描的包

calmness
通过URL映射约定

大峡
URL映射约定这个都已经有了的

calmness 现在可以通过URL指定某个action吗?
有了是什么意思?
calmness annotation加上约定,不想写annotation就直接通过约定搞定,简单快捷

大峡
我是说,现在只需要加上扫描annotation这个功能即可实现你说的

calmness
至于1.4的用户,我想不用考虑了吧,既然使用这种方式就已经不需要考虑1.4的了

大峡
也可提供一个缺省的配置
就像现在处理easyajax那个action一样

calmness
这个就没必要了,反正也不会把原来的删除掉,1.4的用户要用的话,肯定就只有老老实实的一个一个

去配置了

大峡
calmness现在对EasyJWeb的代码应该很熟悉了吧?

calmness
也不是很熟悉,只是大概了解了一点,怎么了?


大峡
把代码熟悉了,我们的开发队伍才壮大啊。

calmness
这个倒不急,反正我现在先考虑一下刚才说的怎么做,也不会更新上去

大峡
你说的那个要实现起来非常简单的,应该就是一天的事情。

calmness
熟悉代码还不容易,来来去去就那些东西,这个不是问题,问题是该如何去做

大峡
要先把以前的熟悉了,我觉得才能更好的找到问题的所在。  

calmness
这个当然,我一有时间就会看的,不过我觉得找问题更应该从使用角度去找,内部实现虽然重要,但是

最重要的还是用户体验
我发觉我们都太注重功能性的需求了,反而忽略了使用体验

大峡


calmness
其实在这之前我请了公司的几个同事试着去使用easyjf了,他们看完试了下,一致认为复杂麻烦,这也

是我今天跟你们谈这些的主要原因

竹雨林风  
那你把意见都反映出来。赶快跟大峡他们说。。。。

大峡
现在的东东确实一些东西显得复杂了。
但比较关键的是缺少文档

calmness
对于他们来说,使用这个框架很简单,但是他们认为麻烦是因为他们觉得这个框架并没有做到一个easy

的层度,不是缺乏文档的原因,而是远远没有达到easy

大峡
比如,要怎样才easy?

calmness
其实对于我们来说,这种框架,大概看一下demo就知道如何使用以及配置的用法,可是这不是因为它

easy,而是因为他很多地方符合我们思考的惯例,可是却扯不上easy,我跟你们之前都谈过easy的问题

,因为我觉得你们把easy和思考的习惯混为一谈了,简单来说把,让一个新手来学习easyjf和struts,

他会认为两个的难易程度是差不多的,但是你让一个会struts的人来看easyjf,他会觉得很简单,但是

这不代表是使用easy,而是对于有经验的人的理解easy

calmness
这就是我们目前要分清楚的easy概念
或者这样的easy符合你的中庸,但是却不符合使用easy
不知道你是否明白我的意思

大峡
所以要改进啊。你觉得呢?

竹雨林风  
calmness 能把改进意见提出来吗?

calmness
改进的方式之前也说了啊,只是那是大概的设想,实际效果如何也要试了才知道
我主要就是认为按照旧的实现方式,那我们就避免不了这种伪easy
因为那种方式就注定我们一定要不断的配置,配置是easy最大的障碍
而目前来说解决这个问题主要方式就两个,一个是annotation一个是约定

calmness
对了,刚才你说开发的才四五个?但是网站上的成员很多啊,不会那么多就只有几个做开发吧?

竹雨林风  
因为成员各自都在忙自己的事情,所以要重组。现在是一直没清理。

calmness
如果可能最好就是想到除以上两种以外的方式来解决,不过暂时我还想不到,呵呵,所以希望大家一起

想想
calmness


大峡
EasyJF很多项目
EasyJWeb这个项目主力开发人员就4、5个

calmness
我们目前要做到easy,主要要顾及两个方面
一个是理解easy,一个是通过减少用户操作达到使用easy,现在easyjf只做到了第一点,第二点基本仍

然是在原地徘徊
理解easy可以通过一个好的文档搞定,第二点就需要一种新的实现方式来达到,这种方式是什么就需要

摸索了

大峡
第二点就需要一种新的实现方式来达到,这种方式是什么就需要摸索了 !!!
这一条说得很对

calmness
所以我第一天来论坛发帖我就说要创新,创新就是在这方面

大峡
我觉得这种方式好,其实另外一个人觉得并不好。
大家也赞同啊。

calmness
其实我不知道你有没有注意到,我在网上看到很多人对easyjf的评价,至少目前我还没看到有说它easy

的,当然,除了开发人员,呵呵,我不是故意刺激大家,这是我们应该正确面对的

竹雨林风   高手们觉得很简单。看两三个小时代码就会了。

calmness
我们认为easy是没用的,看论坛里到处都是问怎么用的帖子就知道了,实际上它并不easy

stef_wu
easy有很多方面
入门容易不一定开发容易

calmness 2
至少对于easyjf来说,入门都不easy的话,那就谈不上easy了

stef_wu
有过web框架开发经验的人用起来肯定会觉得很简单

calmness
那是当然,你叫有经验的人去使用任何一个新的框架,基本都很easy

大峡
我觉得关于easyjf这方面,我们要多学学Microsoft

calmness
但是这就是easyjf所谓的easy吗?如果仅仅是这样,那还是改名字的好

William Raym
EASY也要看从哪个角度来讲

stef_wu
你觉得rubyeasy么?
可能很多人觉得ruby入门都很easy,
为什么?
因为所有的人都可以在1分钟里面做一个CRUD出来。
但是他们入门了么?
没有。

William Raym
如果从一个连英文都看不太明白的人来学习一个新的框架,肯定要一定成本

calmness
事实上,rails不单入门easy,开发也easy,而我认为的easy就是入门和实际开发都easy,如果连入门

都做不到easy又谈何easy呢?
因为英文的关系而花费的成本那就是另外一回事了

stef_wu
而且,
就算做成全annoatation的话。
1,你认为现在有多少入门的人知道annotation??
2,除非你是开发人员,不然你同样需要时间和成本来easy

William Raym
入门就EASY了,

stef_wu
rails你觉得入门easy么?

William Raym
你指的EASY入门是什么,一看视频就能根着作出一个应用出来

stef_wu
你认为的入门就是能用脚手架做一个CRUD 的app么?

calmness
事实上不是我觉得,而是大部分人都觉得,当然除了那些连对象是什么都不知道的人


stef_wu
你知道要算rails入门你需要学完ruby这一个新的语言么。

calmness
stef_wu你知道要算rails入门你需要学完ruby这一个新的语言么。
这是另外一种情况了

stef_wu
说rails入门了的人可能连ruby都不懂。。
如果你认为这个就是入门了,
那我没有话说,
我们用。net算了

William Raym
你假定RUBY都会了

calmness
这样争论是太主观了,应该换种方式来衡量

stef_wu
到论坛上讨论

William Raym
EASY应该从用户使用上,我们封装了大部分常用的功能

stef_wu
这里聊完了什么都没了
论坛里能留点记录

calmness 或者应该拿使用成本来衡量吧,就用户的代码量吧,这个应该更实际点

calmness
帖到论坛,看看使用者的说法是最公正的

stef_wu
对,
那ruby确实简单,
一个命令一个CRUD就出来了,
那我也可以,
我用ssh,esh都可以

calmness
stef_wu
对,
那ruby确实简单,
一个命令一个CRUD就出来了,

那我也可以,
我用ssh,esh都可以
既然可以做到,为什么不做呢?

……
请大家继续讨论……
 楼主:竹雨林风 2007-06-28 16:55:19.687
 
  [引用回复]

stef_wu 22:19:08
怎么没有做?、

0007 22:19:10
http://localhost:8080/index.ejf/
stef_wu 22:19:20
原来的easyjwebtools不是就是么?
 发言人:222.183.189.89 楼层:1  2007-04-29 09:52:45.233
 
  [引用回复]

easy是什么  我认为VB就是一个很好的例子。
我构想中的web框架是
a 框架
一个操作台上 放图标
(首页)-{提交}|-(待办事宜)
             |-(登录失败)
然后点图标(首页) 出现html页面编辑  点 {提交} 出现代码填入

B 框架
完全是用应用程序开发 开发完成 点生成html 整个应用程序变成web应用
 发言人:210.75.39.185 楼层:2  2007-04-29 12:50:42.17
 
  [引用回复]

哈哈 匿名也可以提交成功
 发言人:abc 楼层:3  2007-04-29 12:52:02.733
 
  [引用回复]

a  b 框架大家认为够easy吗
 发言人:abc 楼层:4  2007-04-29 12:52:31.327
 
  [引用回复]

哈哈 匿名也可以提交成功

呵呵,参照baidu的贴吧的,支持匿名回贴的哈,开放一点,方便讨论。
 发言人:大峡 楼层:5  2007-04-29 13:15:14.61
 
  [引用回复]

其实任何框架,用熟练了都很easy。RoR我没用过,JSF和Struts我是用过的,感觉EasyJWeb上手快一些,而且原理也比较简单,特别是用velocity模板,而velocity语法也很简单。而且分页都有现成的,效率也不错。(一家之谈,呵呵)
 发言人:一品 楼层:6  2007-04-29 13:15:48.127
 
  [引用回复]

easy是什么  我认为VB就是一个很好的例子。
我构想中的web框架是
a 框架
一个操...

设计这些呢?不用管建模这些过程?还是全部实现可视化?
 发言人:大峡 楼层:7  2007-04-29 13:15:58.25
 
  [引用回复]

建模也等于在设计  建完模型  其他的事就是填空 --- 一定是填简单的空
智商大于 10的都不会写错的。
任何超过10个英文一定要有工具生成或自动提示.

然后 让小朋友们上吧 去填空 你就拿起你的鞭子(测试)吧

----abc
 发言人:210.75.39.185 楼层:8  2007-04-29 13:31:28.53
 
  [引用回复]

SUPER SB
 发言人:202.101.47.53 楼层:9  2007-04-29 16:52:00.577
 
  [引用回复]

Easy
我觉得 2点
1:开发速度比较快
2:技术一般的也能拿他开发含金量比较高的程序
 发言人:61.171.149.35 楼层:10  2007-06-28 16:55:19.703
10条回复 共1页,目前为第1 分页: 
[精华帖] [刷新]
 请在下面输入回复信息

表情图片
(加入心情图标)



内容:
相关图片: 各图片之间用逗号隔开
相关附件: 各附件之间用逗号隔开
用户名: 您还没有[ 注册]或[登录
 

Aboutus | 联系我们 | 程序开发 | 网站地图 | 留言板