程序备忘录:之五-熟悉数据表(2004/08/23 20:04)

原创 2004年08月23日 19:08:00
  软件设计包括系统设计和数据库设计,一个专业的软件工程项目数据表大都超过100个,有的几百个。作为专业的编程人员,如果不对数据表形成概念,编程时必然会造成困难。解决问题的关键就是熟悉它们,再熟悉它们。随着项目的进展,业务、逻辑、数据逐渐清晰。
  编程时可供参考的资料一般是数据库设计文档,包括ER图。数据表中的所有关联都反映在ER图中,编程者需要理解表之间的关系,根据业务需要编制SQL代码。这些工作看起来很简单,当表之间的关系越来越复杂时,正确理解并完整地实现就不容易了。
  为了更好地理解数据表,可以从面向对象和关系数据库两方面的观点来分析。关于面向对象分析方法和关系数据库的设计,可以从网上找到相当多的论文。设计数据库时仍会为现实的类与存储的表之间的映射而费尽心思,因此设计数据库需要理论、经验和判断。而编程时则要从数据表的关系中看出业务系统的框架来,或者说将二者结合起来形成清晰的概念。“不当家不知柴米贵”,谈何容易!
  一种典型的业务流是单据流转。单据有一个生存周期及状态迁移,针对其特点表中对应一个状态字段。单据的不同状态决定其所属的业务位置。这时问题就来了,程序除了处理正常的用户操作,还要对所有可能的异常操作做出正确的反应。迫在眉睫的交付期限,有时更象打心理战。完成代码时要象作外科手术一样,一针一线条理清楚,线线不虚其用。
  程序进入测试期,对业务流程的测试繁琐、复杂。此时测出的BUG如果是通过多个特殊的步骤出现的,要迅速地定位并修正就很不容易了。当然,这只是相对而言,任何BUG都会象蛛丝一样被轻轻抹去,只要事先有充足的准备,例如对数据表很熟悉,这确实很重要。

bufbomb实验心得及详细步骤

bufbomb是一个很有意思的,带有游戏性质的缓冲区溢出实验, 能够帮助你加深理解《Computer Systems A Programmer’s Perspective》书中第三章《Machine-...
  • q1w2e3r4470
  • q1w2e3r4470
  • 2015年04月10日 11:05
  • 8883

Linux学习笔记(9)

1、其他常用命令 挂载命令 1、查询与自动挂载 [root@localhost ~]# mount #查询系统中已经挂载的设备 运行效果: [root@localhost ~]# mount /dev...
  • u011192409
  • u011192409
  • 2015年03月08日 11:15
  • 460

php备忘录模式

CleverCode最近在看备忘录模式。 1 模式介绍  在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 2 模式中的角色   ...
  • CleverCode
  • CleverCode
  • 2016年11月05日 17:24
  • 1128

深度学习笔记之caffe安装教程

本文参考自http://blog.csdn.net/u010193446/article/details/53259294 我安装的是基于ubuntu16.04的cpu版本。说明一下:因为我先前已经安...
  • LIUSHAO123456789
  • LIUSHAO123456789
  • 2018年01月08日 09:51
  • 25

数的变幻(和数能表示1~23的5个正整数)

/**************************************** * File Name : figure.c * Creat Data : 2015.1.29 * Au...
  • qaz3171210
  • qaz3171210
  • 2015年01月29日 16:21
  • 561

安卓小项目实战之--定时提醒备忘录

写在前面:      安卓的学习也有半年多了,期间也曾写过博客,但大多都是一些琐碎的笔记,基本没用任何参考价值,这几天闲来无事,便想做个小项目来玩玩,巩固一下基本知识,并且完整的记录下来整个开发的过程...
  • wingichoy
  • wingichoy
  • 2015年05月18日 23:30
  • 2599

android 备忘录之简单实现

首先创建保存备忘录信息的表:
  • kuangfengbuyi
  • kuangfengbuyi
  • 2014年10月31日 17:50
  • 16317

备忘录实现 源码

首先创建保存备忘录信息的表: DbHelper.java [java] view plaincopy在CODE上查看代码片派生到我的代码片 package com.cjq.androi...
  • syf6568362
  • syf6568362
  • 2015年12月30日 16:15
  • 1477

Android实战简易教程-第六十九枪(自定义控件实现雪花飘落效果)

现在APP要求越来越高了,不只是要求实现功能,颜值的要求也越来越高,下面我们通过自定义控件来实现雪花飘落的效果,可以作为界面背景哦。1.自定义控件:package com.test.a; impor...
  • yayun0516
  • yayun0516
  • 2015年10月29日 11:03
  • 3186

设计模式学习之备忘录模式:象棋中“悔棋”操作

题目分析:备忘录模式的定义是捕获一个对象的内部状态并在该对象之外保存这个内部状态。从这个模式的定义可知我们需要一个类随时对目标对象的保存和创建进行管理,这个类就是Origintor(发起人)类,同时也...
  • u014293306
  • u014293306
  • 2015年06月23日 14:11
  • 1001
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序备忘录:之五-熟悉数据表(2004/08/23 20:04)
举报原因:
原因补充:

(最多只允许输入30个字)