[图解]分析序列图和代码的对应

1
00:00:00,920 --> 00:00:07,710
首先我们要说的,原来的分析序列图

2
00:00:09,250 --> 00:00:10,410
我们做了一些调整

3
00:00:10,660 --> 00:00:14,240
这是原来的,也是大家之前的视频

4
00:00:14,710 --> 00:00:16,430
里面看到的可能是这样的

5
00:00:16,990 --> 00:00:24,290
我们做了一些调整,做了一些修改

6
00:00:28,970 --> 00:00:30,400
当然,这个调整之后

7
00:00:30,410 --> 00:00:33,530
我们的类图上面也会有相应的调整

8
00:00:34,070 --> 00:00:36,280
因为这个操作有调整

9
00:00:36,290 --> 00:00:37,640
类图上操作会有调整

10
00:00:43,700 --> 00:00:46,850
类本身倒是没有调整

11
00:00:46,860 --> 00:00:49,420
但是它的操作会有调整

12
00:00:51,820 --> 00:00:54,570
我们一会在剖析代码

13
00:00:54,580 --> 00:00:59,160
运行代码的时候会这个跟对应来看

14
00:01:00,670 --> 00:01:01,800
这是修订的,这是原来的

15
00:01:03,200 --> 00:01:10,070
首先,我们来看代码的映射

16
00:01:11,650 --> 00:01:14,320
之前我们视频里面演示过

17
00:01:14,620 --> 00:01:16,020
EA怎么映射代码

18
00:01:16,820 --> 00:01:18,240
但是那个映射代码

19
00:01:18,250 --> 00:01:21,870
是EA本身原有的功能

20
00:01:23,600 --> 00:01:26,780
我们看我们这边的映射代码

21
00:01:26,790 --> 00:01:30,500
比如说,菜品,订单也好

22
00:01:30,510 --> 00:01:31,540
我们看订单好了

23
00:01:35,270 --> 00:01:42,740
订单,这里面,首先第一个,我们的属性

24
00:01:43,480 --> 00:01:44,880
我们每个都给它加了

25
00:01:46,010 --> 00:01:46,810
getter setter

26
00:01:46,820 --> 00:01:47,450
就是property

27
00:01:48,450 --> 00:01:49,830
直接就给它配上了

28
00:01:53,250 --> 00:01:57,330
也就是说,这部分

29
00:01:59,840 --> 00:02:01,750
跟我们之前生成的是不一样的

30
00:02:01,920 --> 00:02:03,630
之前是私有的属性

31
00:02:04,170 --> 00:02:08,120
现在就把私有属性跟getter setter放在一起

32
00:02:08,670 --> 00:02:09,750
就变成property

33
00:02:11,050 --> 00:02:14,170
这个在EA里面怎么生成

34
00:02:14,300 --> 00:02:16,010
也是可以生成的

35
00:02:16,260 --> 00:02:20,110
你就针对每一个属性

36
00:02:20,120 --> 00:02:25,070
这里点Property,选中它,这里点

37
00:02:26,210 --> 00:02:30,120
可以在这里设,设完之后你再生成

38
00:02:30,810 --> 00:02:33,440
就得到这样的代码了

39
00:02:34,920 --> 00:02:37,880
这个在EA里面可以调

40
00:02:40,050 --> 00:02:42,160
但是下面这部分是生成不了的

41
00:02:42,170 --> 00:02:44,420
因为序列图里面

42
00:02:44,430 --> 00:02:45,660
内容生成代码的

43
00:02:45,670 --> 00:02:46,940
EA目前是做不到的

44
00:02:47,290 --> 00:02:49,320
它有这个例子说可以做到

45
00:02:49,330 --> 00:02:50,800
而且它给了一个例子

46
00:02:50,810 --> 00:02:52,920
然后你按照它做真的能做到

47
00:02:53,530 --> 00:02:55,600
但是你离开了那个例子

48
00:02:55,920 --> 00:02:58,290
自己去创建一个

49
00:02:58,300 --> 00:03:00,400
然后再操作,操作不了

50
00:03:01,030 --> 00:03:01,710
为什么

51
00:03:01,720 --> 00:03:04,070
我也不知道,去查了资料

52
00:03:04,080 --> 00:03:05,430
看官网,看论坛

53
00:03:05,710 --> 00:03:09,510
没有,而EA且也没有给过更多的资料

54
00:03:09,640 --> 00:03:12,550
包括视频包括教程什么都没有给出来

55
00:03:14,980 --> 00:03:17,400
可能这个情况是比较特殊的

56
00:03:17,410 --> 00:03:19,950
里面可能通过了特别的配置

57
00:03:20,040 --> 00:03:21,430
这个就不太了解了

58
00:03:21,830 --> 00:03:25,380
目前来说,这个序列图生成代码

59
00:03:26,870 --> 00:03:29,060
EA还是不能够实用的

60
00:03:30,820 --> 00:03:34,530
哪个比较好,之前我有个教程里写UModel

