Alex_朋友 说:
你看过金蝶最近推的一个开源的OperaMask么
Alex_朋友 说:
还行
Alex_朋友 说:
好像也是基于JSF
YanHua(Allen) 说:
奥,我们的表现层和OperaMask非常像
YanHua(Allen) 说:
都是基于jsf和一个ria的javascript框架
Alex_朋友 说:
哦
Alex_朋友 说:
感觉Opera咋样
YanHua(Allen) 说:
不错,我觉得做企业应用用JSF的这些库——Operamasks,Richfaces,icefaces,oracle a df等等都很好,效率绝对比struts之类的高很多
YanHua(Allen) 说:
不过学习曲线也高一些
YanHua(Allen) 说:
团队中得有一个人精通
Alex_朋友 说:
你感觉比Struts2什么的效率高?
YanHua(Allen) 说:
operaMasks做的很漂亮,是用JSF和extjs做的,相对于其他组件库成熟度底一些
Alex_朋友 说:
恩,我个人对extjs也有点保留
Alex_朋友 说:
这个玩意褒贬不一
YanHua(Allen) 说:
相对于struts2一个是组件化,当然struts2也可以做标签,但jsf的组件比标签的功能更丰富
YanHua(Allen) 说:
另外是事件驱动,写起来和vb或.net很像
Alex_朋友 说:
我们一直在想找一个快速开发,原来想过rails,以及grails
YanHua(Allen) 说:
还有就是比较OO,屏蔽了http协议,接近cs的结构
Alex_朋友 说:
但是总觉得一直做的是java,还是在java基础上想办法比较靠谱
YanHua(Allen) 说:
还有ide的支持,这个我觉得不是特别重要
YanHua(Allen) 说:
但jsf的ide确实不错
YanHua(Allen) 说:
完善的生命周期,扩展性很强
Alex_朋友 说:
用Eclipse?
YanHua(Allen) 说:
有eclipsed的可视化插件
Alex_朋友 说:
你们这次开发的产品的IDE也是基于Eclipse的插件模式?
YanHua(Allen) 说:
是的
YanHua(Allen) 说:
ajax特性,主流的jsf组件库都提供了ajax的功能,不要写一行的javascript代码
YanHua(Allen) 说:
当然不够丰富,不过企业应用的ajax效果都容易做到
YanHua(Allen) 说:
如果你在考虑到spring web flow 或seam的扩展,呵呵,JSF很强大
YanHua(Allen) 说:
当然缺点也很明显
YanHua(Allen) 说:
你们要做的快速开发框架是自己用吧?
YanHua(Allen) 说:
http://component-showcase.icefaces.org/component-showcase/showcase.iface
Alex_朋友 说:
恩
Alex_朋友 说:
自己用
YanHua(Allen) 说:
一个开源的JSF框架的演示,
Alex_朋友 说:
上段时间一个朋友帮写了一个eclipse的插件,模拟rails的模式,设置domain,根据模板自动生成增删改查的页面,包括dao,service
Alex_朋友 说:
通过向导的模式
Alex_朋友 说:
也解决了一部分问题
YanHua(Allen) 说:
我觉得快速开发分两个部分。1是你的编程模型是否精简,比如rails这样的2才是在这个精简的模型上做代码生成,至于是用命令行还是插件向导只是工具的问题
YanHua(Allen) 说:
你可以看一眼Spring roo这个项目,做的和grails很像,只是基于java的,使用aspectj来做java的增强,springsource提供了命令行和eclipse工具
YanHua(Allen) 说:
我使用过,还可以把,只是还处于rc版
YanHua(Allen) 说:
我手上有一个Spring web flow+RichFaces的封装框架,应该说非常的快速。有机会给你看看
Alex_朋友 说:
呵呵,好啊
Alex_朋友 说:
感觉软件的快速开发各个公司差异太大了
Alex_朋友 说:
很多规模不小的公司还在做着从头到尾的工作,效率那个低啊
Alex_朋友 说:
我们现在也是有这种感受
YanHua(Allen) 说:
我下一家要做的项目是用的oracle的adf,他的jsf组件有100多个,然后又一个页面流的东西,用jdeveloper做可视化开发,非常不错,我正在研究
Alex_朋友 说:
oracle的ADF很有名气,我有几个朋友也是用这个
Alex_朋友 说:
据说不错
YanHua(Allen) 说:
其实从jboss seam ,oracle adf和spring web flow能看到一个基本的方向,就是组件化+状态+导航流,现在我发现他们惊人的相似,只是实现不同
Alex_朋友 说:
我觉得要是在做企业开发的时候所有相关的组件,比如上传啊,图片处理啊,导出啊,Ajax效果啊,还有等等的问题,如果能统统通过组件解决,那效果就很不错了,而且更重要的是,如果支持定制接口就更棒了
Alex_朋友 说:
这样的开发才感觉是“企业级”的
Alex_朋友 说:
否则就很沮丧,小作坊的痕迹很重
Alex_朋友 说:
我原来的一家公司,公司活生生的被技术给搞死了,做一个项目失败一个项目
Alex_朋友 说:
每一个项目代码都不一致
Alex_朋友 说:
维护的人那个痛苦啊,跳楼的心都有了
YanHua(Allen) 说:
你比如说用JSF,上传啊,图片处理啊,导出啊,Ajax效果 包括google map等等都有通用的组件。——比如像选择人员等等和业务相关的组件,你用facelets很容易自己定义出一个业务相关的组件,重用度很高
YanHua(Allen) 说:
我最近面试,很多公司都有这样的想法,要做一个自己用的平台或工具。。。
Alex_朋友 说:
呵呵,看来这个问题始终是要解决的
Alex_朋友 说:
否则很痛苦
YanHua(Allen) 说:
恩。
Alex_朋友 说:
我在想我们这样的小公司改如何选择
Alex_朋友 说:
一方面大家都是用的ssh模式开发
YanHua(Allen) 说:
你觉得在开发中表现层占的比例大吗?
Alex_朋友 说:
70%
Alex_朋友 说:
!
Alex_朋友 说:
我们很痛苦啊,后台不是问题
Alex_朋友 说:
从来都不是问题
Alex_朋友 说:
我们希望看到的模式就是后台的java+前台的.net模式
Alex_朋友 说:
呵呵
YanHua(Allen) 说:
我就的逻辑层和持久层提升效率的可能性不会太大了
Alex_朋友 说:
恩,也不需要
Alex_朋友 说:
主要是页面以及相关组件
Alex_朋友 说:
这个本来就是java的先天不足
Alex_朋友 说:
开发一个增删改差和php或者asp那相差确实大,明显成本高啊,谈敏捷就比较扯淡了
Alex_朋友 说:
我发现敏捷大多在逻辑这一层
Alex_朋友 说:
好像很少有人对页面说敏捷的
YanHua(Allen) 说:
是的。
Alex_朋友 说:
比如TDD啊,说的不就是后台的东西吗
Alex_朋友 说:
我最近在看php,有些小的单子我考虑用php实现
Alex_朋友 说:
我们最近有一个给我们做外包的php团队,他们开发效率确实高
YanHua(Allen) 说:
前段时间看过页面的tdd,用thoughtwoks的selemius,愿望很好,不过不现实
YanHua(Allen) 说:
奥,php也很难简化表现层的开发啊
YanHua(Allen) 说:
我做过php,之所以快是因为分层简单,不像java太过的设计和分层,另外不用老是重启服务器
Alex_朋友 说:
但是修改的时候很快,java里修改涉及到类啊,配置啊,相对繁琐些。 我们这次给客户花了一个月做的项目,我们问php外包团队估计花多少时间能够完成相同功能,他们估计一周。
YanHua(Allen) 说:
其实你也java也可以不分那么多层吗,完全是个世界观的问题
Alex_朋友 说:
呵呵,明白。最近一个客户里用了一个java的论坛,我看全部是jsp,一个java代码都没有
Alex_朋友 说:
呵呵,感觉也不错
YanHua(Allen) 说:
是的
Alex_朋友 说:
如果真的是全部是jsp,在规范的基础上开发的话,修改还是和php差不多快的
Alex_朋友 说:
当场刷新当场见效果
Alex_朋友 说:
部署带来的阴影比我们想想的多多了,以前我觉得无所谓,现在感觉那个带来的时间浪费和效率的问题,很严重啊
Alex_朋友 说:
呵呵
YanHua(Allen) 说:
这个话题太大了,呵呵,看来咱们有很多的心得可以交流……等什么时候有时间我找你当面聊聊,或许能有好的灵感
Alex_朋友 说:
呵呵,我有想法,但技术能力有限,很羡慕你的技术能力啊
Alex_朋友 说:
我们团队很缺技术,总感觉做事不够畅快
YanHua(Allen) 说:
我也是瞎搞,应该多让别人提提意见
Alex_朋友 说:
有很多的产品和项目可以做的,前提是如果技术不再是问题
YanHua(Allen) 说:
奥
Alex_朋友 说:
我有时想想一个场景,同样一个功能模块,让不同的公司来开发,可能需要的时间以及结果千差万别,有的也许1天,有的也许一周,而且一周的质量还不如一天的
YanHua(Allen) 说:
《人月神话》里说过两个程序员的效率可能相差10倍或更多,放在公司上这个论断也成了
YanHua(Allen) 说:
成立
Alex_朋友 说:
恩,没错,这个可以引申为通用的28原则
分享到:
相关推荐
8. **个人中心图标**:通常是一个人的头像或者一个圆形轮廓,显示用户的个人信息和设置。 在"微信所有图标大全,精心收集.zip"这个压缩文件中,开发者可以找到一系列预设的微信风格图标,它们遵循微信的UI/UX设计...
例如,第6段材料可能是一个租房讨论,学生需要理解Nora对于住所的偏好,以及公寓的优点。而第8段材料可能是电话对话,学生需要理解通话双方的身份关系以及对话内容的核心,如会议安排或者旅行日期。 除了听力部分,...
《四合一即时通讯聊天源码APP群聊、私聊、朋友圈》是一款专为开发者和爱好者提供的集成多种聊天功能的应用源代码。此源码包括了即时通讯...同时,对于想要提升自身技能的IT从业者来说,这是一个极好的实践和学习资源。
该文档是关于吉林省长春汽车经济技术开发区第六中学2020届高三学生的英语上学期第一次月考试题。试卷分为两个部分,第一部分为听力理解,包括两节,总分为30分。第一节数量为5小题,每题1.5分,考生需在听完对话后,...
考生需在每段对话结束后,有10秒回答问题并准备下一个小题,对话只读一遍。第二节有15小题,每小题同样为1.5分,总计22.5分,对话或独白读两遍,考生有时间阅读题目和5秒作答时间。 4. **听力样题**:例如,第一节...
标题和描述中的“网络即时聊天系统设计与开发免费毕业设计论文”揭示了关于构建一个即时聊天系统的详细设计和实现过程,特别关注了客户端的开发。本文档深入探讨了该系统的架构、开发工具、数据库选择、功能实现以及...
在当前信息化社会中,人机交互(Human-Computer Interaction,简称HCI)技术的发展...通过深入理解和巧妙运用这些知识,我们可以创建出一个既实用又易于使用的语言学习平台,帮助用户在轻松愉快的环境中提升语言技能。
10. IM-uniapp-master:此项目可能是一个基于uni-app框架的IM应用源代码,uni-app是一款多端开发框架,支持快速构建iOS、Android、H5等多个平台的应用,利用Vue.js语法,简化了跨平台开发的复杂度。 以上所述,构建...
它由Neil Alexander开发,利用了Apple的Swift编程语言和Cocoa用户界面框架,提供了一个高效、直观且美观的用户体验。在深入了解Seaglass之前,我们先来了解一下Matrix和Swift这两个关键概念。 **Matrix:新一代开源...
全科医学主治医师考试宝典是一个由英腾软件公司开发的软件。适用于主治医师类资格考试。题库软件采用高仿技术人机对话模式模拟真实考场,并对典型试题、较难试题配有答题解析、答题技巧、考试要点精解,帮助考生快速...
基于微信小程序的传染病防控宣传系统是一个利用微信平台开发的应用程序,旨在提高公众对传染病防控知识的了解和认识。该系统采用了以下技术: 微信小程序开发技术:使用微信小程序框架进行开发,能够快速构建出适应...
【Vue2.0模仿微信APP】项目是一个使用Vue.js、Vuex、Vue-router和Webpack 2.0构建的前端应用,旨在实现与微信APP类似的功能。这个项目充分展示了Vue.js框架的强大特性和现代前端开发流程。 ### Vue.js Vue.js是当前...
比如,你可以设计一个与你偶像的虚构对话,增加趣味性,或者为广告营销创建假想的客户反馈,提升互动性。 【HeadImg1.img】和【HeadImg2.img】文件很可能是用来设置聊天双方头像的图像资源。用户可以替换这两个图像...
综上,ChatGPT不仅仅是一个聊天工具,它还扮演着内容生成器的角色,为各领域的创作者提供了丰富的素材和灵感。通过理解和应用上述的知识点,用户可以更好地利用ChatGPT提升自己的工作效率和内容质量。
ChatGPT是由OpenAI开发的一款基于自然语言处理的对话生成模型,其核心技术在于深度学习算法,能够根据用户的输入生成逻辑性和连贯性极强的回答。然而,为了使ChatGPT的回答更加丰富和准确,需要引入知识图谱对接和...
在例子中,与女朋友沟通就像构建一个复杂对象,通过不同的步骤和方式,最终达到沟通的目的。使用Builder模式可以让你专注于构建过程中的每一步,而不用担心对象的内部细节。 ### Singleton(单例)模式 Singleton...
"微信小程序_HiApp聊天工具源代码"是一个基于微信小程序开发的聊天应用程序,其核心功能包括会话列表、聊天界面、好友通讯录以及好友管理,覆盖了即时通讯的基本需求。 1. **会话列表**: 会话列表是聊天应用的...
关于Qt库,它是Qt公司开发的一个强大的C++图形用户界面库,广泛应用于桌面和移动设备应用开发。它提供了丰富的组件和工具,支持创建各种复杂的用户界面,并且跨平台性极强,可以在Windows、Linux、Mac OS、Android和...