项目开发——你该注意什么?

项目开发,找准定位,你该注意什么?

背景:

2015年的5月18日,图书馆的这个系统刚刚开始,及我们三个合伙人合作的正式开始。这次的合作是从需求开始,这也是我们三个第一次涉及到从源头开发。

我们按照项目开发的正规流程,开始了一系列的工作。当我们把一些必要的前提做好之后,我找师父交流了一下,师父和我讲了很多。很有必要把这些宝贵的学习经历记录一下。

注意点:

文档和图是开发的必不可少的。所以对图和文档的把控也是很重要的。

1 先原型图还是先用例图呢?

当我们把需求分析的差不多的时候,我们也就很清楚的知道我们的主要功能是什么啦,这时候我们的项目要用几个例,大例里面应该分几个小例,这应该是很清楚的,所以,用例在先。根据我们的用例图,然后开始哦我们的原型图。同时在画原型图的时候,要时时刻刻的想着用户。

图书馆的原型图的登陆页,我毫不犹豫的放了俩个单选按钮,分别是管理员和普通用户。那时候想着用户在登陆的时候对自己的身份进行判断,可以在后台少判断,更好的写代码。但是,QQ在登陆的时候需要判断吗?需要用户自己判断自己是超级会员还是普通会员吗?云盘是用户自己判断自己是会员吗?这都是在后台判断的。当然了,很多时候为了用户的方便,我们确实需要在后台费很多事情。但是我们的职业就是为用户服务滴!

2 ER图是数据库设计的结束吗?

我们设计数据库,首先是根据需求,来画ER图,同时ER图也是数据库设计文档不可或缺的一部分。这其实仅仅完成了数据库的一个重要的模型:概念模型。接下来我们还需要完成逻辑模型和物理模型。

逻辑模型重要的是数据库的联系图。物理模型就是最后的成果啦。

3 SVN使用

由于我们使用的开发工具是SVN,我们是多个人对类进行的操作,所以更多时候我们的操作会产生冲突。所以我们在分任务的时候,尽量做到对类的分工更加的明确,尽量减少一个类让很多人操作。同时在提交代码的时候,我们要在自己的电脑环境下运行无误后再提交,同时提交的时候记得更新。

4 统一命名规范和详细注释

一般情况下,我们的类图已经很明确了方法名,但是有的类图没有明确变量名,或者是参数、属性等。这时候就要统一出一个命名的规范。这样写出来的代码不会太乱。

同时注释也是很重要的,合作开发,我们很可能对同样的一个方法进行操作,这时候需要每一个开发人员都写清楚方法的时候,运用的参数等。

5 改动原型?改动UML?改动数据库?

无论我们的前期准备多么的充分,后期有大程度上都是会改动的。当我们出现了改动,该改动什么?在图书馆的这个小系统中,我选择的是改原型。

但是,我们知道,原型一般情况下已经交给客户啦,也就是这时候,客户已经明确了原型。所以我们在改动的时候,要改的不是原型,而是我们的图,假如我们的图仍然不能满足需求,那就改动我们的数据库的设计。

结束语:

学习是一个迭代的过程,在需求—编码—测试的开发过程中,我们定会收获硕果。

也许我们做的很小,也许我们做的很不到位,也许我们遇到的问题没有解决,也许我们做的很没有技术含量,但是这仅仅是一个起点,因为这个起点,让我们敢于腾飞。

时间: 2024-08-05 09:46:38

项目开发——你该注意什么?的相关文章

第八章 企业项目开发--分布式缓存memcached

注意:本节代码基于<第七章 企业项目开发--本地缓存guava cache> 1.本地缓存的问题 本地缓存速度一开始高于分布式缓存,但是随着其缓存数量的增加,所占内存越来越大,系统运行内存越来越小,最后系统会被拖慢(这一点与第二点联系起来) 本地缓存存于本机,其缓存数量与大小受本机内存大小限制 本地缓存存于本机,其他机器的访问不到这样的缓存 解决方案:分布式缓存 Jboss cache:缓存还存于本机,但是会同步更新到其他机器(解决了第三个问题,解决不了第一和第二个问题),如果缓存机器数量很多

软件项目开发团队组员跨项目组兼职案例分析

