耗时九天的红孩子项目结束了,时间不紧不慢。虽然只有短短九天时间,却让我们获益良多,作为组长,从制定开发计划,到搭建框架、分配任务、计划执行,对于没有经验的我而言,每个环节都是一个新的挑战!但幸运的是,我有一群认真努力的组员们,在我们的共同努力下,我们克服种种困难,最终按时完成了这个项目!在项目中,我们充分了解到了一个项目从前期准备到执行的各个环节,对SVN的使用也更加熟练,每个bug的解决都是我们的一个进步,我们不断的交流和讨论,互相帮助,共同进步。实战项目的结束并不代表真正的结束,而是代表着紧张的路程又要即将开始。紧接着上谷歌电子商城,我才意识到已经来黑马有三个月有余了。我们总是在说3期毕业了,4期也毕业了吧,突然发现如此之快就轮到自己了。
我们小组负责的<红孩子电子商城>项目,这对于我们从来没有接触过真实项目,并且要脱离跟着视频敲代码思维的方式转变成我们要协同开发完成一个完整项目的我们心里其实都是没底的,但是我们相信,只要坚持下去,不管最后结果如何,这都是我们难得的一课至少通过这个实战项目,我们学到了真实开发所用到的技术。
这是我以及我们组所有人的第一次真正意义上的团队开发经历,也是我平生第一次带领一个团队。由于之前我的学习进度比较快,所以在上红孩子电子商城之前的几天,我就已经开始着手准备红孩子项目框架的塔建。既然作为组长我知道我一定是最清楚这个项目的人,最清楚接下来每一步怎么走的人,我不能让他们觉得自己的组长不行,那么这个组就等于失败,所以做很多事情我都会比他们提前,比他们先准备。所以后来很庆幸我们都坚持下来了,而且大家做得还不错。现将项目从塔键到完成以及总结如下:
一:项目的基本情况
首先,红孩子电子商城项目是属于一个购物类的商城项目。在波波老师给我们的资料中,只包含了服务器,接口文档和需求文档资料,加上三套效果图片可以参考。对于整个项目的框架,各个模块以及业务逻辑并没有给更多的提示。这一切都需要我们自己去参考效果图理清各个模块之间的关系,只有理清了,才可以塔键项目的框架以及后期给每个组员分配具体的任务。
二:开发建设项目
项目框架的塔建:
一个好的项目就需要好的框架。就比如说像盖一栋大楼,首先你要先找设计师给你设计好图纸,然后再找施工单位根据图纸进行具体的施工。如果设计师没有给你设计一个好的楼体框架,那么在后期的施工期间就会产生各种问题。这也同样适用于我们一个团队去协同开发完成一个项目,如果在刚开始没有塔键好的框架,那么在后期开发代码的过程中就会出现各个模块之间出现耦合性,因为我们是协同开发,每个人代码的风格不同,而且最终要把代码提交到SVN服务器上,就会产生各种问题。
当然,一个好的项目也需要好的主流的技术。在红孩子项目商城,我们组在网络请求这块,用的是第三方框架Okhttputils ,这个网络请求也很方便,一行代码就可以从网络中获取对应的数据。对于加载图片展现这块,我们用的是时下最流行的Glide框架,使用的话也很简单。好的工具可以大大节省开发时间,让出更多的时间,完善项目的用户体验,及优化。
三:任务分配
项目团队的分配:
红孩子项目,我们是每个组组员要协同开发。对于任务分配这块,当时对我来说是很大的挑战。因为要根据每个组员的情况,有的组员学习情况较好,有的组员进度比较慢。那么就需要先要摸清项目模块的各种逻辑关系,了解整个项目的难点。然后针对不同的组员的情况分配不同难度的模块。这个项目是一个完整的项目,不像以前的那些小项目,一个人就可以完成。项目有完成时间的限制,一个人不可能完成,这就需要团队合作。
四:项目的总结以及体会
在完成红孩子电子商城项目,我们从中也收获了很多。下面是我对红孩子项目的一些感触:
1、更深刻的了解到项目开展的各个阶段的重要性,之前的我们一直都是处在编码这个环节,前面的一系列的工作都有老师帮我们做了铺垫,如今才发现,项目开展的前期的项目需求,接口文档和参考图对于项目的编码的支撑有多么的重要。
2、团队沟通的重要性,随着项目的进行,我也发现我们团队的沟通不是很好,随之导致的问题是公共文件中总会时不时的冒出一些随意添加的变量,在项目开展之初,我就曾规范过,变量要怎么定义,有些文件只能由谁去更改,但这些问题最终还是没能避免。导致在项目第三天的时候集体更新svn的时候,冲突爆发了。原本我以为每个人的模块自己写自己的,公共部分都不动,能尽量避免svn带来的不必要的麻烦,结果暴风雨来的还是那么猛烈,第三天都是在跟svn作斗争,最后在组员的帮助下又重新塔建svn服务器。我想以后如果到公司的话,这些应该严格执行的,文档说明一定得看清,要不然挨骂肯定是少不了。还有就是模块通讯之间沟通的重要性,当负责模块之间有通信时,一定要沟通好,比如传递什么数据,javaBean的定义等等。javaBean也在项目中遇到过重复定义的问题。
3、项目的进度很重要,因为每一个项目都会有周期时间,如果项目组长给你分配了一个模块,要求你2天之内完成。那么你就需要合理安排好自己的时间,每天的进度自己要把握好。这块,我们组每天早晚都会开一次会,让大家说说今天的进度,以及遇到的困难,明天的计划等等,这些都是会在公司里面会遇到。
4、最后,我想说的是大局观的重要性,首先我们只有在完成项目的基础之上,才能去对代码的优化,我也是一直给他们中的每一个人着重强调,先完成功能,再有时间,再去钻牛角尖,再去优化界面的美观。
九天的实战项目,我们遇到过很多问题坎坷。这种小坎坷一直伴随着我们,但我们还是坚强的挺过来了。虽然这只是一次模拟实战,但我们每个人都收获很大,我相信我们下一次进公司做项目的时候,我们会更加游刃有余,不辜负黑马老师们对我们的悉心教导!