61
00:03:36,230 --> 00:03:38,220
相对来说还比较好一点

62
00:03:42,880 --> 00:03:43,640
所以如果说

63
00:03:43,650 --> 00:03:46,520
我们坚持要用EA来生成代码

64
00:03:46,530 --> 00:03:49,990
这部分是没问题了,这部分可以

65
00:03:52,270 --> 00:03:53,340
下面这部分不行

66
00:03:55,560 --> 00:03:57,210
如果坚持要生成

67
00:03:57,220 --> 00:04:01,390
可以把一个类的文件分成两个

68
00:04:02,050 --> 00:04:05,300
一个类的内容分成两个文件来放

69
00:04:05,870 --> 00:04:09,570
一个文件是我们人编码进去的

70
00:04:09,930 --> 00:04:11,600
一个是EA生成的

71
00:04:12,890 --> 00:04:16,240
EA生成部分随着模型更新

72
00:04:16,510 --> 00:04:22,850
而这部分就在另外一个文件里面

73
00:04:22,860 --> 00:04:23,930
我们人来维护

74
00:04:28,910 --> 00:04:33,100
这是映射代码的,映射数据库

75
00:04:33,110 --> 00:04:35,540
之前已经演示过了

76
00:04:36,150 --> 00:04:36,970
这几个类

77
00:04:37,570 --> 00:04:41,900
12345

78
00:04:41,910 --> 00:04:45,930
12345,映射数据库

79
00:04:45,940 --> 00:04:53,560
我们的数据库在这里

80
00:04:53,890 --> 00:04:57,000
但是这个数据库并不是从EA映射得来的

81
00:04:57,900 --> 00:04:59,900
我们刚才讲了,用的是

82
00:04:59,910 --> 00:05:03,390
codefirst这个路线,先有代码

83
00:05:04,650 --> 00:05:08,950
然后代码再迁移到这个数据库里面去

84
00:05:09,580 --> 00:05:11,760
所以我们有这个之后

85
00:05:11,770 --> 00:05:16,680
我们建立了一个context类

86
00:05:20,460 --> 00:05:22,680
然后数据库在这里

87
00:05:24,410 --> 00:05:32,830
然后创建迁移,迁移到数据库里面去

88
00:05:35,290 --> 00:05:40,600
所以这个数据库模型,它是从类得来的

89
00:05:41,600 --> 00:05:43,050
当然映射的规则

90
00:05:43,060 --> 00:05:46,580
跟EA直接映射是差不多的

91
00:05:47,670 --> 00:05:49,340
除了这个表的名字

92
00:05:49,350 --> 00:05:50,900
这里每个这里

93
00:05:50,910 --> 00:05:53,140
微软默认给加了一个s之外

94
00:05:53,710 --> 00:05:54,870
其他没有区别

95
00:05:56,380 --> 00:05:57,840
ID什么也是自己给加上

96
00:05:57,850 --> 00:05:59,760
主键外键都是自己给加上的

97
00:06:01,930 --> 00:06:03,700
这是数据库

98
00:06:03,830 --> 00:06:05,780
我填了一些数据在里面了

99
00:06:07,320 --> 00:06:13,610
首先,餐台,这里搞了两个

100
00:06:13,620 --> 00:06:16,370
我们示意一下就行了,菜品分类

101
00:06:19,560 --> 00:06:23,490
搞了1 2 3 4 5 6个

102
00:06:28,480 --> 00:06:36,250
然后,菜品,搞了

103
00:06:36,260 --> 00:06:39,840
这么几个,两个菜,两个主食

104
00:06:45,050 --> 00:06:46,080
其他的还没有

105
00:06:48,260 --> 00:06:53,960
下面,我们来看代码的情况

106
00:06:56,890 --> 00:07:00,010
我们把它和序列图对比

107
00:07:01,650 --> 00:07:09,320
你看,第一个,食客提交餐台号码,这个在哪里

108
00:07:10,430 --> 00:07:12,930
这个就对应我们的界面

109
00:07:12,940 --> 00:07:15,710
我们就是用控制台的界面了

110
00:07:15,720 --> 00:07:20,260
你看,食客提交餐台号码(应为是Id)在这里

111
00:07:25,240 --> 00:07:27,180
控制台要求输入一个ID

112
00:07:30,820 --> 00:07:37,500
然后解析输入,得到餐台ID的参数

113
00:07:37,510 --> 00:07:41,040
这是第一个

114
00:07:41,430 --> 00:07:45,150
然后第二个,它调用了下单控制的

115
00:07:45,640 --> 00:07:48,390
准备点菜的操作

116
00:07:50,960 --> 00:07:53,460
就是这一句了

117
00:07:54,320 --> 00:07:57,790
这一句,准备点菜的操作

118
00:08:00,710 --> 00:08:06,820
在这里,参数就是一个餐台ID了

119
00:08:09,730 --> 00:08:13,670
准备点菜,它到了这一步了

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值