第三次作业

第三次作业

目录

 

一. 编码规范 78

1.1 HTML编码规范 78

1.1.1 缩进与换行 78

1.1.2 命名 78

1.1.3 标签 78

1.1.4 属性 79

1.1.5 编码 79

1.1.6 cssJavaScript的引入 79

1.1.7 title使用 80

1.1.8 按钮 80

1.2 JavaScript编码规范 80

1.2.1 缩进 80

1.2.2 换行 80

1.2.3 空格 81

1.2.4 命名 81

1.2.5 语句 82

1.2.6 注释 82

1.2.7 变量 83

1.2.8 条件 83

1.2.9 对象 84

二、 项目ER 84

2.1 数据库设计 84

2.1.1 家庭基本情况数据库表格 85

2.1.2 家畜养殖情况数据库表格 86

2.1.3 草场使用情况数据库表格 86

2.1.4 家庭收入情况数据库表格 87

2.1.5 家庭支出情况数据库表格 87

2.1.6 家庭固定资产数据库表格 88

三、 项目主要功能模块 88

3.1 主页功能模块 89

3.2 家庭基本情况模块 78

3.3 家畜养殖情况模块 79

3.4草场使用情况模块 80

3.5 家庭全年收入模块 81

3.6 家庭全年支出模块 82

3.7 家庭固定资产模块 83

四、 体系结构设计 84

MVC框架 84

 

一.编码规范

1.1 HTML编码规范

1.1.1 缩进与换行

  • 使用4个空格键进行缩进,不能使用tab键进行缩进。
  • 每行字符不超过200个。

 

1.1.2 命名

  • class必须全部为小写,不能写成大写字母,单词之间用符号“-”进行分隔。
  • class 必须代表相应的功能模块或者部件的内容及功能,不能以样式信息命名。
  • id 必须保证在同一个页面中的唯一性,不能出现两次及以上。
  • idclass的命名要在保证不冲突及描述清楚的情况下尽可能短。

 

1.1.3 标签

  • 标签中的命名都使用小写字母进行标注。
  • 标签的使用应该遵循其语义。
  • 标签的使用必须符合其嵌套规则。
  • 标签的命名尽量简短,不冗余。

 

1.1.4 属性

  • 属性必须使用小写字母命名。
  • 属性必须要使用双引号引出。
  • 属性名中间使用“-”分隔。

 

1.1.5 编码

  • 页面必须使用精简形式,明确指定字符编码,指定字符编码的meta必须是head的第一个直接子元素。
  • Html使用“utf-8”进行编码。

 

1.1.6  cssJavaScript的引入

  • 引入css与JavaScript时必须指明rel=“stylesheet”。
  • 引入css与JavaScript时无需指定type属性。
  • head中引入页面中所需要的所有css资源。
  • 在页面末尾引入所有的JavaScript资源。

 

1.1.7  title使用

  • 页面中必须要使用title来指定标题。
  • Title必须作为head的子元素 ,跟在其后面。

 

1.1.8 按钮

  • 使用button时,要明确指出该button的type属性值。
  • 尽量不适用按钮类元素的name属性。

 

 

1.2 JavaScript编码规范

 1.2.1 缩进

  • 使用4个空格键进行缩进,不适用tab键缩进。

 

1.2.2 换行

  • 每个独立的语句结束后,必须进行换行操作。
  • 每行不得超过200个字符。
  • 运算符进行换行时,运算符必须在新一行的开头位置。
  • 在函数声明,函数表达式,函数调用,创建对象,创建数组,for语句等循环时,不允许在“,”或者“;”之前换行。
  • 每行字符超过200时,可根据语义进行合理的缩进。

 

 

