数据库与程序设计(前端编程与数据库设计的合理运用方法)

中国论文网 发表于2022-11-17 21:20:46 归属于电子论文 本文已影响496 我要投稿 手机版

       中国论文网为大家解读本文的相关内容:          

摘 要:软件开发中,数据库设计与前端编程的比重应该合理安排,在设计中充分考虑用户功能和运行效率以及维护便利性

关键词:软件开发;数据库设计;前端编程;合理运用
  常见的信息管理软件(MIS)通常由应用程序和数据库两部分组成,这里通常涉及的数据库是关系数据库,数据信息在其中被存储和处理。产品的开发过程中,同时需要程序语言和数据库的设计。这就涉及到一个彼此份量的搭配问题,亦即是程序设计多一些,还是数据库设计多一些。
  相信很多计算机软件工作者都有这样的经历,上学时学习了各种程序设计语言和数据库设计。那时觉得数据库就是“select”,程序语言就是流程和变量,似乎二者没有必然联系,当正式为用户开发产品时,才发现原来这才是我们需要做的。于是写一些程序,做一些表,就成了最初带有数据库的应用软件。随着学习和实践的发展,慢慢的技术熟练了,但很多时候把握不好程序设计与数据库的搭配比例。
  具体看两个案例:一个程序设计娴熟的软件开发工程师更善于用程序语言来实现功能,结果他设计的数据库非常简单,只是一些没有深度关联的表,数据库在他手里就变成了一个纯粹的存储器,而前端的程序设计才是他的重头戏!所以他采用了典型的微软组合VB+access,结果一旦用户需求有更改,就需要修改并重新编译和发布程序,更严重的是用户数据量变大时,该软件的运行效率急剧下降。另一个开发者或者意识到了数据库的优势,于是数据库系统采用了sqlserver,大规模进行了数据库的开发,哪怕一个查询也要写成存储过程或者函数,最后搞的产品还没有发布,自己的维护人员却累个半死,因为维护程序的人根本看不懂他写的程序,数据库中也存在了太多的存储过程和函数,查找起来非常繁琐。以上两种极端表现显然是不可取的。
  软件的开发,需要根据具体情况来设计。数据库的发明为软件业带来了很大好处,很多数据的处理在数据库内部都是经过优化的,因此适当地应用好数据库的设计可以简化前端程序的开发,并且是便于维护和高效的。例如数据库的索引可以提高查询效率;一个复杂的查询可以用视图来实现,这样在数据表变更时只需要调整视图而不用修改前端程序设计;约束可以帮助捕获运行中的异常和避免设计缺陷……然而不是说数据库是万能的,数据库也不可能完全取代前端的程序设计。程序是可以做得很细,从原理上是可以完成任何需要的合理的逻辑,但是如果任何内容都用程序设计实现,那么最后的应用程序会很庞大,运行效率也不会很高甚至是累赘的。适当合理地利用数据库实现,即可以保证处理速度,又可以减少程序与数据库的交互次数,从而整体上设计更合理,效率也更高。
  再看一个VB+access的简单例子,我们需要在access中插入主键信息是整数的信息,插入时前端程序需要知道当前插入信息的主键值,所以要插入的信息的主键需要在应用程序中生成。在access中自动生成整形主键值有自增长和随机数两种方式,显然这样的生成速度很快,但是应用程序在插入数据时无法获得主键值,因此在应用程序中可以模拟数据库自增长方式,亦即查询出最大值然后加一再作为主键插入。但是这种自增长的方式会造成一个问题,那就是整数资源的浪费,例如数据库中有10条记录,主键分别是1到10,如果删除了中间几条,再插入时新的主键会是11,那么中间删除的几条的主键值便不可以再利用了,这样的后果是将来数据量太大时,主键值有超出计算机整数运算能力的范围。所以我们曾为了节约资源,在前端应用程序中用了所谓“智能”的方法来充分利用闲置的整数资源,这种方法需要遍历已存记录,所以记录多时效率异常低下,因为这样遍历交互次数太多了。最后解决的方法是,第一,把数据库中相应的字段类型更改为长整型尽量避免溢出;第二,在应用程序端依然采用最大值加一的方式生成主键,但是提供一个整体刷新的方法,就是在一定时期后整体整理数据库中的主键,使之从小到大重新更新并排序,例如如果数据库中存在1、3、4、6、7,我们使之整理成为1、2、3、4、5。如此即利用了数据库管理和批量集中整理的思想解决了这一问题。合理的利用不仅仅是直接使用,还可以借鉴思想。
  程序语言和数据库的侧重点不同,各有所长,如果强行让它们做不擅长的工作,势必事倍功半。现在人们更愿意把数据库系统叫作服务器,显然它对于用户是相对透明的,或者说是相对更“底层”一些;而应用界面是用户接触最多的,也是相对“前端”的。即便是单机运行的数据库软件,它其实也是分“前后端”的,一般贴近与人的叫前端,贴近机器的叫后端。所以正确的开发思想不妨这样认为:界面的使用和操作逻辑的形成是用户最直观的内容,因此也应该是开发者在程序设计中的重要实现内容;数据的存储和交互以及处理是应该由机器为人完成的,所以应该尽量利用数据库的设计使之规范化。因此,一个好的软件产品,是需要开发者用心“设计”的,只有合理的设计才能使之具有更好的表现,从而才是用户最需要的产品,才能最大限度地实现计算机的价值。

  中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。

返回电子论文列表
展开剩余(