MVC实战之排球计分软件(深入了解面向对象编程)

在此篇博客之前,我已经写了一个实战系列的博客,虽然不太成熟但是相对比较实用,在这篇博客我将继续使用mvc编程此软件。

此篇博客会在一定的时间内完成,此次完成的软件的一个需求是提供给运动员的使用。我将在这一个月之内完成此篇博客的编写,

以及软件功能的实现。

在开始软件的编程之前,我们先再一次了解一下面向对象的语言以及面向对象的编程:

面向对象的语言

面向对象的语言支持的概念包括:类与对象、继承、多态。

面向对象的语言中一部分是新发明的语言,如Smalltalk、Java,这些语言本身往往吸取了其他语言的精华,而又尽量剔除他们的

不足,因此面向对象的特征特别明显,充满了蓬勃的生机;另外一些则是对现有的语言进行改造,增加面向对象的特征演化而来的。

如由Pascal发展而来的Object Pascal,由C发展而来的Objective-CC++ ,由Ada发展而来的Ada 95等,这些语言保留着对原有语

言的兼容,并不是纯粹的面向对象语言,但由于其前身往往是有一定影响的语言,因此这些语言依然宝刀不老,在程序设计语言中

占有十分重要的地位。

面向对象的编程

面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算

机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为

了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。

面向对象主要特征:

封装性:封装是一种信息隐蔽技术,它体现于类的说明,是对象的重要特性。

封装使数据和加工该数据的方法(函数)封装为一个整

