RsOA电子会议室模块设计小结

1.  Java代码:

1.1代码包层结构

com.rsoa.meeting:抽象action,抽象form,定义外部接口listener,实现类listener,实现类model,系统const,验证格式validate。

com.rsoa.meeting.dao:定义数据访问层,每一层action对应相应的dao,数据库CRUD。

com.rsoa.meeting.dao.main:实现类action,实现类form,实现类biz:共同处理封装

com.rsoa.meeting.met***: 画面分层,一个画面对应一个action,form,model,dao

1.2 业务处理流程

Jsp画面按钮点击,触发其onclick()事件

Js:定义函数,获取所需参数,提交当前form

Java:action获取表单处理mode, 根据画面提交参数,判断其处理模式,调用对应的biz,biz调用其对应的dao.

2.  Jsp代码:

2.1画面统一采用apache html标签库, 通过hidden对象保持画面之间数据传递。

3. 系统功能及画面

    3.1 : 登陆画面处理

              1.用户名,密码。 双向加密:采用Blowfish加密工具

              2.判断登录身份,所属公司,语言选择,记住密码(cookie确立),,session确立

              3.登录失败,记录失败次数,达到3次,锁定该账户。

    3.2 : 主画面

              1.初始化面加载主画面显示的插件。

    3.3 : 左侧导航栏

              1.每个子插件的管理。

    3.4 : 1.每个子插件的管理画面

4. 项目心得:

        1. 关于编程规范

              严格遵守Java编码的规范,项目包结构统一,类名规则统一。特别是在没有完整的用户开发文档的情况下,团队开发新模块,各种规范一定要严格遵守,避免硬不必要的问题耽误项目进度。

        例:再RsOA系统开发的手机版的过程中,因为之前PC版的电子会议室的编码我实现了大部分功能,老大就将手机版的分配给我。接到任务,因为之前有PC版的经验,手机版无非换汤不换药,数据层都调用共同的dao,然而在写到逻辑层时,我感觉自己PC版的逻辑层代码可以重构,而且代码冗余比较严重,所以在没经过领导的批准下,私自重新写了一套手机版的逻辑层。当我高兴的想老大交任务时,同时说了我修改代码的初衷,结果却并没有我想的那样,老大并没表扬我,而是批评了我。原因是,如果当初在写PC版的时候,遵守严格的编码规范,每一个类名,每一个方法名,遵守统一的规范,完全可以避免这种情况。

        2. 关于团队沟通

        1). 再团队10人以上的开发中,同一模块中由各个开发人员开发其子功能,每个功能都制定了详细的开发进度,各个子系统之间调用共同的逻辑层,和数据层,同时也会调用到其依赖的另一个子功能,这便要求二个子功能的开发人员对自己的实现方式相互沟通,熟知对方的处理模式,避免不必要的代码冗余。

        2). 团队之间的技术氛围,成员之间的关系也应加以重视。团队开发中最忌讳的便是领导发现问题:成员之间相互‘扯皮’的现象,推卸责任,最终导致影响成员之间的关系,延误开发进度。工作之余,多和同事多交流,一起吃吃饭,聊聊生活,聊聊彼此感兴趣的话题,彼此多交流,多沟通一些技术性问题,对自身技术是一种提升,更多的是同事之间的关系越来越融洽,工作起来,也越来越有默契。

        例:项目后期:公司为项目组安排来3个从外包公司签的有经验的开发人员,新的成员进来,熟悉整体流程项目,编码规范,正式投入编码。然而开始一段时间不久,问题来了:同事中一位负责社员管理模块后台的,由于身体不适,请假一段时间,和他一起负责社员管理模块的另一位成员,再开发到显示层的时候,和他要数据,但他由于请假,耽误了要提供给显示层的数据,导致所有人等待他们这个模块的进度,(因为画面无数据,客户需要看进度),如果当初同一模块的两个人做好沟通,这种情况完全可以避免的。

        3. 关于汇报工作

        团队开发中,作为开发人员,及时的像领导汇报工作情况,以便领导更好的控制开发进度。每天按开发进度完成自己所负责的开发量,不拖项目进度,认认真真检查自己所写的代码,是否可重构,是否可提出抽象出共同的方法。尽量完善自己代码的健壮性,能简则简。对于领导汇报自己项目进度,切莫成竹在胸,将自己做好的东西测试,在测试,画面中一个按钮的大小,哪怕是一像素的区别,都会是系统中一个完全可以避免的bug,测试完成,和项目经历多交流,多沟通,对于自己感觉完美的代码,多听听领导的意见和建议,那些地方还可以改进等等。

        4. 关于工作态度

