项目过程全记录

     开学才几天就要开始做项目了, 我与刘洋等四位同学分在一个小组。 我们小组在选择组长投票时我与刘洋同票,但是我最终还是选择了刘洋, 不为别的,就为刘洋水平确实比我高。—— 2月4日

     

     我们组选做的项目为“车辆销售管理系统”——   2月6日

 

     老师要求我们开始去使用“美萍版车辆管理系统试用版”,让我们在使用的过程中熟悉它的软件需求与整个工作流程。我装好了软件使用了,感觉功能还比较完善,对它的整个流程也有一个基本的了解, 心想要是自己能够做出来就好了。

                                                                                                           ——2月7日

 

     对软件有了一定了解之后自己便开始尝试着去做需求设计与分析, 去年在软设的备考过程中做了不少这方面的题目。那个时候感觉此道设计题还算好做, 但是那是在题目提出用户需求之后只要求去完善一些相关的细节, 现在到了完全由自己去做整个需求与设计时却犯难了。 面对一个好大的系统,有一种“拔剑四顾心茫然”的感觉,坐在电脑面上东搜搜西搜搜一天就这么过去了,然而设计却没有多大进展,我感觉特别痛苦。 也到现在才开始体会到“需求分析与设计是软件制作过程中最重要的阶段”... ...                                                                                                       ——2月8日

 

     今天项目组的每个人都带了一份需求分析与设计的初稿过去进行讨论。也许是初次接触项目初次进行讨论的缘故吧,讨论进行地并不是那么顺利, 尤其是在后来进行详细设计阶段的讨论时说着说着我与胖瑞之间便开始起了冲突。事后心想自己真的还是不够成熟, 自己又不是组长,有个时候表现太过积极往往会事与愿违...  ...  做软件也好,做其他行业和好,做人永远是最重要的!  今晚开始设计项目的数据库,仍然是很痛苦,不在痛苦中爆发就在痛苦中灭亡, 我想说的是艰难困苦,玉汝于成,我要爆发! 痛苦的去挖掘爆发吧............

                                                                                                                           ——2月10日

 

     今天培训内容是GUI, 老师明确指出在我们以后的工作生涯中几乎不会再采用GUI(现在一般采用JSP),但是为了做第一个项目我们还是得学习。 由于今天课堂上的内容比较多再加上昨天项目组讨论时出现的一些不快情况,因此今天没讨论。放学时刘洋来跟我说要我们明天带数据库设计的报表过去进行讨论并最终确定, 放学回家后睡了一觉后就一直在搞老师布置的作业直到现在。 明天还有半天的时间进行数据库的设计, 感觉还是挺凌乱, 反思自己这几天的表现还是思考得太少, 谨记: 思考,思考,再思考!  针对自己这茫然的现状,明天打算先静下心来好好地参照一两个范例项目再动手去设计。

                                                                                                                        ——2月11日

 

     数据库报表的设计已经到了最后的提交阶段了, 我不能再拖了。 先前也因一直陪女朋友而没什么参与到数据库的设计中, 看着刘洋一个人辛勤的奋斗着,心理很是惭愧。 晚上坐在电脑面前专注地开始设计起来, 我按照软件的使用流程一个个地去试用, 仔细思索这些功能点可能会涉及到的相关的数据表。 一个个地摸索,一个个表格的确定,搞到凌晨基本上完成了表格的设计。事后再看看刘洋设计的表格,觉得他的更全面,当然我也指出了他设计中存在的些许不足... ... ^_^  ^_^, 困了, 好好耕作了一番, 看着自己的劳动成果满足的睡去了。

                                                                                                                      ——2月12日

 

      今天的心态轻松了很多, 想呀: 这个世界上很多事情在你去做之前都很困难, 但是当你真正的去攻克它的时候,你就会发现它们中的大多数都是纸老虎。 只要思想不滑坡, 办法总比困难多, 所以只要我端正态度努力学习, 一切都会好起来的, 我的技术之路的明天也将是灿烂的!

                                                                                                                     ——2月13日

 

       ^_^ ^_^, 昨天情人节,配需半也真是体现出了对我们广大学生们的人文关怀——放假。 由于最近正在学习GUI且项目的功能点部分即将启动, 因此我打算趁机设计好项目的界面... ... 仔细地参考了老师的那些示例代码之后也跟着敲了一遍, 关于界面的设计自己心里也有了个大概。  教训: 现在女朋友走了, 同学朋友们也不会再来打扰我了, 我花在电脑面前的时间又开始多了起来。 老实说我很少玩游戏,甚至连看一会儿的电影电视都嫌浪费时间, 花了这么多时间而却不见大的成果, 这是为什么呢?   自我反思之关键原因:

                                                                      

  1. 先做自己喜欢的事情,再做自己不喜欢的事情
  2. 先做紧急的事情,再做不紧急的事情
  3. 先做容易做的事情,再做不容易做的事情
  4. 先做自己了解、熟悉的事情,再做自己不了解、不熟悉的事情
  5. 先做有趣的事情,再做枯燥的事情
  6. 先做易于告一段落的事情,再做不易于告一段落的事情
  7. 先做自己熟悉的人托付的事情,再做自己不熟悉的人托付的事情

                                                                                                               ——2月15日

 

     今天开始正式地设计项目中所涉及到的界面了,  忙了一整天勉勉强强整出了两个自己不太满意的界面。 虽然说之前老师已经再三强调学GUI就纯粹是为了项目服务... ... 也知道GUI大多都是操作性的东东, 但是实际做起来还是遇到了很多问题。虽然说动手很重要, 但是思考更重要走, 先在纸上画好草图、理清思路再上手... ... 明天得完成所有的界面设计。

                                                                                                              ——2月17日

 

    由于各个学校陆续开学,培训班的课程也少了一些。迎来了两天没课的日子,我们的任务就是做好整个项目的界面。经过起初的痛苦摸索我已经基本上掌握了界面的设计了, 经过整整两天的奋斗我终于把项目所包含的界面给搞定了。在此处开发中感受最深的就是开发要规范... 之前从未做过项目的我在练习时总是东一个Java文件西一个Java文件呈很杂乱的一片,由于以前都是做一个个独立的练习所以也并没有觉得有什么大的不妥, 但如今做项目了我就深深地感受到了规范的重要性!在这两天的开发过程中我就经常犯一些因不规范而导致的错误,绕了很久才绕出来。虽然说参加培训JAVA也有3个月了,但是以往写程序的时候基本上还是用的”面向对象“的分析方法, 如今做项目了也就渐渐地开始体会到”面向对象“的优越性了

    从明天其开始着手做功能点的设计~~~~~~~~~~~

                                                                                                          ——2月19日

 

    人与人之间的分水岭—— 时间利用。 众所周知人与人之间的智商都是相差无几的(天才或弱智例外)... ... 面对这芸芸众生的起点智商大致平衡, 终点却截然不同的人生境遇, 不得不让人感慨时间利用的重要性!

        一直以来我都是一个方法论者, 看了不少相关的书籍,也曾照书上的一些方法去实践过, 但是我最终没有使那些方法上升到技能的高度。 大部分的情况是, 刚看完时很受启发,然后在接下来不长的日子里也会试着去应用, 随着时间的流逝又渐渐丢弃了。 所以说看万卷书,不如行十里路, 我没有完成从思想模式到行为模式的转变......

     今天晚上我的境遇就很好的说明了这一点, 我基本上就在胡乱中浪费了一个晚上的时间。 8:00钟打开eclipse准备进行项目的编码工作, 突然间想到可以找个工具来统计一下自己的代码行数于是便开始上网去搜索这个东东... 首先在CSDN上面找到了一个, 下下来一看是.jar格式的, 不知如何使用, 于是又上网搜索... 好不容易解决了安装的问题又遇到了不知如何调用的问题.......忙活了很长时间还是没有解决于是开始寻找另外的,可偏偏气人的就是找了好多个,下下来不仅软件本身不可以使用而且中间的大部分还携带了大量的流氓软件, 接下来不说你们也知道, 我便又开始忙着杀毒... ... 哎, 一直搞到10:30才终于搞定了一个,试用也通过了。

     哎, 虽然说我今晚在安装在这个东东的过程中也学到了一些东西... 但这个所谓的学到东西也只能起个自我安慰的作用而已。 我感觉今晚的行为太随意太没有调理性了, 一句话: 时间利用得很失败。

    教训!

                                                                                                           ——2月20日

 

    时间过得很快, 才一眨眼的功夫又一个星期过去了,这期间完成了老师布置的关于Jtable与数据库的交互。感叹时间过得快的同时也越来越觉得生命的最大浪费是:不去专注, 避开了痛苦也就失去了快乐! 昨天在与一个培训班的同学在交流时得知他好恨现在学校到晚上11:30断电, 我问题缘由, 他说那样子就不可以熬夜搞研究项目了......  虽然并非是提倡熬夜,但是那同学的求学精神着实值得我学习。

    培训部今天下达了命令: 从今天其听课开始专心做项目, 项目开发周期为10天, 估计在这10天中得敲完上万行的代码。 为了能够顺利完成自己的开发任务, 我制定了如下的一个小开发日程安排:

       项目开发周期:   10天

             编码阶段:     7天

             测试阶段:     3天

