热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

从前往后说学生信息管理系统

学生信息管理系统,顾名思义就是为了管理学生的相关信息做的一款软件。虽然这次有源码供我们参考,但是从中我学习到了如何从开始到完工去做一款软件,

学生信息管理系统,顾名思义就是为了管理学生的相关信息做的一款软件。虽然这次有源码供我们参考,但是从中我学习到了如何从开始到完工去做一款软件,下边我从做一项软件项目的前后顺序来总结我的学生信息管理系统。

一,分析需求:首先在做这款软件是,我们先想象一个成品,他的功能有哪些,每个功能完成哪项任务,这就是所谓的需求。对于学生信息管理系统,我们可以想象他需要1,用户名去登陆进入系统,并有相应的管理用户名;2,学生学籍信息(即个人基本情况)的管理和存储;3,学生在学校的基本情况(例如,所在班级,班主任,年级等)的管理存储;4,每个年级对应课程即课程相关信息的存储与管理;5,对于每位学生添加考试成绩信息的存储与管理。满足这些功能,一个在校生的相关基本信息管理就可以完成了。

二,根基需求和以后工程的大概框架,来建合适的数据库:

有了需求,数据库的建立是一项工程非常重要的一个过程,能建一个合适的数据库,会使我们以后的编写程序工作非常顺手,反之则是难上加难。根基上边的需求分析,我们这个学生管理系统建了六个表,分别是:

1,User_info2,student_info

3,class_info4,course_info

5,gradecourse_info6,result_info

这是所建立的几个表,大家注意其中的红色标注和绿色标注,是可以将表联系起来的关键,下边看我这张导图,大概介绍一下:

建立好了表,建立上彼此的关系,这样就可以牵一发而动全身,在设计的程序中,我们就可以通过输入一个表的相关信息,而通过其联系把其它表的相关信息也调出来.其实也非常正确,这个数据库是围绕着学生这个实体进行建立的,其中的各种相关信息当然也都有联系.数据库就是通过关系把实体联系起来的,所以又叫关系数据库.

三,根基数据库的表,建立合适的程序框架(即建立窗体的分布和之间的关系):

四,做好了各项准备工作,就开始动手设计界面,编写程序代码了.

在这里我想强调的是三点,第一,界面一定要设计的合理,美观,对于我们初学者,我们可以参考我们常用软件的界面去设计,取其精华。(例如,颜色的使用,控件的整齐与否,tab键的顺序,常用快捷键的添加等等,这些都使我们新手力所能及的,所以一定要做好,体现的是全心全意为人名服务的思想)。第二,对于代码的编写,我想说的是,只要窗体间的联系不大,我们就可以,一个窗体一个窗体的实现其功能,除非对于那些联系非常大,需要我们一起来完成(例如,学生管理系统中的模块和登录窗体,因为登录窗体中用到了窗体中定义的函数等,有非常紧的联系)。在完成一个窗体的功能时,需要我们做的是调试,不要等到最后一起调试,要一个窗体一个窗体的调试,这样最后总的调试我们会轻松很多。第三,就是文档的编写(现阶段我们更体现在添加注释上),对于如何设计软件,如何实现功能等等都需要我们用文档的形式写出来(做的不好),当然还要必须做的就是添加注释,这些对我们以后的调试和维护都有非常重要的意义。

五,在完成了程序的程序编写设计,在需要做的就是做打包处理,进行验收

打包处理工作,我们通过运用相应的打包软件工具(例如Setup Factory 7.0)就可以完成,相对来说比较简单;而对于后期的验收来说,需要我们找有经验的相关人员,来对我们的软件进行测试,找bug,提意见。

六,最后,就是根基测试结果,完善程序,做所完成程序的最后总结

这样一项项目就基本完成,如果实在公司中,我们经过反复的实验调试完善后就可以投入使用了!

最后,我想说说在这项工程中我学习到的做一项工程的流程,这是流程图,希望对大家有帮助:


推荐阅读
  • Vue 2 中解决页面刷新和按钮跳转导致导航栏样式失效的问题
    本文介绍了如何通过配置路由的 meta 字段,确保 Vue 2 项目中的导航栏在页面刷新或内部按钮跳转时,始终保持正确的 active 样式。具体实现方法包括设置路由的 meta 属性,并在 HTML 模板中动态绑定类名。 ... [详细]
  • 本文探讨了如何通过最小生成树(MST)来计算严格次小生成树。在处理过程中,需特别注意所有边权重相等的情况,以避免错误。我们首先构建最小生成树,然后枚举每条非树边,检查其是否能形成更优的次小生成树。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 本文详细介绍了如何使用libpq库与PostgreSQL后端建立连接。通过探讨PQconnectdb()函数的工作原理及其在实际应用中的使用方法,帮助读者理解并掌握建立高效、稳定的数据库连接的关键步骤。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • SQL中UPDATE SET FROM语句的使用方法及应用场景
    本文详细介绍了SQL中UPDATE SET FROM语句的使用方法,通过具体示例展示了如何利用该语句高效地更新多表关联数据。适合数据库管理员和开发人员参考。 ... [详细]
  • Navicat Premium 15 安装指南及数据库连接配置
    本文详细介绍 Navicat Premium 15 的安装步骤及其对多种数据库(如 MySQL 和 Oracle)的支持,帮助用户顺利完成软件的安装与激活。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • IT项目管理过程中的方法、工具、技术
    工欲善其事,必先利其器。而对于一个软件开发项目,最重要的器就是方法,工具和技术。而这三要素中重要的又是方法论,方法是基础&# ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
author-avatar
纯De魔力_629
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有