1.2.3 空格

  • 二元运算符两侧必须要有空格,一元运算符与操作对象之间不能有空格。
  • 使用花括号前必须加空格。
  • 函数声明,具体函数表达式,函数调用时,函数名和“(”之间不允许有空格。
  • 单行声明的数组与对象,如果包含元素,“()”与“{}”紧贴括号部分不允许包含空格。
  • 程序结束时,不允许有多余的空格。

 

1.2.4 命名

  • 函数,变量名,参数等均使用Camel命名方法。
  • 常量使用全部字母大写,单词间隔下划线的方式命名。
  • 类使用Pascal命名方法。
  • 累的方法,属性使用Camel命名方法。
  • 类名使用名词,简洁易懂。
  • 函数名使用动宾短语命名。
  • Boolean型变量使用“is”或“has”开头命名。

 

 

1.2.5 语句

  • 不能省略语句结束时的分号“;”。
  • 在分支,循环,函数块中,即使只有一条语句,也要使用花括号,且不得省略分号。

 

1.2.6 注释

  • 单行注释时,“//”后面必须加一个空格,缩进与下一行被注释的代码一致。
  • 多行注释时,使用“/*  */”来进行注释。
  • 文档化注释时,要使用“/* * *...*/”注释块来进行注释。
  • 使用@class方法来标注类或者构造函数。
  • 函数或者方法注释时,要包含其参数,返回值及类型等信息。

 

1.2.7 变量

  • 变量必须在使用前进行声明,且即用即声明,不能提前全部写在一起。
  • 一次只声明一个变量。
  • 变量声明时要明确指出其类型。

 

 

1.2.8 条件

  • js中,严格使用“===”来判断其值是否相等,仅判断是否为null或undefined时使用“==”,使用“===”可以避免判断式中隐式的类型转换。

 

 

1.2.9 对象

  • 使用动态创建方式创建新的对象。
  • 在创建对象时,如果一个对象的所有属性可以不添加引号,则所有属性不得添加引号。

 

 

二、项目ER

2.1 数据库设计

数据库概要设计E-R图如3.3.1所示,包括FamilyGrassAnimalIncomeOutcomeEquip实体,箭头表示存在关系。

 

 1 数据库ER

2.1.1 家庭基本情况数据库表格

家庭基本情况中,原始的调查数据很多,包括家庭经营类型,民族,是否有定居点,顶住时间,在校学生人数,出家人数,政府工作人数,草地承包面积,承包年份,承包时人口,是否参加生产合作社,合作社类型,参加时间等众多信息,对信息进行筛选,选择与研究有关的数据建立数据库Family(家庭基本信息表)。得到家庭基本情况的数据库表格如下表

1。

 

  2.1.2 家畜养殖情况数据库表格

家畜养殖调查表中主要包含信息有,牛/羊的年初数量,年末数量,基础母蓄数量,产品蓄数量,年末家畜重量,草料数量,草料费用,兽医费用,年内购买/损失/自用蓄数,年初预期出售数量,预期出售价格,年末实际出售数量及价格,年初预期副产品收入,年末实际副产品收入等多项信息,挑选需要研究的数据,建立Animal数据库的表如表2所示。

 

 

 2.1.3 草场使用情况数据库表格

  草场使用情况中,主要包含信息有草场面积,放牧天数,放牧季节,是否有围栏,是否有水源,是否有牧道穿过,是否有公路穿过,是否为自有牧场,是否为租入草场,租入年限,是否为联户公用草场等基本信息,建立草场使用情况的数据库表Grass,其中答案为“否”用“0”表示,“是”用“1”表示,放牧季节中,“1”表示冬季,“2”表示夏季,“3”表示四季,数据库表格如下表3所示。

 

 2.1.4 家庭收入情况数据库表格

家庭全年收入中包含的信息有,畜牧收入,虫草收入,政府补贴,保险收入,务工收入,其他收入,全年总收入,建立数据库表格Income如表4。

 

 

 

2.1.5 家庭支出情况数据库表格

 家庭全年支出中包含有教育支出,宗教支出,消费支出,畜牧投资,医疗卫生,人情支出,其他支出等,建立全年支出数据库表Outcome如表5。

 

 

 

2.1.6 家庭固定资产数据库表格

家庭固定资产中包含有牧业机械数量,牧业机械总值,运输机械数量,运输机械总值,舍饲面积,舍饲总值,役用牲口数量,役用牲口数量,役用牲口总值,居住点面积,住居店总值。根据这些信息建立家庭固定资产数据库Equip如表6所示。

 

 

 

三、项目主要功能模块

3.1 主页功能模块

该系统中主页主要对三江源地区的人口分布,家畜养殖,草场使用情况,全年收入支出,固定资产等数据进行展示,包括饼图,折线图,表格等。主页界面如图2所示。 

2 系统主界面

3.2 家庭基本情况模块

家庭情况分析包括基本数据和SPSS数据分析结果两个个部分。基本数据是调查的原始数据的展示,用户可以查看调查得到的数据,同时可以通过户主编号进行查询,以查看想要搜索的牧民家庭数据,如图3。SPSS数据分析结果是对牧民家庭情况数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,用户可以观察数据的情况和数据之间的关联情况,如图4

 

 3 家庭情况调查数据表

 

4   家庭情况SPSS数据分析结果

3.3 家畜养殖情况模块 

家畜养殖分析包括基本数据和SPSS数据分析结果两个部分。用户可以查看调查得到的数据,同时可以通过户主编号进行查询,以查看想牧民的家畜养殖情况,如图5SPSS数据分析结果是对牧民家畜养殖数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,如图6

 

  5  家畜养殖调查数据

 

 

6  家畜养殖SPSS分析结果

 

 3.4草场使用情况模块

草场使用分析包括基本数据,SPSS数据分析结果两个部分。用户可以查看调查数据,可以通过户主编号进行查询,以查看想牧民的草场使用情况,如图7SPSS数据分析结果是对牧民草场使用数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,如图8

 

7  草场使用调查数据


 8  草场使用SPSS分析结果

3.5 家庭全年收入模块

全年收入分析包括基本数据和SPSS数据分析结果两个部分。用户可以查看调查数据,可以通过户主编号进行查询,以查看想牧民的全年收入,如图9SPSS数据分析结果是对牧民全年收入数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,如图10

  9  全年收入调查数据


10  全年收入SPSS分析结果

3.6 家庭全年支出模块

全年支出分析包括基本数据和SPSS数据分析结果两个部分。用户可以查看调查数据,可以通过户主编号进行查询,以查看想牧民的全年支出情况,如图11SPSS数据分析结果是对牧民全年支出数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,如图12

 

11 全年支出调查数据


12  全年支出SPSS分析结果

3.7 家庭固定资产模块

家庭固定资产分析包括基本数据,SPSS数据分析结果两个部分。用户可以查看调查数据,可以通过户主编号进行查询,以查看想牧民的固定资产,如图13SPSS数据分析结果是对牧民固定资产数据进行描述性分析,相关性分析以及回归分析所得到的结果进行的数据的展示,如图14

 

13  固定资产调查数据

 


       14  固定资产SPSS分析结果

  

四、体系结构设计

  MVC框架

本次开发使用vs2012,语言为ASP.NET,底层框架为MVC

  • 模型(Model)封装的是数据源和所有基于对这些数据的操作。在一个组件中,Model往往表示组件的状态和操作状态的方法。模型持有所有的数据、状态和程序逻辑。模型独立于视图和控制器。
  • 视图(View)封装的是对数据源Model的一种显示。一个模型可以由多个视图,而一个视图理论上也可以同不同的模型关联起来。
  • 控制器(Controller)封装的是外界作用于模型的操作。通常,这些操作会转发到模型上,并调用模型中相应的一个或者多个方法。一般Controller在Model和View之间起到了沟通的作用,处理用户在View上的输入,并转发给Model。这样Model和View两者之间可以做到松散耦合,甚至可以彼此不知道对方,而由Controller连接起这两个部分。

 

posted @ 2017-11-01 21:23  秦晓凤  阅读(205)  评论(1编辑  收藏  举报