跳至内容
App-Link知识库
用户工具
登录
站点工具
搜索
工具
显示页面
修订记录
反向链接
最近更改
媒体管理器
网站地图
登录
>
最近更改
媒体管理器
网站地图
您的足迹:
模型管理指南:模型基本概念
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
====== 模型基本概念 ====== ---- 模型的概念和象征意义本节不阐述了。在App-Link的模型,可以理解为一个应用中的所有实体。对于一个新闻App来说,一条新闻是一个实体,一个新闻分类是一个实体,一条评论也是一个实体。通过讲实体的特征的提取和定义,我们便得到新闻模型,新闻分类模型,评论模型等。App-Link通过开发者创建的模型,来提供各种各样的服务,提高开发者的开发速度,同时也不会偏离开发者的面向对象分析、设计和编码。 因此,在App-Link平台的模型设计从来不会离开面向对象,那么,我们来看看如何从面向对象的角度来创建模型。 ===== 数据库设计角度 ===== ---- 对于面向对象的软件设计来说,最合适的数据库设计是实体关系图(E-R图,Entity-Relationship)。因为通过设计一个个的实体,将现实世界中的我们需要变成对象以及对象的相关属性。再通过实体与实体中的关系,将被设计的软件应用的世界联系起来,完成面向对象设计的第一个步骤。E-R图可以说是很清楚地表达了我们将要完成的软件世界的原型。我们以共享单车的实体设计为例子,来试一下画一个ER图。 {{:模型管理指南:共享单车er图.png?direct|}} 合理吗?看上去表有点少,不过我们已经足够利用一下4个实体所构建的表完成这个APP了。那么我们根据E-R图就可以来设计表结构了。 首先4张记录业务实体的表 <code> //单车表 tb_bike { bikeno varchar, location varchar } //用户表 tb_user{ mobileno varchar, balance decimal } //充值记录 tb_user_recharge{ user_id int, recharged_time datetime, recharged_amount decimal } //单车使用记录 tb_bike_uselog{ bike_id int,//单车ID user_id int,//用户ID starttime datetime,//开始借用时间 endtime datetime,//结束时间 paid_amount decimal//支付金额 } </code> 设计很简单,但这确实就已经是我们的共享单车APP的主要结构了,其它一切衍生功能都是围绕着这4个表来出现。那么,对于我们的共享单车APP来说,这四个模型就是我们对于一款APP对应于数据的业务模型,这四个业务模型装载了共享单车的所有数据。 **这就是我们APP-Link的模型了** ===== 面向对象设计角度 ===== ---- 同样,我们做面向对象设计,要把软件世界中的一个个对象抽象定义出来。这些对象和实体模型非常相似,设计如下: <code> //单车表 class Bike { string bikeno; string location; } //用户表 class User{ string mobileno; decimal balance; } //充值记录 class UserRecharge{ User user; DateTime rechargedTime; Decimal rechargedAmount; } //单车使用记录 class BikeUselog{ Bike bike;//单车ID User user;//用户ID DateTime starttime;//开始借用时间 DateTime endtime;//结束时间 Decimal paidAmount;//支付金额 } </code> 在面向对象的中设计的对象,就是我们的数据模型。 **这就是我们APP-Link的模型了** ===== App-Link中的模型 ===== ---- App-Link的模型就是这么简单,并且融合了以上两者的概念。换言之,就是**类设计和数据库表实体设计的概念二合为一**。我们这里简单暴力地来告诉各位,App-Link的模型有什么特色,以直接让你领会,什么叫二合一。 ==== 名字 ==== 名很重要,名字觉得了这个模型是做什么的。User这个名字的模型绝对不会变成单车,因此,每一个模型都有一个专属的名字,而每一个名字都是你在进行**面向对象设计中定义出来的**业务对象。 ==== 数据表 ==== 以前,我们定义类,定义数据表,基本上都是分开定义的,表不一定对的上类设计,类设计并不一定只是一张表的内容。App-Link大胆地认为,这种想法完全错误。对象的类设计分为很多种,其中有一些类就是专门装在数据库的表设计用的,这种类基本上定义了就必须和数据库表结构一致。 App-Link中,将模型的类设计的概念融入表的概念,让两者揉为一体。因为每一个模型就是软件中设计的实体,这些实体必然是要有**数据存储**。 ==== 对象属性或表字段 ==== 在App-Link的模型概念中,因为数据库表和类设计的概念是二合一的!因此,在APP-Link的模型设计中,我们的模型设计需要类名和表名,当然更加需要对象属性和表字段。这两者是一样的概念。在App-Link中,我们定义了许多常用的字段类型。 ===== 模型的作用 ===== ----
模型管理指南/模型基本概念.1495380615.txt.gz
· 最后更改: 2017/05/21 23:30 由
admin
页面工具
显示页面
修订记录
反向链接
回到顶部