俗话说: 态度决定一切,在学校的时候,我对这个并没多打切身体会。但工作了,特别是在团队项目中,端正工作态度,是必不可少的职场素质。在OA系统后期测试间断,我负责画面显示及一些细节的测试。 很多时候,我都感觉所有画面已经接近完美,没有任何问题,画面风格一致,但当我想领导说没问题的时候,他总是能找出那么一丁点的小问题,然后说:“这就是你测试的结果?”,同一种系统,为什么客户会选择不同的开发公司,并且会长期同这家公司合作,原因就是对他们的产品满意,与之而来的便是对他们工作态度的认可!废话没敢多少,赶紧屁颠的去把那个button 的大小调好!

        5. 关于编程技术

本系统中没有用到任何Java框架,反倒引用了大量的外部jar包,对于项目的整体开发模式,大体采用MVC架构,以插件形式开发整个系统!因为项目是二次开发,所以我们只是针对小模块的设计,了解整个系统处理流程,然后按要求,按业务编码。用的的技术也都是常用的:数据层采用JDBC,业务层采用Struts1,表示层采用Jsp。 对于学过SSH(struts2+spring+hibernate) 的我还是问题不是很大,上手也很快,不过在编码的过程中,学到的更多的是除了编码之外的一些东西:如,日志排错,会看堆栈,模块的设计,数据库的设计等等。 这些都是对于我这种只会编码的人一种极大的进步! 对随之而来的是,对所谓的SSH生疏了,现在回忆起来,还真感觉自己不如同龄工作的学生了!

        6. 关于日语学习

鉴于中日关系因钓鱼岛事件如此紧张,日本这个敏感词语,真不想提。但是公司花时间来培训我们这些新人日语,而我从中也算是日语入门了,简单的回忆一下吧。 进入公司中期,由于找实习生比较多的原因,公司决定对实习生实行日语培训,我因此也沾光,不要脸的申请想参与培训。不过培训过程中,对于我这种日语完全没概念的孩子,真的学起来特吃力,所以...培训结束后,我的日语水平相对其他人,菜的不是一点,当然,培训之后的考核也没通过,不过幸好没扣工资,嘿嘿。 关于公司对于新人开设培训课,这点我非常认可,很多公司,对于新人都会采取相应的培训,以便更好地适应公司工作,希望以后多多遇到类似公司,嘿嘿!

        7. 关于工作生活

说实话:我的工作生活,几乎是单调+无聊。 每天8点起床,8点10从家出发,9点到地铁站,40分钟地铁,到人民广场,10分钟到公司,9点30开始上班,下午6点30下班。其实这种上班规律到不奇怪,奇怪的是我一天的时间:说话超不过10句,你信麽! 好吧,不管你信不信,我信了!这就是程序员的悲哀,苦逼啊! 简单的说,工作之余的生活,非常糟糕,也非常无聊,没有以前学校时的那种紧迫感,随之而来的却是一种过一天算一天的心态,看来我真该好好反省反省了...

        8. 关于未来

今年的我22岁,91年的准程序员,年底工作也蛮1年了,有得有失,有酸有甜,有喜有悲。 未来的路该怎么走?该成为什么样的人,这些都不重要!至少我心里有目标,有梦想! 未来2年,将继续为目前就职的公司奉献自己的光合热,因为在这里,有让我值得纪念的人,值得纪念的事,跟重要的是:它是我的第一份工作!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值