考勤系统编写总结这个项目是我做的真正意义上的第一个项目,但是没有按时完成,在此,我对在这个项目中遇到的一些问题及困难进行一次梳理,以便以后能够顺利完成其他的工作。1.在接到这个项目的时候,我所做的第一件事情是设计界面,然后根据后来遇到的问题对界面进行修改,但是后来和陈彬、冯薄进行沟通才知道这一步应该是项目接近完成的时候才做的事情。对于这个问题,如今我总结如下:接到一个项目时,首先,要做好需求分析,要知道这个系统有哪些人用,有哪些功能,哪些功能对应哪些人。其次,要思考每项功能都需要什么样的数据来支撑,从而建立好数据库的每一张表。然后,想好这个系统需要拥有哪些界面,每个界面之间有什么联系。最后,才是写代码。2.在代码书写过程中,由于疏忽、忘记等原因,代码书写规范存在很大的问题。现将自己经常疏忽的一些代码规范总结:1)方法名一定以大写字母开头且有意义,如functiongetworktime;2)定义的变量要以变量类型缩写开头,变量名大写开头,如$iyear,$strusernumber,$stresult,$modeltleave等3)传入参数要以in_开头,如$in_strusernumber;4)不在if,else等之内的return之前要空行,如functionxxxx{if(.....){}returnfalse;}5)数据库表名以t开头,具体名字的首字母大写,如tleave;6)数据库表内属性名以f+变量名缩写+_开头,如fs_usernumber;7)每个方法之前要写注释,内容包括方法作用,参数解释,返回类型,如/***获取用户指定年月的工作时间*@paramstring$in_strusernumber用户编号*@paramint$in_iyear年*@paramint$in_imonth月*@returnarray{'status':trueorfalse,'result':请求结果string,'error':错误信息string}*/returntrue;3.写代码之前一定要想好这段代码要达到什么目的,不要写了很多代码之后才发现这些代码都没有存在的必要。比如,第1页共2页以下代码其实花费了比较多的时间,主要用于计算请假持续时间,但是最后才发现请假持续时间不是计算的,而是管理员手动输入的。4.写一个方法之前,可以先按照自己的步骤写注释,然后再把注释转换为代码,这样可以使自己的条理更加清晰,如functiongetworktime{//从页面的下拉菜单中获取年和月variyear=$('Xyearselect').val;varimonth=$('Xmonthselect').val;//将年和月的数值传给服务器$.ajax({type:'post',url:'getworktime',data:{"iyear":iyear,"imonth":imonth},datatype:'json',success:function(data){alert(data.info.totaltime+','+data.info.askfortime);}});}5.别人的代码不一定适合自己。在设计日历的时候,总是找不到头绪,于是在网上下载了别人的日历代码,然后拿来修改,其实里面有很多代码是我没有见过的,理解起来也非常困难,这也使之后的工作举步维艰,如varjilvn=1;for(vari=0;i第2页共2页