00:00
需求确定下来之后呢,就开始进行我们的分析和设计,但是分析和设计包括我们架构的分析和设计,也包括我们什么呢?业务逻辑的分析和设计,那架构分析和设计这块呢,其实哎呀这块说这个大家可能也不太理解啊。架构分物理架构和逻辑架构啊,分析这些东西。那逻辑架构这一块,比如说你项目有分几层架构啊,啊什么表示层。什么什么业务层啊,什么持久层,你分不分对吧,你要不分的话,我这个就没有这个什么MVC了,就不用了,就不用那个VC了。用不用model one啊,用不用model to。啊,用这个还是这个model to,其实说的就是MVC啊,说的就是m VC modelone,比如说举个例子,使用JB完成所有开发,我们可能称作model one啊,使用纯JB去开发的话,JB能完成开发,它就是Java程序吧,那这样的话就model one啊,比如我们系统可能会可能会使用model to啊模型二,什么叫模型2MAC啊,使用这种架构模型去完成,你到底用什么是吧,你要是用的是一些高深的东西,我可能会加钱的。
01:15
嗯。啊,系统中你要用一些什么架构的话,我可能会加钱的是吧,根据这个架构,根据这个成绩的质量,我那定位什么,最后多少钱啊。另外的话,物理架构呢,物理架构其实说的是我们服务器呢,有几个数据库,服务器有几个,那比如说银行嘛,你想一想,银行的服务器,银行的数据库只能有一个吗?不是吧,那这一块发生地震的数据库毁了是吧,钱都丢了呗。因为一般富翁都变成穷光蛋了是吧。数据库服务器的分布啊,Web服务器的分布,那其实这个我们web服务器的话,像我们这个联通的啊,联通项目啊,联通项目的话,可能每一个营业网点就一个服务器。
02:03
那你想一想,我们这个营业网点有多少个?是不是营业者太多了,太多了,就咱们附近也有一个。是吧,比如说这个电信吗?电信旁边就有一个哪啊龙腾广场这了就个电信嘛,那营业网点吗?你想一想,你这样说,那个你给我开个手机号。啊。什么,现在不是有个叫三元红卡吗?知道吗?就开个三元红卡,那这个时候开的话,他要你身份证啊,要你身份证干嘛呀,录信息呀,是吧,你你看他那操作吧。你没有扭过头看看他的界面呢?扭过头一看,哦,Java写的。它那个底层啊,大部分现在都是Java源去实现的啊,它这个电信使用的这个系统呢,还有一个联通的使用的系统,大部分都是Java啊,你可以看一下他那个营业员嘛,在前面有台电脑嘛,在敲敲敲半天那个界面,你看录信息呢。
03:01
录你身份证号这个那的绑定的一点是吧,开什么开号是吧,就你这个号码就和你身份证号绑定在一起了。底层肯定有表关系吧,设计一下啊,有张表专门存手机号的,有张表可能专门存什么用户信息的,这两张表有没有关联,有没有关系,对吧?一个用户可能会关联多个手机号吧,他可能不止一个啊,所以这个时候底层都会有关系啊,就是这样,那么想我们像这种的外部服务器肯定不是一个外部服务器有一个,你想一想它用户群多大呀,它经得住吗?是吧,舱盖的服务器你你最高舱盖的服务器你开,比如1024是吧,那你肯定是顶不住啊,我们内存可能数据内存可能顶不住啊,我们并发量肯定会很大啊,整个呢,我们这个系统的一个用户呢,可能在一缩少多少万这样的用户以上啊,去访问营业网点太多了,每一个营业网点里面它不是一个人,他人就多了,是不是像银行,嗯,银行你开户啊,你肯定开户啊,开个工行卡开开个工行,比如信用卡啊,或者是储蓄卡,那你开卡的话,你进去排号了啊,你进去之后你坐那是吧,他就给你开卡了啊,然你开卡的话录信息啊,这都是啊,像这个系这种系统外部服务器肯定不是一个数据库服务器,肯定也不是一个在群啊叫群。
04:26
叫服务器群,数据库服务器群,那这样,那加上群之后呢,这个东西其实就难了,有一个东西叫分布式应用啊,叫分布式应用。又说到分布式了啊,比如说百度服务器,它不可能有一个吧,那你有一个,那访问访问量这么大是吧,在同一个毫秒级有300个300个并发量去访问,那么那那并发量多大呀,底层同时运行300个线程,而且在同一个毫秒级。300并发量很大啊。分布式应用呢,其实我们得搭建集群啊,有一个环境,我们其实叫集群集群。
05:06
集群其实说白了就是多台电脑用网线连起来,形成一个局域网,或者形成形成一个内部的自己的网络,然后呢,服务器呢,是分布在多台计算机上。这样可以达到负载均衡啊,这个词呢,其实还是很专业的,叫负载均衡。负载均衡,这没有,这样做有什么好处啊,升级是不是就没有问题了,我问你只有一台服务器,升级是不是就是个问题啊,你只有一台服务器,你升级,那你那你怎么办呀?你只能把服务器停一下再升级吧,那你这个时候你一停的话,你觉得百度还能访问吗?百度首页花了是吧?不能访问了,所以我们有个东西其实叫负载均衡啊,叫分布式应用负载均衡多台电脑啊,共永衡这个跑服务器的一个模块,另外一个模块,另外一个模块,其中呢,我可以先对这个服务器进行升级,这两个服务器是不是还在运行,客户是不是还可以访问,那么这个时候这两这个升级完之后,把转让用户转入到这个服务器上,然后升级这个服务器和这个服务器是这意思吧,升级吧。
06:08
好,升级啊。这边呢,有一个分析和设计,然后再说一是一个架构的分析和设计,和业务逻辑的分析设计,架构设计,包括我们的逻辑架构和物理架构啊。逻辑架构这块再说一下是高层,包括咱们这个项目要几层架构啊,N层,三层啊,咱们表示层,刚才说的表示层,业务层,持久层,那这个东西咱后边再说啊,现在说也不明白啊,M Mac Mo one Mo,物理架构指的是我们底层啊,你这个用户群是多少,是两个还是2000。你这个用户群大的话,我们看看几个服务器合适啊,一个数据数据数据库量大,数据库大,数据库的数据大的话,我们就采用几个数据库服务器啊,这个都要想一想,另外呢,还有技术解决方案。这个技术解决方案的话,我们在这个阶段会决定啊,我们是用Java还是当ne啊,还是其他的C呀,还是C加加,还是说我们用这个嵌入式开发,还是用汇编啊,就是这块的话都会都会解决啊,都会记出决啊,那我们一般都是Java吧,一般我们要做这个项目,我们要接活的话,我们肯定不会接个点ne没有这些程序员,嗯,但最起码我们这个小组不会,但是呢,你要知道一个软件公司,他可能不止软件公司,他他可能不只是Java吧。
07:26
他是不是也有也有其他的项目组啊,其他项目组可能是纯什么的,纯点ne的也也可能其他项目组可能是纯C的,纯C加加的也有可能这东西很难说是吧,所以呢,咱们一般接的都是这个加了啊。然后呢,架构分析完了之后,架构分析和设计完了之后,你就业务逻辑了,业务逻辑的分析和设计这一块其实是比较难的,业务逻辑分析设计是从这一段开始的嘛,其实严格意义上讲也不是从这段阶这个阶段开始的啊,在这是不是就有了。在这是不是有一些简单的业务逻辑的分析和设计了,但其实这个东西没有一个严格的这个界限啊,咱班里也有计算机专业的吗?
08:04
有计算机专业的吗?计算机专业应该有学过一个学过一一个一个专业的课程啊,叫软件工程了,软件工程的话,它是不是里边也讲这个开发步骤了来讲了啊,但是这个那个步骤啊,要比这个详细很多吧,详细很多那个是理论啊,理论和实战是不一样的啊。简单提一提啊,架构的分析和设计,业务逻辑的分析和设计,业务逻辑分析呢,主要是。业务逻辑的分析啊,根据需求分析我们的业务逻辑,分析哪些人用啊,他们这些人用的这个系统做什么使用这个系统步是什么样的明显的类啊来支撑,也就是从这个阶段其实已经开始设计类了,但是这个设计类呢,是一个呃,大体的设计啊,设计上主要的一个类啊,会有哪些不同的提示反馈给用户啊等等分析这些东西本阶段与需求确定的密切相关,需求的确定。
09:04
通常在确定需求的时候进行相关的分析,其实这个刚才说了,这个东西其实在开始的时候,需求那个阶段已经开始了啊,并没有严格的一个界限,设计这一块的话,其实呢,这个东西涉及到一个具体的什么,你看有如数据库了吧,嗯,开始进行数据库的设计了啊,开始进行数据库的设计啊,然后呢,根据需求分析来确定具体的类,然后类的属性,类的接口,就是方法类之间的关系,然后确定用户操作流程在设计上的反应啊,设计上的反应。这个类之间的关系这个东西其实我有必要再给大家提一提啊,行,那这样吧,我把类之间关系呢给大家画一个,这个大家原先安装的是starl是吧,我在安装一个工具啊,从今天开始我们用这个工具rational Rose啊用这个来我来装一下。
10:06
哎,你先别下载啊。你下载的话,我这比较慢。你先别下啊,等下课之后我走了你再下啊。来下一步,下一步它就是这啊,选第二项就行了,叫vision Rose enterprise edit啊来下一步下一步啊,然后他就准备安装了啊,稍等一下。嗯。我们说一说类之间的关系啊。来这边下一步下一步点接受就行了,下一步啊,下一步下一步就行了,这个没什么可说的啊,我说一下这个东西最后安装完之后呢,有一个破解,这个破解的话,我一会再说一下这个破解怎么破解。这个东西破解很有意思啊,他得不是替代这个啊,你不要看到这个什么color啊,然后想到替替换这个不是这个跟那个没关系。让他装着吧啊。
11:01
行了,咱们继续吧,啊继续看这个。刚才说到我们这个业务逻辑的设计啊,设计这块呢,牵扯到一个具体的类啊,类的一个属性,类的方法,类之间的关系,嗯,用户的操作流程,在设计上的反应,进行数据库的设计啊,这个阶段是相当于就等于基本上也算就是开发,算是离编码是不是就很近了,那数据库的开始设计了,数据库,数据库设计呢有三范式,大家还记得吧。数据库设计三范式是什么呀?一范是什么?数据库设计你不是随便设计的,你是不是有依据啊,我是依据这个范式去这个设计数据库的第一范,比如说你现在这个必须有主见吗?每个字段原子性不可再分吧,第二是什么?二班是什么?不能产生什么传递依赖吗?三犯呢?不能产生部分依赖吗?
12:04
这个三个范式你得知道啊,三范式。这个你们讲过呀,就是二尔那个阶段不是讲到最后的时候,不是有设计出数据设计三范式吗?这个三范式呢,我说一下你再回顾一下了啊,自己下周看一看,我就不再讲了,三范式简单说一说,实际上呢,范式这个东西呢,其实有的时候我们也不会完全遵守三范式。什么意思,有的时候我们会根据客户的需求,客户说啊,这个项目的急着要上线啊,我们几天之后我们项目要上线了,这个东西的话,你就不这个这个这个设计的话,你你就你什么什么浪费什么数据库的空间,这个东西我们空间有啊,你浪费就浪费吧。是吧,你要写到一张表里边儿,以前就有这种情况啊,你要写到一张表里面也有也有这种情况的存在。啊,写到一张表里边也有。啊,所有字段放在一张表里边,你看思考语句它写的时候很简单啊,连写什么表连接不用一条语句查出来了是吧,这样啊,所以这个东西很难说啊,不是说什么,这是怎么个情况。
13:06
你这也打开了。
我来说两句