一个项目的简单开发流程——需求、数据库、编码

简介: 关于一个项目的简单开发流程   前言:从11月8号开始到11月12号我们小组使用html+easyUI+ashx+异步,开发了一个简易的网 站,也就是简单的门户网站,下面我就将我们这几天开发中遇到的一些问题以及我自己的一些关于项目的开发流程的见解,当然我的见解很有限,所以希望广大博友 们能提出你们在工作中所接触到的一些流程的见解,方便我们大家来学习。

关于一个项目的简单开发流程

  前言:从11月8号开始到11月12号我们小组使用html+easyUI+ashx+异步,开发了一个简易的网 站,也就是简单的门户网站,下面我就将我们这几天开发中遇到的一些问题以及我自己的一些关于项目的开发流程的见解,当然我的见解很有限,所以希望广大博友 们能提出你们在工作中所接触到的一些流程的见解,方便我们大家来学习。下面我们就来说一下整个项目的过程

1.首先就是需求

  (1) 在整个项目中这块可以说是非常重要,没有需求或者需求不明确那么我们开发人员将无存下手,因为不知道怎么写,所以前期的需求调研是非常重要的,如果在这块没有好好整理的话将会在后面遇到很多的问题,后面我会说到我们遇到的问题。

  (2) 当然虽然我们知道需要需求分析,但是我们也没有做需求分析,因为数据库已经是建好的,而且我们是为了学习技术,只是为了编码,自己写着玩,当然从这些项目中我们都在学习进步,所以基本的需求我们都知道。

  (3)记得以前刚去公司的时候,我们主任曾经给我们提过让我写一个需求分析,项目是煤矿的《人员定位管理系统》,当 时刚一接触,头大啊,根本不知道什么需求,然后我就查资料,但是最后没有写,因为需求本来是有的,我们主任只是为了锻炼我一下,所以让我自己琢磨一下,后 来我们公司小组设计了一个分层的权限设置,权限大家都知道,好几个表嵌套,所以那次也学到了好多东西,最后公司有个OA项目,需求分析也是我写的,网址:http://www.cnblogs.com/hanyinglong/archive/2012/07/13/2589927.html,但是这些全部是我主任为了训练我,所以在这里我感谢我的主任和以前的同事,他们对我的帮助挺大的。

2.接下来就是设计数据库

  (1)当我们需求写完的时候,这时候就到搭建整个数据库的时候了,也可以说数据库是整个项目中最重要的角色了,一个优秀的数据库设计者就能从这里看出来,因为我们数据库是设计好的,所以我这里只说一下自己的感觉吧,我在数据库方面比较弱,所以见解很浅的。

  (2)我觉得主键是必须的,每个表都有其对应的主键,而且主键最好用一个不相干的字段ID来表示,这样方便我们在项目里面写代码。

  (3)其他的就是一些命名之类的最好要见名知意,不要使用汉字命名,还有数据库的设计遵循三大范式。

3.最后就是编码的实现了

  (1)首先建立解决方案项目,最后使用动软生成器生成相应的代码,然后放到解决方案中,修改bug,使动软的代码可以运行,最后建立web应用程序,整个架构下来如图所示:就是一个典型的三层架构。

    

  (2)在不使用任何技术的前提下,将小组各自的项目整合在一起,如果前期不讨论如何弄的话在整和项目的时候将会遇到 许多的问题,我想大家都是很清楚的吧,如果项目大点,那就是生不如死啊,怎么样才能是项目合并起来很方便呢,下面我就说一下我的想法吧,只是参考,大家有 更好的可以提出来我们共同学习进步。

  (3)首先我们在Web应用程序中必须建立相应的使用外部文件的文件夹,比如我们使用的JS文件我们可以放到Jquerys文件夹下面,css文件可以放到相应的style文件夹下面,还有调用的dll我们可以放到lib文件夹下面,如下图所示。

    