体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接受哪些消息,具有那些处理能力),而对象的内特性(保

存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。封装的目的在于把对象的设计者和对象的使用者分开,使用者不必

知晓行为实现的细节,只须用设计者提供的消息来访问该对象。

继承性:继承性是子类自动共享父类之间数据和方法的机制。

它由类的派生功能体现。一个类直接继承其它类的全部描述,同时可修改和扩充。继承具有传递性。继承分为单继承(一个子类只有

一父类)和多重继承(一个类有多个父类)。类的对象是各自封闭的,如果没继承性机制,则类对象中数据、方法就会出现大量重复。

继承不仅支持系统的可重用性,而且还促进系统的可扩充性。

多态性:对象根据所接收的消息而做出动作。

同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。利用多态性用户可发送一个通用的信息,而将所有的实现

细节都留给接受消息的对象自行决定,如是,同一消息即可调用不同的方法。例如:Print消息被发送给一图或表时调用的打印方法与将

同样的Print消息发送给一正文文件而调用的打印方法会完全不同。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通

用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给

通用消息以不同的响应。在OOPL中可通过在派生类中重定义基类函数(定义为重载函数或虚函数)来实现多态性。(以上都是百度百科

的内容,可以使我们更加了解面向对像)。

了解了面向对象的编程,接下来我就将要完成软件的制作与编程:

时间: 2024-10-12 13:18:45

MVC实战之排球计分软件(深入了解面向对象编程)的相关文章

MVC实战之排球计分(八)——软件制作总结

此系列博客目的是制作一款排球计分程序.这系列博客将讲述此软件的 各个功能的设计与实现.到这篇博客,此系列博客就算是结束了. 在最后的这篇博客里 我们来做一些总结. 一,制作此程序,我们使用的是MVC框架.MVC是一种程序开发设计模式, 它实现了显示模块与功能模块的分离.提高了程序的可维护性.可移植性. 可扩展性与可重用性,降低了程序的开发难度.它主要分模型.视图.控制器三层. 使用MVC有诸多好处: 1:耦合性低 视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码, 同样

MVC实战之排球计分(一)—— 需求分析与数据库设计

一.需求分析: 这个程序是排球计分程序,其业务非常简单,具体如下: 1.本程序可以选择用户身份,通过不同角度记录比赛分数. 2.不同身份记录的比赛成绩将会存储在不同的数据表(目前适合运动员和观众使用). 3.用户键入数据后,可以继续对数据进行操作(如:删除.修改.查看详情). 4,不同的身份的用户 ,不能修改非己的数据.只能修改自己的数据. 这个项目的用例图如下: 数据库设计:设计数据表之前,首先进行实体和关系的识别与确定.通过需求分析,可以观察得出,本项目的实体有:观众,运动员.(观众可以修改

MVC实战之排球计分(二)—— 构架概要设计

本程序主要基于MVC4框架,使应用程序的输入,处理和输出强制性分开,使得软件可维护性,可扩展性,灵活性以及封装性得到提高, MVC应用程序分为三个核心部件:Model,View, Controller. 一, 架构基本原则: MVC是一个设计模式,它强制性的使应用程序的输入.处理和输出分开.使用MVC应用程序被分成三个核心部件:模型.视图.控制器.它们各自处理自己的任务. 视图 视图是用户看到并与之交互的界面.对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中

MVC实战之排球计分(三)—— 模型类的设计与实现

此软件使用的数据库连接方式code first 由EF框架产生数据库. code first需要对模型类设计和实现.模型类是现实实体在计算机中的表示.它贯穿于整个架构, 负担着在各层次及模块间传递数据的职责. 模型类和数据库中的表(这里指实体表,不包括表示多对多对应的关系表)是一一对应的 在此软件中,模型类和表是一一对应的,并且模型类中的属性和表中的字段也是对应的. 在看模型类的代码前,先看一下系统的工程结构. 如上图所示,在初始阶段,整个系统包括3个主要的工程文件夹,它们的职责是这样的: co

MVC实战之排球计分(五)—— Controller的设计与实现

控制器 控制器接受用户的输入并调用模型和视图去完成用户的需求.所以当单击Web页面中的超链接和发送HTML表单时, 控制器本身不输出任何东西和做任何处理.它只是接收请求并决定调用哪个模型构件去处理请求, 然后用确定用哪个视图来显示模型处理返回的数据. 在设计 Controller之前,我们同样先看看控制器所在的文件夹位置: Controller控制器接受用户请求,然后返回视图.控制器控制视图的产生.我们根据此软件的需求,设计所 需要的Controller.我们添加控制器就需要放到controll

MVC实战之排球计分(四)—— View设计与实现

(view)视图 视图是用户看到并与之交互的界面.对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services. 此软件的视图为用户提供可视化的界面及操作.使用户能清楚明白的使用软件的功能.view 通过controler的调用呈现给用户: 设计视图之前来看一下视图要放在哪个功能之内: 视

排球计分软件规则说明书

排球计分软件规格说明书 软件应用于:排球计分. 软件介绍:排球计分软件是专门针对排球的一款计分软件,可以利用排球规格轻松计分. 应用此软件可以代替人工计分过程,大大减少了由于人员操作引起的错误.可以使排球计分达到真正的公正,公开性.同时又方便了计分人员的记录操作,系统处理性强,安全性高.此软件以VS2010为开发平台. 软件开发流程:一:需求的分析:为了排球计分人员对排球比赛的充分了解与记录分析,此软件用来计分,和分析排球比赛.也为了方便其他新手排球计分人员的记录. 二: 计划:以VS2010为

排球计分软件规格说明书

适用范围,目的: 本产品主要应用于各种排球比赛,比如:校园排球比赛,其目的是为每场排球比赛进行有效计分,使用者多为比赛计分员. 系统概述: 1,本产品的目标: 产品主要对比赛分数进行处理,但产品本身并不能主动进行信息采集需根据产品需求及时提供所需信息,对比赛进行计分.提高效率,利用软件进行管理,避免人工管理的失误,从而实现干效率的积分管理. 2,产品功能: 对比赛比分进行统计:定时提醒交换场地:判断比赛胜负:统计比赛时间: 一般约束:     假定:用户能够提供交付测试的环境:     设计及实

MVC开发之排球计分(八)项目开发总结

项目总结: 本章的博客主要是用mvc编写排球计分的程序,到本次博客的制作书写,本章的排球计分程序算是结束了. 在最后,来做一下最后的总结: 我们先来看一下最初的需求分析表: 计划需要总时间: 10h 小组开发   需求分析: 1h 具体设计: 1h 具体代码: 5h 代码复审: 1h 测试: 1h 总结: 1h 最终所用时间:12h 根据这个需求分析表,最近三周阶段,共用12个小时完成了这项排球计分程序设计的任务, 在代码的分析与设计大的过程中超出了预算的两个小时, 本次的程序设计使用mvc的形