按照现代项目管理的观点,项目团队是指"项目的中心管理小组,由一群人集合而成并被看作是一个组,他们共同承担项目目标的责任,兼职或者全职地向项目经理进行汇报". 项目团队的特征有: (1)项目团队具有一定的目的 项目团队的使命就是完成某项特定的任务,实现项目的既定目标,满足客户的需求.此外项目利益相关者的需求具有多样性的特征,因此项目团队的目标也具有多元性. (2)项目团队是临时组织 项目团队有明确的生命周期,随着项目的产生而产生,项目任务的完成而结束,即可解散.它是一种临时性的组织. (

IDEA 学习笔记之 Scala项目开发

Scala项目开发: 由于直接下载Scala plugin太慢,老是中断,所以手动下载: https://plugins.jetbrains.com/ 手动安装Scala plugin: 新建Scala Module:  下载Scala SDK: http://www.scala-lang.org/download/2.11.6.html  选择Scala SDK:   创建Scala project: 编写第一个Scala Hello World:

TMS320F28335项目开发记录1_CCS的使用介绍

CCS使用介绍 一.前言 本系列文章记录本人实际项目开发时对ti的DSP28335,以及CCS开发环境等的学习与记录,相对于2812来说,28335的资料还是比較少的,只是原理是相通的,28335说白了就是比2812多一些外设,寄存器等东西: 28335对于学习DSP的人来说,也算是一款入门级芯片.本人也是学习没多久就拿来做项目了,用到什么学什么,感觉事实上DSP没有想象中的难,无非就是和单片机一样.配置一些寄存器,驱动一些外设进行开发等,而DSP之所以难.难在它的算法部分,有了好的算法,DSP

项目(1)----用户信息管理系统---项目开发(业务处理层)

项目开发---业务处理层 这里主要实现下面两个包中的类,其实性质和Dao和Dao的实现类一样,但为了规范,这里在写接口和实现类      com.study.user.service   //接口包             1.UserService.java     com.study.user.service.impl  //实现接口类             1.UserServiceImpl.java    1.UserService.java import java.util.List

专注智慧城市项目开发,智慧城市管理建设

专注智慧城市项目开发,智慧城市管理建设(作者:ruiec_wangxuyan) 智慧城市是按照科学的城市发展理念,利用新一代信息技术,在信息全面感知和互联的基础上,实现人.物.城市功能系统之间无缝连接与协同联动,达到城市管理智能自感知.自适应.自优化,形成具备可持续内生动力的安全.便捷.高效.绿色的城市形态,以推进实体基础设施和信息设施相融合.构建城市智能基础设施为基础,以物联网.云计算.移动互联网等新一代信息通信技术在城市各领域的充分运用为主线,通过高科技的应用解决方案,提升城市运行管理水平.

Hive项目开发环境搭建(Eclipse\MyEclipse + Maven)

写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Maven) 我这里,相信,能看此博客的朋友,想必是有一定基础的了.我前期写了大量的基础性博文.可以去补下基础. 步骤一:File  ->  New  -> Project   ->  Maven Project 步骤二:自行设置,待会创建的myHBase工程,放在哪个目录下. 步骤三: 步骤四:

使用GitHub进行协同项目开发和开源项目贡献

本教程致力于摆脱git命令行快速的学习使用GitHub. 此次是GitHub课程的第三次课程,也是最后一次课程.推荐进行按照次序查看本次教程.上篇文章:程序员,一起玩转GitHub版本控制,超简单入门教程 干货2 本教程由今日头条-全栈攻城狮号首发,都是一个字一个字码的.请尊重劳动成果,转载请注明出处. 更多文章请关注:做全栈攻城狮.写代码也要读书,爱全栈,更爱生活.请不要吝啬您的手指,关注我吧.关注有惊喜哦.微信平台:做全栈攻城狮.大量系统教程送给你~~~ 作为程序员,现在正再考虑,把自己写的

移动端项目开发总结

技术总结 1.为了让网页适应不同的手机尺寸,在这次项目开发中,对于各个模块与页面尺寸都尽可能的使用百分比作为单位,使之能都够自适应. 如导航栏,在此项目中导航栏有四个按钮均等的分布在页面的下方,若是同以往开发PC端的方式用边距(padding.margin)来布局,一旦改变屏幕尺寸,按钮没有自适应,布局也将没有达到想要的效果,而为了解决这个问题,我将<a>标签的宽(width)设置为25%. #nav { position: fixed; bottom: 0; left: 0; width:

网站项目开发有感

制作辅助教学网页的项目已经开始几周了,在这段时间遇到了很多问题,也解决了很多问题,以下是我的一些感想. 首先,我更加深刻了解了需求获取和分析的意义,刚开始接触到这个总觉得它像是生硬的模板,为何非要按着这个脚板印走一遍,可是如果连基本的模型需要的功能都没有定下来就开工,将会在开发中遇到无数甚至无解的问题. 因为之前有学习过一些HTML/CSS的基础知识,所以一些简单的静态页面设计起来还是比较轻松的.但是这次是需要前端和后端联系起来实现更复杂的功能的,这就需要更深入的学习了.对于我,这段时间一直在学