00:00
大家下边呢,别的我就不多说了,下边我就给大家简单说一下,介绍一下我们这个CRM项目的一些情况啊,这个下边我们就开始做准备做这个项目了,那做这个项目,我们这个CRM项目呢,这个先给大家整体从技术上角度上来讲,给大家简单介绍一下我们做这个项目所采用的一个都采用什么技术是吧,所采用的一个技术架构啊,看看做它都需要哪些技术是吧,其实这是一套面试题,是面试题,因为为什么是个面试题呢?因为他这个,当然你以后找工作的时候,你会写简历是吧,你简历上肯定会写你做过什么项目,有些项目经验是吧,人家比较看重这个项目,看重你的项目经验,所以做软件找工作的时候,最重要的就是项目经验。啊,你肯定简历上你会写我做过CRM项目,然后后边阶段还有别的项目的什么金融项目,知道吧?啊,不管你写什么项目,人家都会问你,你们做这个项目所采用的技术,采用什么技术架构,或者说你们做这个项目都用什么技术?
01:03
那你怎么回答呢?那你总不能说把我以前学的那几十门课一个一个给他列出来,对吧,那这列出来不太好知道,一看就是背的是吧,一看就不是真正自己写的是吧?那那那一看就背的,那就是那人家就不要你了是吧,你不是真正自己做的这个项目是吧?啊那就懂么,你要有条理的书,其实还是我们做项目就是用那些技术,但是你要有条理的书。啊,那你借助这个机会,你可以展示一下我对这些技术学的怎么样是吧,我能够驾驭得了这些技术是吧?那怎么驾驭得了你就知道是吧?每一个技术咱们学的时候其实不是白学的,为什么学这些技术就是解决我们以后开发项目当中所遇到的一些实际的问题的,每一个每一门技术都是解决一个问题的。他解决一方面的问题的,所以你要什么学这些技术,你不能说我学了我就知道,我学了我不知道这个技术是干什么的,我不知道他以后在做项目当中,然后呢是解决什么问题的,那以后你做项目,你遇到这类问题,你肯定也不会能想到要用这个技术去解决,你肯定也用不好它,你这个项目也做不好它,所以你可以什么借助他这个机会呢?问你这个问题的这个机会,你可以展示一下你对这几门这些技术的什么理解。
02:25
有条例的说法,按照什么我们写代码的一个什么这个用这些技术写代码的这个要解决问题的实际问题的这个这个顺序,或者说他这个,呃,实际这个发在项目当中发挥每一门技术发挥的作用来写的啊来来来描述它知道吧,那这样的话人家就知道啊,这个技术你可能是真正用过啊,确实是用这些技术来解决相应的问题的,知道吧。啊,下边呢,我们就给大家简单呃,按照条理性的什么给大家什么来描述一下我们这个CM项目所采用的技术都有哪些技术,懂吧,是那我们就按照什么,以后真正写代码的时候,那写代码的时候让这些技术解决相应的问题,哪些问题按照这个条理来给大家说知道吧,好,那我们写代码的话,用这些技术,这个写代码的话都是怎么写呢?都是按照什么。
03:20
我们一我们学过什么,应该说几十门课,你整个项目整个过程下来,我们学过几十门课,那么这几十门课什么,每一门课都是解决某一个在写代码过程中的某一个问题,就某一类问题的,那哪一类问题呢?不同的什么技术是应用在按照我们的这个以前给大家讲的做项目的这个代码是吧。并不,我们做项目写代码,并不是说把所有代码都堆在一起来写是吗?那为了什么把这些问题分的更这个更清楚,或者说什么,呃,这个以后写出来代码,解决这些问题的这些代码更好维护,我们前面老师给大家讲过,以后真正做项目的时候,我们说我们会把这些什么,这些技术性,这些技术的代码会写的分,分成把整个项目的代码分成不同的层,是吧?就每一什么,每一门技术它的什么所写的代码会出现在不同的层,换句话来说,每一门技术是解决不同层开发过程当中的这些问题的,知道吗?所以我们给大家描述的是可以按照什么整个代码分层的这种顺序来给大家描述这些技术。
04:31
是吧,每一门技术都解决不同层的这些问题,不同的问题知道吗?那你将来你可以给他说,那我什么在这一层我们用了什么技术,然后在这一层用了什么技术,在这一层用了什么技术,是吧?所以这样的话呢,他们就知道了,哦,你确实用过这个,这这些技术以后开发的时候确实是用的这一层的,是解决这一层的问题的,然后呢,这个技术确实解决另一层的问题的,所以这样你描述出来,跟你一股脑的全说出来是完全不一样的。
05:00
他是吧,一定知道,那么因为到企业里边开发也是这么来做啊,所以你描述出来,那他的效果肯定是不一样知道。好,这时候我们这个的,那下面我们具体就说一下,看我们这个开发我们这个外部项目每一层都采用什么技术,那首先呢,我问问大家,我们前面给大家老师给大家讲的那些什么做外部项目代码分层的原理,那么我们要做一个外部项目,整个代码会分为。垃圾桶。都有哪几疼?业务疼,还有啥疼?是图疼是吧?还有什么坑?好持久疼是吧?持久疼,业务疼,还有什么?仕途疼,还有什么疼。这三层了,还有什么层?对还有控制层是吧?啊,基本上我们外部开发基本上就是四层是吧?啊四层的话从高层从顶层开始到底层了,到底层的一个顺序就是顶层什么意思?就是说顶层跟用户打交道,就是离用户越近的那一层越什么越属于顶层,那什么底层什么意思,底层就越接近于什么数据库的那一层,越属于底层,知道吗?那我们这个顺序我们就这么来说吧,从顶层到底层开始是有这四层,分别是哪四层呢?对,视图层就是视图层啊视图层这是六层知道吧,这是跟用户打交道的知道吧,这是最顶层了,这顶最顶层了,下边是哪一层,你知道下边是业务层吗?
06:49
下边的业务吗。对控制层是吧,控制层知道吧,控制层知道吧,知道控制层知吧,这是再往下呢,对,这是业务层是吧,业务层,业务层我们通常把它叫做service层,对下边呢,对持久层是吧,持久层是这持久层是持久层,我们一般把它叫do层是吧,叫do层现在用说my body也叫map层知道吧,因为my body就是映射技术,Map是映射的意思是吧,好,这是我们说这四层,那么这四层每一层都有什么,都有每一层相关的技术去解决他们是吧,去开发这一层的相相关的功能,你不能用错了,你不能说我试图层用my body是吧,你这这就闹笑话了是吧,你不能说我控制层是吧,用GSP是吧,这这就不太好了,知道吧,啊所以呢,每一层都有每一层的职责,然后每一层都有每一层开发的相关的一些技术是吧。
07:52
那下边呢,我们就来给问大家一下了,那我们说视图层主要是干什么的,他的职责是干什么的?对对界面显示是吧,对显示我们系统里边我们的数据展示给用户看是吧,还有一个什么功能。
08:10
对发送请求是吧,对我们的数据能够展示给他看,他有数据呢,对能够录入到系统里边,是不是这样的,那它是什么?视图层主要两个功能,那么一个是什么?展示数据,那么就是我们展示数据啊,展示我们的数据,还有一个呢,是对把用户的什么一些意愿,或者他的数据录入到系统里边,我们这个地方叫做跟用户交互是吧?跟用户交互。跟用户交互,这是我们的视图层的职责,那为了展示数据,达到跟用户交互的这个目的,但我们学了哪些技术?对,ATM2是ATM2,它里边都有一些标签是吧,都有一些标签,这些标签干什么呢。
09:00
是不是能够在浏览器上来显示相应的效果,相应的数据写到标签里边,他就给我展示出来了,他做了主要是用来展示数据的,那么说它展示数据呢?他能够把数据展示出来,但是它的效果不太好看,知道吧,他仅仅能把数据什么展示出来,那用户想达到一个更好的一个视觉效果,是不是我们通常还会对他做一个修饰啊,怎么修饰,对CSS做修饰是吧,做修饰这能够把这数据以更好的友好的这种界面的形饰,然后展示出来,是吧?那么这两个技术呢,能够展示数据,更好的展示数据,但是他们一般来讲不能跟用户达到一个更好的交互,要跟用户达到更好的交互,你你比如说他用户1.1个什么按钮,或者点一个这个某一个区域想出现一些效果。那那用什么激活,对对javascript或者叫GS是吗?就是这跟用户交互的,当用户一发生一个什么事件来执行我们的代码,我们想什么就能够做任何的一些操作了,这跟用户达到这种交互的目的了,是吧?好这时候我们说这是前台这视图层的三个基础技术,那我们说这三个基础技术能够达到展示数据和给用户交互的目的,但是我们说他们开发起来呢,虽然功能能实现,但是它属于基础技术,但是写起来比较麻烦。
10:21
就是什么写起来怎么比较麻烦了,那你想想,你比如说我们举个例子来说GS,那我要GS吧,将来用户1.1个按钮,或者发生一个事情,那我要想在页面上想做一些什么,显示一些效果,或者向后台发个请求,或者阿贾克斯请求等等这些啊,想获取一些数据之类的这些,想做一些操作,那你怎么操作呢?GS里边当时我们学了一些什么?对,学了一些函数,你比如说我想他1.1个按钮,我想获取一些参数,那怎么获取啊。对,在在在GS里边都用什么document.get element by ID是不是能拿到一些数据啊,对,document.get element by name这些都能拿到一些数据,拿到数据就可以发到后端了,知道吧,但是他们能实现这些功能,就能实现这些功能啊,包括大他1.1个按钮,我可以对一些什么标签啊,获取一些标签内容,然后对一些标签的显示效果也可以做动态的修饰。
11:18
是吧,也可以获取一些数据,但是我说他获取的比较麻烦,就是每次你都调document get element是吧,这这都比较麻烦,所以你说说,如果是你的功能比较复杂,那你每天都要写大量的这些代码,那耽误时间呀,开发效率降低了,那对企业而言的话,他追求的是效率,那你要你做一个功能,每天写这些大量的重复的代码,那你每天可能做一个功能你都做不完,知道知道吗?那你跟你说公资公司给你发的工资,那你说那你开发的效率比较低。啊,所以说大概我们说针对这些什么技术,虽然功能能实现,但是它的效率太低了,开发效率太低,知道吗?所以我们说为了提高这个效率,是不是在基础技术基础上推出了一些什么框架技术啊,那么前台的框架技术,就是说框架技术其实就对他们做封装,以更友好的什么,或者更简洁的方式来什么,来达到我们所需要的效果,那么前台的框架都有哪些框架?
12:16
对j query是不是个框架,就是前台的框架技术啊,J query我们说它是对什么JS的封装,对封装他怎么封装呢。那我们前面给大家讲过解query有一些什么,最典型的一些选择器是吧?选择器你想获取哪些元素上面的一些数据,是不是直接用选择器就行了?对那些选择器大家学过很多种选择器,什么标签选择器,什么类选择器,什么父子选择器这些是吧?这些大家都要都要掌握好怕因为我们后边会天天都要写这些代码,知道吧,所以我们前两天可能没有代码,那我们前两天课堂不给大家写代码,知道我前两天主要是分析设计知道吗?嗯,那你课下呢,我给大家说的这些技术你都要分析了,你你都要复习好它了,因为到后边我就不给你时间复习了,后边我就直接用这些技术了。
13:08
你吧,你要你前两天我说下午晚上的时间,你把前面这些课程我说的提醒到的这课这些课程都要复习好了,视频代码,然后呢,笔记都要看好了是吧,前两天这前两天其他的自习的事间,这些任务我就不多说了,知道吧,好这时候我们说这解query都记住,当然我说他有选择器,再一个呢,在解块里边拿到什么相应的元素的解块对象有选择器拿到之后了,是不是它里边还定义了很多的函数啊,函数来操作这些什么标选中的标签上面的一些数据对如何啊,获取值如何赋值,如何获取它里边什么这些什么标签题里边的内容,这些都要什么啊,大家都要会是么?再一个如何把我们动态的一些什么字符串,一些标签拼成字符串,如何显示到页面上,这大家都要会。是吧,这套所以说大概有这种框架就比较好了,就比较好用起来比较方便了,所以我们以后大部分时间都用这种框架,好这是我们说的这样,我们说这个j query呢,它主要是对GS的封膜啊,GS分膜,那在页面上有的时候我们还会做一些什么,不但是对使用GS,我们还使用这这两个技术,甚至三门技术什么,这三个技术技术综合综合起来么,完成某些页面上特殊的一些功能。
14:25
啊,特殊的一些功能啊,或者一些比较复杂的一些功能,那我们说j query这种框架,它它也做不到了,因为什么,因为它只是对GS的功能,有的时候我们什么这三个基础技术,那么有的时候综合起来做一些页面的特殊的一些复杂的功能,哪些功能,你比如举个例子。我们以后让你什么输入一个什么日期的时候,日期不能让随便输入,为什么?假如我这个后台需要一个日期,假如做一个学生管理系统,让你什么输入一个学生的出生日期,那你这个输入学生,哪一个学生是哪一年哪一月哪一天出生的,那你要输入一个日期,年月日,你咋输?
15:07
那你输的话。让用户自己输,他咋输,那你说老师就输入年月日不就行,那他输入年月日,我说日期都有格式的,那年月日他输的时候他怎么说,他总不能随便输吧,他怎么说,假如啊来个1990年,然后呢啊二月份十号。他总不能,总不能让他这么说吧,你问老师他这么说,他不就是这么说嘛,他这么说,假如另一个人如果这么说呢。另一个人这么说呢?所以这种日期一般来讲都不是让用户自己输的,真正做项目的时候,那应该怎么办?对,做成日历是吧,做成日历你点一个框,出来一个日历,这个日历上面什么一点这个状出来所有的年份了,万年历懂吗?选一个年份就行了,一选一个年份,这个年份下所有的月份都出来了。
16:03
那你选一个月份,这个月份下所有的日期都出来了,你选一个日期好了,根据他选年月日,在这个框里边自动给它显示,然后并且把这个日历给它关掉。那种日历你让你做,你咋做?对,它不但牵扯到AM2要显示,而且还会有一些效果,而且还为什么加上一些视角。让你做的话很难做了,那怎么办呢?就不让你做干什么,还有一些框架,帮我们做哪些框架,对这三门技术做个统一封装的框架。对什么样的框架,对这个对不做这种框架。像这种框架呢,我说他是对这三门基础前端的技术做封装,他专门帮我完成页面上比较复杂的一些功能,那怎么做,到时候我们后边教给大家怎么做,你先不用着急,那你先知道他们是干什么的,懂吧,好,这是我们说前端技术,我们基本上就说这些技术了,知吧。
17:02
好,这时候我们要这样了啊,其实还有一个技术啊,还这吧,就这这样这这样吧,大家我们说这样,这我们这个前端技术,我们就基本上就采用这几个技术啊,就采用这几个技术,那你说老师以后公司到公司里边开发是不是这些技术,这这三个技术肯定都会有,这个有可能不会。你知道为什么?因为像这个技术对三门基础技术的风光,这种框架不止这一种,市面上还有好多种别的技术。也是类似的这种框架技术,知道前端,前端的框架技术对三门技术的覆膜啊,但是只不过这个是现在目前市面上最火的,最流行的。啊,但是我们说有些企业不再用它,这就现在是最火的,还有一些企业用别的,还有别的有哪些,这个的话给大家列一下,我们不讲,为什么?因为我们没有这么多时间讲,如果把所有的技术都讲,你别说咱们这五个月了,你你在讲什么,一年你也讲不完,就所有的技术,咱们同样的技术就讲一个最流行的就行了,啊知道吗?那你说还有什么技术,知道吧,知吧,给do的索莱伯类似的这种技术啊,也是这用法都是差大同小异的,还有哪个,还有这个叫这个。
18:13
你知道E叉T知道吗?E叉T知道吗?这个大家看到网上大家你也能搜搜到类似的这种技术,它也是对三个技术功,大家功能都是类似的,什么这些前端的复杂的功能他们都提供知道吧。啊,你用的时候很简单了啊,用的时候他们封装好,你只要调查一个方法就行了,我们知道到底怎么调,我到后边用的时候再说,当然你知道这种技术也是类似于不得阻债部这种技术,就是对前端的这个基础技术的分控,就前端框架当你知道就行了,啊知道就行了,除了这个还有什么,还有一个。嗯,还有一个这个EZUI是吧,这也是什么?这也是前端的一个框架技术,也是对三门技术的风貌,大家的功能都是大同小异,知吧,那你老师这些我们没学,万一我入职一个公司啊,我入职一个公司,我是我我们只是讲了不特所在五这些我会吗?你只要会他这这些基本上简单看一下文档也就会了,知道吧,所以我们就以最流行的为例,当然你知道这些也是做前端的框架,也是前端框架机制,你别说到时候你面试的时候,人家就问你用过EZUI没有。
19:27
你别你别反过来问人家什么叫easy UI是吧,这这就不太好了是吧,你没用过,那你咋说呀。对我我们公司没用这个一的吧,我们都用不到,所债这这这就行了,他一他你一说这句话,他就知道怎么回事了,这是很正常的,很正常好这是我们说的这个是好这是我们前端技术,除了那个,除了这前端技术,其实还有一个前端技术做页面的,但是严格来讲,从运行原理上来讲,它不属于前端技术,它应该是后台技术,但是通常我们是吧,做页面一般用它是吧,啊中不,所以我们也把它归到视图层的地方,哪一个呢?对GSP叫动态的网页技术,GSP运行的,运行的时候是不是在后台运行呢。
20:14
它或它不是在严格来讲就是它不是前端,前端的它是后台的技术,但只不过它运行的结果是网页在浏览器上面运行,所以我们一般来讲也把它归到视图层了,好,这是我们的视图层呢,我们就给大家这个,说到这儿就是我们这个视层,我们就采用这几个技术啊。
我来说两句