(4)动软生成的代码,我们一般情况下不可以直接在里面操作,因为那样的话如果数据库的结构变了,我们需要重新生成代 码,将会覆盖我们的代码或者我们一个一个的去复制黏贴,那可真就是典型的苦逼的程序员了,所以如果我们需要给DLL层的用户表里面添加一个分页的方法,那 么我们可以直接建立一个部分类LYSC_userExt,然后再实现代码,结构图和代码如图所示:高清加亮的就是我们给重新建立的。

      

      

(5)然后我主要说一下我们后台的实现,因为我们后台是分角色写的,每个人都有每个人的模块,所以后天的开发尤其能体现 出来前面所说的内容,因为后台分为用户管理,客户管理,企业文化,新闻和人才管理,所以我对应的每个角色都建立一个文件夹,比如用户对应Users,新闻 对应news,然后将该使用的easyUI文件夹行放到后台下面,然后因为我们在后台用到了富文本编辑器,所以将富文本编辑器的文件夹也放到下面,这样我 们就搭建好了整个系统的开发环境,如图所示:
      

(6)这样我们的整个环境的开发就搭建好了,然后将这个文件发给我们的每个成员,然后每个成员对应每个成员的开发角色,在其相应的文件夹下面建立html,一般处理程序和代码的书写,在最后合并的时候我们只需要拷贝过来一个成员的文件夹复制到项目里面就行了。

4.调试测试

  (1)首先我们在写代码的时候就应该适当的调试,比如那些很低级的错误,文本框的长度,邮件格式,文本框不能为空等这些本来可以避免的Bug我们应该就不要让其发生,所以我们在编写代码的时候就应该写完。

  (2)如果我们的团队有测试团队的话他们的测试将会编写测试代码来测试,那样是最好的,但是我们没有测试人员,所以,我们自己成员测试项目。

  (3)在测试中最忌讳的就是自己测试自己的代码,那样可能一些潜在的代码始终是测试不出来的,所以等项目成型之后就要将自己开发的模块分给别人测试,而你测试别人的模块,这样使用黑盒测试一下基本通过,那样一个企业的网站算是成型了,我们的网站也正在测试中。

5.效果展示图:

  (1) 用户管理

 

 

 

  (2)新闻管理

 

      

  

      

 

 

 项目下载地址:本来是在博客园上传的,可是太大了,只能在CSDN里面了,http://download.csdn.net/detail/hanyinglong/4767316

 

转自:http://www.cnblogs.com/hanyinglong/archive/2012/11/12/2766769.html

img_e00999465d1c2c1b02df587a3ec9c13d.jpg
微信公众号: 猿人谷
如果您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】
如果您希望与我交流互动,欢迎关注微信公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

相关文章
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
10月前
|
人工智能 JavaScript 关系型数据库
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
382 14
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
|
10月前
|
人工智能 JavaScript 安全
【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
469 13
【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
|
11月前
|
数据管理 数据库 数据安全/隐私保护
Django—同一项目不同app使用不同数据库
在Django项目中实现不同app使用不同数据库的配置,可以通过配置多数据库、创建数据库路由和配置路由来实现。通过这种方法,可以有效地将数据隔离到不同的数据库,提高数据管理的灵活性和系统的可扩展性。希望本文能为开发者在Django项目中使用多数据库提供清晰的指导。
264 4
|
SQL 关系型数据库 MySQL
Go语言项目高效对接SQL数据库:实践技巧与方法
在Go语言项目中,与SQL数据库进行对接是一项基础且重要的任务
270 11
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
前端开发 Java 数据库连接
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
本文是一份全面的表白墙/留言墙项目教程,使用SpringBoot + MyBatis技术栈和MySQL数据库开发,涵盖了项目前后端开发、数据库配置、代码实现和运行的详细步骤。
324 0
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
|
3月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
148 3
|
3月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
3月前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。

热门文章

最新文章