EOS7项目开发建议

5年前

近一段时间在客户现场支持,客户在开发当中遇到了很多使用eos7的问题。其中一部分为在使用eos7中对项目的管理不规范导致的,在此我粗略的整理了几条在开发中可以借鉴的方法,以供参考。


一、项目在开发中要保持eos版本一致和开发环境jdk或者jre版本的一致。项目组成员在使用eos7时保证同一版本和相同的环境是很重要的一个前提,版本的不一致,可能导致开发出的项目出现项目冲突等不可预知的问题。


a)         某客户项目中曾出现studio项目启动使用1.6的jdk,而server启动使用自带1.5jre启动导致.class文件版本错误而无法启动服务的状况。


二、开源代码的使用,因为源码开发,有未知的修改因素在里面,项目组应该规范源码项目的使用,例如在项目组中只有1~2人导入全部源码项目并负责进行源码维护,其他人无法进行修改提交,代码的更新和权限控制可以通过svn、cvs等版本控制器等实现。


a)         在客户的支持工作中多次发现项目组成员中使用的coframe版本不一致,有的项目组成员使用的是7版本的coframe,有的项目组成员使用的是7sp1版本的coframe,导致各个项目组成员间代码出现冲突,不兼容的现象。


b)         还有在支持工作中,出现了coframe被未知人员修改spring配置文件导致用户管理无法删除用户的bug出现。


c)         目前有客户处于7~7sp1的转换阶段,项目组中开源代码的版本混乱,遇到这种情况,eos7中的governor中导入了高版本sp1的coframe,源码中导入了低版本的coframe,导致在使用coframe时出现了源码未找到的错误。


三、客户项目的开发,使用自己公司的标识进行项目和构件包的开发,并且保证各项目之间的源码独立以及版本控制。并且在这里建议客户在开发时,分配好任务职责,由一人单独负责一个构件包或者一个小组负责一个eos项目的开发。避免在同时使用资源时导致资源冲突。


a)         目前接触的客户中,他们将自己的项目与普元的开源项目混在一起开发,并且项目名称也以org.gocom.或者com.primeton等作为项目名称或者构件包名称,导致部署时自己开发的项目ecd与普元产品自带的部署ecd混淆,无法区分,其中出现了将sce的部署包错误删除的状况。


b)         他们在开发过程也也出现了一个项目的开发以另外一个项目作为依赖,并且分别在原来项目和正在开发项目中都导入coframe源码,导致现有项目开发完成后部署出现未知问题。


c)         在在线开发中出现了两个人使用同一个数据库,且在开发同一个表单功能或者视图功能,导致资源冲突,无法协调。


四、建议客户在一个项目中使用一种技术方案进行开发。例如单独使用eos+nui+ajax进行项目开发,或者eos+richweb+页面流进行开发。


a)         在客户的项目中出现了项目组成员在一个页面中使用的nui和richweb两种技术进行同一个页面的开发,这样导致了开发完成后页面不符合预期要求且出现较多bug,支持人员在现场支持也比较困难,琐碎问题较多。

COMMENTS

2 个回应

Normal_c22c397cd458cbfd31a1d629a1b224f7595831

feiyj 2015年07月28日 23:17

谢谢分享

回复


Normal

liuyichao 2015年07月30日 17:53

@feiyj :大家也可以一起完善这个。

回复


需要 后方可回复
如果没有账号可以 一个帐号。