2月27日:          完善好整个界面工作, 整理好数据库, 完成第一个功能点: 商品销售中的“新增加商品” 

2月28日:        完成 整个添加商品的主要功能

                                                                                                           ——2月27日

 

       又是两天过去了, 第一个功能点还是没有通过调试, 烦躁、郁闷、痛苦.....  今天又和小组的其他成员碰面了,还是组长厉害点, 他漂亮地完成了第一个重要的功能点。 当老师刚刚开始宣布组长人员的那一题可我还有点不服气, 现在我是真的开始佩服起组长来了, 组长一再表示我是我们组的绝对主力希望我能够抓紧做...  我感到 很惭愧....... 

      之所以在第一个功能点上绕了这么长时间是因为我的好走极端, 要么就是”过度模仿“要么就是过度”抵抗模仿“, 认真总结反思: 在做某个功能点时先把它的流程脉络理清楚, 想好了基本的框架之后再动手去解决; 遇到一时过不去的坎时不妨尝试着换一种思路。    先到这吧, 继续去攻克项目吧, 保存好开发文档......

                                                                                                            ——3月1日

 

     今天又去培训班上课了, 去之前我忐忑不安的,因为感觉自己整整做了三天才做了两个小功能点。 说我以前是态度不够端正我也承认了, 但是自从做项目起我真的是全身心地投入了, 但是初次做项目在很多看似明了的地方遇到了很多的问题, 尤其是今天上午连续调了5个小时的错误搞得人都要崩溃了。 在课堂上与大家交流了最近工作进展, 横向对比下自己的进度还算是可以的, 痛苦之余又多了些许安慰感, 开发工作还得继续,淡然痛苦要继续, 就是一位哲人说的那样:生活由百分之五的精彩、百分之五的艰难和百分九十的平淡组成,人们往往为了百分之五的精彩忍受着百分之五的艰难,在百分九十的平淡中度过一生! 我期待着我那5%的精彩!

     在此总结一下最近的工作: 1. 学会了解决一般的空指针异常, 学会了使用Debug与打印输出语句帮助查错。

                       2.  对构造器、引用有了更新的认识, 以前我要用到A类的引用时我经常在B类中直接New A(); 这种情况在面对A类存在默认构造器之外的构造器时在B中调用时就很可能会报“空指针异常”(具体情况略去)... ...

                       3.  能够更有效地使用API了, 以前我一般是知道某个方法或者类然后再去查找API进行验证, 现在则开始尝试着主动地去API中求找问题的解法。

                       4.  不要钻牛角尖, 我在编程中遇到问题时老是有种“钻研到底”的傻气,当然这种刻苦钻研的精神是值得嘉赏的, 但是在遇到某些问题的时候也必须放得下。 我们在讲究思考深度的同时也得讲究思考的广度, 有时候跳出问题看问题真的会有一种“山穷水复无疑路,柳暗花明又一村”的感觉。

                       5. 提高搜索的技巧。 虽然说用搜索引擎已经很多年而且自认为很熟练, 但今天在与一同行朋友的交流中得知我的搜索技巧还是太俗了。 就比方说我在项目的过程中涉及到问题时就几乎从不搜索(在以前学习单个单个知识点的时候倒是经常搜索), 我的理由是项目中所涉及到的问题前后联系紧密问题不好描述,其实大部分的错音是很常见的、与上下文无关的。  开始尝试用谷歌惊醒搜索(技术方面)..........

                      6.   多交流是具有巨大的好处的, 但是必须得满足一个前提那就是: 在经过自己的深思熟虑之后再讨论

                                                                                                             ——3月4日

 

      项目做到现在已经更新了好几次, 但是总的更新工作主要是由刘洋同学负责。 他每次将更新好的东西发给我时,我到宿舍嫌麻烦就还是在自己以前的工程下面写,只是有用到更新处的地方就去复制...  ...  起初到也觉得那样子做挺好的, 可是到了现在开始做集成测试的时候才发现自己以前是多么地愚蠢。 现在我又得全部推到重新来组织......  痛苦呀!  也就当是个对自己愚蠢行为的一个惩罚吧

                                                                                                              ——3月7日

 

       在最繁忙的时候身体也给下了,我鼻子的老毛病又犯了, 整天头昏脑胀的。 但是生活还是要继续,项目还是得继续赶。 从上次的会面之后又有两天了, 我就像一只蜗牛在慢慢地挪着, 一点一点地向前, 造成进度慢的罪魁祸首就是: 调试出错...  ... 

        现将最近遇到的一些问题与经验做个小结:

                            1.     在程序中写SQL语句时最好先将写好的SQL放到PL/SQL(具体的工具有所不同)进行运行测试, 运行成功之后再进行连接, 这样子可以避免因SQL语句出错而导致的一连串异常。 如: 我写的"SELECT XS.djid, XS.kdrq, XS.khname, XS.ckname, XS.ysje,"
   +"XS.ssje, XS.qkje, XS.yhje, XS.jbr, XS.czy, XS.zt, XS.bz FROM TB_XSDJ XS "
   +"WHERE XS.zt='待审核'";  在连接数据库时报错。 后来经排查原来是第二行最后缺少一个空格.....

 

                           2.   在遇到数组越界错误的时候得注意自己遍历的顺序问题。 如: 我先是从0开始遍历,结果老报异常

  MyTableModel model = (MyTableModel)tableConsume.getModel();

 for(int i=model.getRowCount()-1;i>-1;i--){
        model.removeRow(i);
       }

      后经排查时得知model在没删除一行数据时, 它的索引就会自动减1, 这样子我在删后面行时就报错了。

 

                          3.   对一个数组的元素求和时遇到了问题:

    for(int j=dataToXiaofei.size()-1;j>=0;j--){
  String str = dataToXiaofei.get(j);
   System.out.println(str);
  double d= Double.valueOf(dataToXiaofei.get(j)
     +Double.valueOf(dataToXiaofei.get(j-1)));

}

    我是想求一个JTable中某一列所有值的和, 我用了表达式 d = d+Double.valueOf(dataToXiaofei.get(j)); 但是先前老是碰到  局部变量与全局变量冲突的问题, 直到我最后将d生命为 static 时才解决了这个问题。

                                                                                                ——3月9日

 

     今天在连接数据库时由于自己的疏忽将账号密码给搞错了, 后来在运行的时候报错: 不存在图标或视图

  以往我一直认为报这种错误一定是由于数据库本身引起的, 而从未想过可能是账号与数据库不对应....

                                                                                              ——3月10日

 

    神啊,救救我吧!  项目后天就交付了, 而我此时却遭遇了最大的挫折: 我发现自己所做的那个模块有好多的Bug , 感觉那些bug也不是一会半时就能调好的, 而要全部推到再仿造组长的写一个全新的时间上一不允许; 我就这样陷入了两难境地。   我人都快要崩溃了!!!  眼看就快要断电了, 目前唯一能做的就是调整好心态并选择一个明天行动的方案。

                                                                                              ——3月11日

 

   明天就交项目了, 可该死的我此时却还正在被一个小小的bug困扰了近一天....  现将我的错误列出, 下次可不能再犯如此低级的错误了呀:

           String sql_Todetail = "SELECT DXS.DJH,DXS.SPID, DXS.SPNAME,DXS.GGXH,DXS.COLOR,DXS.DW,"
    + "DXS.DJ, DXS.ZK, DXS.SL, DXS.ZJE,DXS.XLH,  DXS.HYLX " +
         " FROM tb_d_xs DXS, tb_xsdj XS WHERE DXS.djh = '"+djid+"' " +
         "AND XS.zt = '待审核'";

   tb_d_xs表中单据为 djid 的明明只有两条记录, 而我每次查询出来却不止五条, 确切的条数跟tb_xsdj 中的记录条数一样。 后来查错时追本溯源、顺藤摸瓜.... 到最终才觉乃是自己上述的SQL语句少了一条 连接语句。 添加上一条:

        DXS.DJH = XS.DJID  则结果正确。

 

      今天在做“帐务来往”这个版块时, 调试出现了异常, 调试了很长时间最终找到了错因。 哎, 又是SQL处出错了,看样子还是基础不好呀, 现将错误列出:

         "SELECT XSDJ.khname, XSDJ.kdrq, XSDJ.djid, XSDJ.djlx, XSDJ.ysje," +
    "XSDJ.ssje, XSDJ.qkje, XSDJ.yhje, XSDJ.jbr, XSDJ.czy, XSDJ.bz " +
    " FROM TB_xsdj XSDJ  WHERE XSDJ.ZT = '已审核' AND  XSDJ.kdrq>TO_DATE" +
    "('"+ksrq+"'"+",'YYYY-MM-DD') AND XSDJ.kdrq    +"('"+jsrq+"','YYYY-MM-DD')";

      但是当我选择的ksrq 与 jsrq都为3月13进行测试却返回空, 原来是自己的SQL语句中没有写 等号。后天即将面对评审, 今明两天趁这最后的时间再多做一个功能点且将以前存在的那些bug给清除掉。

                                                                                                      ——3月13日

 

     第一个项目在今天终于落下了帷幕, 今天在调试bug的时候又发现自己存在的一个问题, 一个低级的问题:我在一个循环体外定义了一个变量如int a, 然后在循环体中有表达式 a = a+data.get(i)(i为循环变量) , 但是在编译时报错了, 为了解决这个问题我尝试了很多方法, 直到最后将a定义为static时才通过了编译。 虽然我将a定义为static解决了遇到的问题, 但是其实我就将a生命为int型也可以。 只不过是在循环体外要记得给a赋初值, 要不然a = a+data.get(i)则左右两边都是变量........

           接下来将会对整个项目做一次系统的回顾总结并上交一片项目总结给老师。

你可能感兴趣的:(非技术专区)