项目总结---项目管理系统

PMS项目总结                                                     

      经历半个月的日夜奋战,自培训以来的第一个较大项目(未使用框架,纯手工的servlet)终于答辩完结。虽然到项目后期,测试的时候才发现自己写的东西还有很多需要完善地方,不过这也许是基于自己了解的多了,对自己已有知识更加完善的认识,项目答辩通过了,整体还算满意,这半个月的辛勤付出没有白费;虽然有时在电脑前坐的眼睛发痛,闭上眼睛就可以睡着,但每当解决一个BUG,实现一个功能时,一切一切的又是值得的;因为有一个不错的搭档,这个半个月不仅是充实的,也是很快乐的!虽然项目有一万行左右,但从中学到了很多新知识,也检验了自己之前已学的知识,实战确实是检验真理的最好方法。在此特一一总结,以便日后参阅。

 首先,前台页面:

      1.在用CSS设计页面布局时,若引用框架,尤为注意不同浏览器间的兼容问题,相同的属性,在个别的浏览器上可能会不起效果,甚至效 果反差,如设置背景的透明色rgba(),IE上则无效果; 

     2.在设定背景图片及body的大小以及使用绝对定位某些元素时,不同显示器的不同分辨率也不得不考虑,避免在别的显示器上出现左右滚动条而影响页面整体美观。

     3.细节决定成败:软件的页面并不一定是绚丽、花哨即是好的,只要简洁直观体现功能,让客户方便操作即可(这也是本次项目中犯的一个较大错误,对页面特效追求过高)。其次是某些按钮,错误信息的提示,弹出框的设计,这些组建的位置要符合客户的使用习惯,不必搞一些另类的布局,还要注意页面之间合适的跳转逻辑,从而使得客户不容易上手操作软件。

    4.javaScriptjquery特效和前端验证:在本次项目终结测试时,也发现少写了不少的验证。对于前端只要客户可以输入文字的地方,我们都要做细心的验证,如输入文本,日期,电话号码,邮箱,及中英文符号,输入不能为空等。其中,客户输入的内容可能含有HTML标签,此项验证要在每个客户可输入的区域加以验证,同时也防止恶意输入。在此处,我们可以在程序后台接受到客户输入的数据和存入数据库显示与页面之前将内容中的<,><,>替换掉;如客户端输入:“<div style="color:red;">ABCD</div>,这样数据库中存入的是“< div style="color:red;">  ABCD</div>,在页面输出时仍为“<div style="color:red;">ABCD</div>”,但“ABCD”不会为红色,此处若输入的内容是同文本编辑器如Kindedtior等,则不必验证,文本编辑器会将其自动转换;

   5.其中在引用文本编辑器时,若存储数据库的内容中含有表情图片,此时存入数据库的内容中则含有标签,所以再将这些内容显示于页面时,不能再使用.text()方法将其插入div中,需要使用.html()方法;若想让超链在显示于页面时起作用,则需要将其用<c:out>标签输出。在这些客户可输入的区域,若有合适的插件,尽量采用插件可以减少验证,如在要求输入日期时,可以采用插件“My97DatePicker”,此插件就带有对输入的内容不符合日期格式时的验证。

   6.通过此次项目实战,也体会到了jquery强大的选择器功能,轻松方便的或得某个元素的属性及值,如:获得动态创建的元素用.live()方法等。其中在获取动态创建的某个元素时,并不能直接通过其Idclass名直接获得,需要使用一个原本已存在的div等一级一级查找,定位。

其次,后台程序:

     1.在编写代码之前,要理清业务逻辑,“代码是思维的延伸”,只要业务逻辑思维清晰,实现代码只是时间的问题。避免未理解逻辑之前仓促编写代码,以至于逻辑错误,重写。在编写代码时,注重代码的重复利用性,“不要重复制造轮子”,即某些方法使用的次数多时,就需要将这些方法封装起来,以便再次使用时简单易行,节约时间,避免重复编写;编写代码,要有一定的格式,即自己写的代码要让别人也能看懂,要适当的添加注释。

     2.数据查询的高效性:当处理大批量数据信息时,数据库要能够对客户的请求及时高效的做出响应。有时我们可以适当的利用缓存,让数据根据需要先显示于页面,然后在存入数据库,分清业务的主次。但此时要确保数据不会丢失,能够安全的存入数据库。

    3.系统的安全性:如设计系统的高级管理员权限,从而来限制普通登录人员的操作,避免普通用户登陆后可以通过URL请求来或得高级管理员的操作权限,从而保证整个系统的安全性,使得数据库中的数据不会被随意的更改(这也是这次项目中遇到的一个比较头痛的问题)。

再而,数据库:

    1.在我们创建一个项目的初期,最重要的最基础的也就是数据库。在创建一个数据库时,对其中的各个表的属性字段一定要分析全面,包括数值类型及长度,避免在后期编写代码时因数据库中表的缺失某些属性字段,从而导致重新建表或修改表,以至于时间的浪费与一些代码的重写。

    2.数据库的安全性:在建表时,某些属性的值的长度要设的足够用,当然也不能够过于浪费,避免后期数据存储不下,数据库崩溃;同时还要建立必要的外键约束,既可避免客户无意中删除某些数据而导致重要数据的丢失,也可避免数据库中数据的冗余,确保数据库的高效可用性。

最后,责任:

    1.对自己负责:在实战过程中,不能降低对自己的要求,自己编写的代码不能得过且过,不仅仅要实现表面的基本功能,而且还要将功能的实现做到更优、更高效,这不仅仅是对自己技术的提高,也是在培养自己的严谨性;实战,既是对过去所学知识的运用,从而发现自己的不足,同时也是学习新事物的最佳机会,因此保持一颗乐学的心态尤为重要,要做到经过一次项目,技术就要有所提升。

    2.对设计出软件负责:软件也是商品的一种,客户购买软件便是想利用其给自己带更大的利益,虽然软件不同于食品,出问题时会直接危及人的生命,但一个有问题的软件也会潜在的会给客户带来不可估量的损失,如重要数据的丢失,表单的重发提交等。因此我们在编写代码思考业务逻辑时,不仅要面向项目这个对象,也要时刻的面向客户,时刻做到对客户的负责。站在客户的立场,力争实现软件的最大利用率与最高的安全性能,从而是软件更加人性化,可用性更强。

    3.对团队成员负责:本次的项目老师让我们以小组为单位开发,既然是一个团队,而且我们是为了学习而进行的开发,因此在分配项目任务时,就要本着让组员共同进步,一同学习的初衷,均衡调配任务;同时还要时刻关注项目的整体进度与每个组员的任务完成量,及时对项目功能的整合,即使发现各个功能间问题,及时解决,避免在项目完结时仓促整合,问题多多,难以解决。总之,小组成员既然选择了相同的一个团队,就要发挥出团队成员间的协作开发能力,担负起对项目,对团队的责任。

       参加培训已四月有余,经历一次实战的检验,发现自己的技术有了显著的提高,但发现需要学习地方也更多了。再有一个多月,培训也就结束,大学也毕业了,要珍惜最后剩下的这段时间,积蓄以后工作的基础,加强自己的技术!既然选择了这一行,便只顾风雨兼程,年轻的我们此时不拼,更待何时,逼自己一把,你会发现自己会有很大的潜力!


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值