00:00
好,复习一下咱们这个之前讲的这个内容啊,打开这个daary,这个昨天我们过来的话呢,先是说了一下eclipse这个快捷键,这个快捷键的话呢,就不多说了,大家下来的话呢,这个哪个你要不熟悉了,再过来看一眼,然后开发过程当中呢,灵活的去使用就可以了,后边呢,我们讲到Java SE这个高级部分的时候呢,咱就换成idea了,Idea的时候呢,会出现跟eclips这个快捷键那不一样的情况了,这个到时候可能大家还得重新的去适应适应,要不的话呢,就是到时候我们讲idea的时候呢,大家把这个idea的快捷键再改成eclipse,那到时候呢,改成以后呢,然后到时候直接用就行,这个我改了一份,到时候咱们再说改了一份呢,就是你愿意导呢就导进来,然后跟基本上绝大部分呢,跟clips都就都一样了,适合那些呢,一开始用eclipse,后来换成idea的这些人,如果大家呢,之前当然现在咱们都用eclipse了啊,如果真正的是做开发的这个成员,一开始要是没有接触过eclipse,直接呢学idea的,那就直接用idea的那一套。
01:00
快捷键就可以了,省得呢,你在公司一个电脑,回家一个电脑,俩用的快捷键可能还不一样到麻烦了,就这种情况,好这呢是关于eclipse的这样的一个使用说明,那一会的话呢,我们再讲一讲这个eclipse有个功能叫做debug debug就是调试程序用的一个功能,好那这个完了以后呢,咱们写的是这个项目二,在给大家发的1DIARY中呢,有一个简单的项目要求,这个项目一的话呢,因为比较小,所以就没说这个事儿,项目二包括咱们后边还要讲一个项目三,项目三的话呢,比这个项目二呢,就更复杂一些了。更复杂一些了,就是大家呢,关于这个项目的一个基本的要求,包括后边呢,咱们讲这个Java web的时候,还会涉及到一个项目,这是对于JAVA1E的同学来讲,大数据的同学的话呢,就没有那个书成的项目了,JAVA1的同学呢,Java web呢就讲四天,那么我们这个呃,大数据的同学呢,大说错了,大数据的同学呢,Java web呢就讲四天,然后呢,Java的同学呢,Java web呢就讲16天,就有这样一个区别了,就嗯,那么16天当中呢,会讲一个书城的项目。
02:07
这个大数据那个就就不讲了,就是把web的简单的几个组件,几个内容的话呢,大家都看一看,知道呢,Java web前后是怎么回事就可以了啊,这是一个基本的一个要求了,那么大家写项目的时候呢,有这样的几个点需要说一下,第一个项目的话呢,大家至少要独立完成一遍以上。独立完成一遍以上,那就意味着话呢,你可能不只要写一遍了,因为你第一遍的时候通常不能独立完成。嗯,那就是第一遍的话呢,通常你可能就是,呃,基础稍微弱的话,你这边呢,可能打开我的代码,右边呢,是你自己开了一个这两个eclipse,然后这块的话,你可能看一下某个类,看着看着,然后自己这块就开始去写,一边写呢,也一边去理解一下,这呢就这样去写,这是第一遍,第二遍的话呢,或者有的同学呢,不用这个第一遍直接上来就可以走这个第二遍的就是你把这个项目打开全屏的这样去看,看完这个类以后的话呢,然后把它收起来,收起来以后自己去写,写的时候写不动了,再看看这个项目的一个要求,或者一些文档提示等等,再去写,再写不动了,你打开这个写好的代码,你再看一眼,知道咋写了,再收起来再去写,就是试着呢,自己独立去完成了,那第三遍的话呢,相当于就是真的拿到这个需求以后呢,自己开始从一开始建这个包啊,一直呢,自己独立的去完成这两个项目,包括这个过程当中常见这个bug的一个解决。
03:29
是这样一个情况。就是现在呢,咱们这个项目其实代码量呢还不算太大,所以大家呢,可以这样去写,如果以后呢,真正写这个JAVA1的,或者大家大数据的这个项目的时候,可以怎么办呢?你可以第一遍的时候快一点。第一遍时怎么快一点呢?就是你看老师讲的时候呢,肯定是一个模块一块一块功能的,这样去讲的第一遍,你可以先把它粘起来,粘着粘出来,然后跑起来。咱们现在呢,就这个项目就仨类,这样的话呢,那一分钟之内就跑起来了,但到后边呢,这个功能比较多了,这个代码量也比较多了,甚至一些配置又又加进来了,到那个时候呢,大家第一遍的时候可以快点走,就先呢让你这个项目呢又跑起来,先粘这个类是吧,这个类呢一会儿再细着去写啊,又粘这个东西,又做这个配置,又导入这样的一个插件等等等等等,先呢把这个程序呢先跑起来,整体看一下今天讲的几块内容,第一遍跑完以后也通了,Bug呢也都没有了,下面呢开始具体的写这里边的一个一个的内容,就是有整体上的一个观点、观念,你看看需要涉及到哪些东西,然后细节的再一点的去写,别呢一开始就陷进去写,可能今天晚上就写到这了,这几个就没有碰,那这个就搁在这了,你也不知道这到底是要干什么的。
04:43
不能这么着,先整个呢,先跑起来,自己粘出来让它跑起来,然后呢再一块一块的这样去写,行,第二个呢,说积累完成项目过程当中常见的bug调试,这个bug调试的话呢,是我们开发当中必不可少的一项这个功能,或者大家呢具备的一项能力,我们写程序的话呢,很难保证说一遍就搞定,就写正确的,那就需要做一个调试,调试成我们希望的样子,或者说满足人家需求的这样的一个功能。
05:14
那么常用的这个bug调试呢,实际上咱们也不一定非得要用这个debug功能,如果大家写一个程序,大家写个程序要么呢运行报错了,要么呢运行出来的结果呢,跟你想的不一样,那这时候呢,我们目前为止都怎么去调试啊。现在你们都咋调啊,就回去硬看是吧,就是把这个代码呢,调出来以后,就从上往下就开始往下过是吧?嗯,别笑,这就是一种方式,就是你这个程序呢,要么呢,他是报错了说呢,比如说第九行,第几行出错了,那你就直接定位到那一行,你看看哪块出错了,人家提的是什么样的异常信息,你就这块呢去改,另外一种呢,就是如果呢,就像咱们写这个项目一样,但当时不是说这个。
06:05
在这个修改和删除的时候呢,这个用户呢,看到的是从一开始咱们操作的话呢,是从零开始,涉及到这里边这个number简易的问题,涉及到这个情况,咱们呢,当时不就演示了一下,说没有这个简易的时候,发现呢,这个程序呢,没有报错他那可能出现了就要修改失败了,或者说呢,我们有俩人,结果你改的想改第一个人,结果改成第二个人了,像这个都没有出现异常的,那你就得回过来,既然呢修改错了,直接定位到修改的这个功能,从上往下一行一行的这样去捋。一行行去捋,有的时候捋的过程当中,你说这个cost它到底是什么呢?你要是不确定了,或者说这个number到底是几呢,你就不知道了,这个时候你可以在里边呢,去写一些输出语句,这就我们所谓这个硬看,硬看的过程当中也有一点柔和的东西,就是有些信息呢,你不确定它到底是不是,你就是最终结果肯定不是了,那你在中间过程当中,你看在哪出现了问题,你可能呢,临时的需要打印一些输出语句。
07:12
通过这个输出语句,你看一下本身这个你输入的是一这个number,你看到也是一,那这块好这这没问题,再往下走走走走走,诶走到后边这块的时候呢,布尔类型,布尔类型前面呢,是操作这个他replace你这个简易你也可以做一个输出,或者说呢,Replace这个结果也输出一下,就是有些时候你不确定的时候呢,自己去打印一些输出语句,这就是咱们这个自己。所谓的就要硬看的时候怎么来操作,就是相当于是自己一条条的去判断你写的这个逻辑对不对,以及呢,加上相应的一些输出语句,这也算是一个叫方式一,这个直接就硬看了啊。
08:01
这硬看呢,需要功夫,就是你得这个确实能够看出来,不是这个盯着那看也没啥感觉,那就别硬看了,不要勉强自己,那就得第八个了,第一个呢就是硬看,然后呢,必要时这个添加这个输出语句看一下呢,这里边的某些变量在中间环节的时候,是不是跟你想的一样,不是了,那就及时终止了,看看上边就有问题了,如果呢,你你认为这个时候它输入的是就相当于是你以为最终结果应该是五,结果出来的是七,这有问题了,这个代码呢,正么长,你就先在中间这个环节呢,你就怀疑它有问题了,这块呢,你适当的加一些输出语句,看看这个时候是不是你想要的是,那接着往后走,哎,往后走呢,这块又又担心了,这再加输入语句一点点的这样去过,这是第一种方式,第二种方式就是用我们的这个叫debug。就是当我们这个代码量比较大的时候呢,这个上万行代码了,你自己再这样一点点一行一行去看,就是一点点去加这个添加语句,最后调出来以后呢,还得回过来把添加语句一个一个删掉,这个就很慢了,所以呢,我们这个IDE集成开发环境呢,都有这个叫debug的功能,就是调试功能,一会儿呢,咱们这个说一下这个功能好,然后这是我们说的这个调试程序,这个呢是大家在写程序,包括呢,咱们讲新课的时候呢,过程当中大家不断的需要去强化的一个知识,在下面呢,叫捋顺思路,强化逻辑,我们写这个项目二或者写一个项目啥的,重要的不是说呢,我们就把这个项目呢完成了,然后呢,这个项目会了就怎么怎么着,是吧,关键呢,就是通过这个项目或者练习呢,大家去强化你的逻辑能力。
09:45
就像我们这个后边呢,给大家讲项目,可能呢,讲的是电商,家庭教育,众筹等等,那你去公司开发的时候呢,他不一定做的就是这几个项目,你可能做的还是其他的,比如p two p的,虽然说现在p two p这很危险了,是吧,就p two p呢,你要去的话呢,就稍微慎重一点,别,但别到这个年底的时候呢,这个工资开不出来了是吧?还有这个比如视频网站的呀,这个新闻类的呀,等等等等,它有很多的门类,互联网相关的有很多的门类了。
10:15
当然也可以不是互联网相关的,你可以是传统的这个银行的,或者是这个证券系统的,交通系统的等等,给国家做这个项目的也有很多,就是我们讲的这几个项目呢,目的不是为了大家非得把这几个项目整的多透或怎么样的,就是在这个过程当中,其实你学的是主体的这个框架的使用,这里边遇到什么样的业务逻辑的功能的一个完成这个逻辑能力和你解决问题的这个思路。或者这个对应的里边的一些业务的能力,这个是可以迁移的,以后你做别的项目的话呢,也是要同样的思路去考虑的,所以这个呢是更重要的一些,就是里边更本质的一些内容,那第四个的话呢,就是对象数组等内存结构的解析,这是对咱们目前写的这个项目来讲,咱们写这个项目一,项目二里边呢,大家还可以去画画这个内存的结构,方便呢你更好的去理解,真正后边去讲这个项目的时候呢,或者让大家一开始写这个项目就已经没什么问题了,就没有必要呢再去画这个内存图了,这是对于咱们刚开始学的时候呢,大家更好的去理解,咱们画一画,到后边呢,真正当你这个已经很清晰的时候呢,就没有必要再去画了。
11:25
是咱们这个相棒的一个简图。啊,如果要不熟悉的话呢,自己下来呢,也可以相应的去画一画,这样后边的话呢,咱们讲这个面向图像的时候呢,必要的时候呢,还是会画,但是呢,不是每一个都画了,有的你要不清楚了,自己画一画相应的哪个结构在哪儿,这个咱们都已经说过很多遍了。这个还是需要大家要掌握画内存图的这样一个这个能力的,在下面的话呢,叫遵守编码的规范,标识符的命名规范等等,咱们讲新课的时候呢,有的时候我就直接int一个I等于一个十,这个时候呢,咱们没有具体的情境,所以我这呢都用这个I呀,J呀,I1呀,I2啊这样去表示了,那真正在开发当中呢,你一定要给一个非常明确的一个意思了,咱们项目里边,比如说你来表示说一共有多少客户,咱们定一个叫total,或者你定一个number等等,就是一定要有一个明确的含义了,这是对大家的一个要求,不要呢乱写,养成一个好习惯,你说现在学习呢,我随便写了,等到开发中我就遵守,那不可能,现在你要不遵守,你开发中照样肯定不遵守,所以一开始的话呢,就严格按照我们这个规则规范来。
12:35
最后一个说在这个类前方法前方法内,具体这个逻辑的时候呢,我们可以添加一些注释,这个也是必要的,尤其呢是咱们咱们这个项目里边这个叫类钱。类前方法前,甚至必要的这个属性前,咱们呢,都通常哎写叫文档注释了,大家肯定也看到了这个,我们写的这种文档注释,回头在我们去调用的时候,你像这个是不是都可以看到这样的提示信息啊。
13:10
对的,就跟咱们用这个像这个string等等这样的功能一样,这里边还不太好找这个比如说像。我这就随便在这写一个,比如说我们这有一个name,我name.to string啊,或者to叉瑞也行,我这一调的时候呢,你看这块呢,就有这个提示信息,这也是因为API就是Java给我们提供这API,他自己在写这个方法的时候呢,它里边用的也是一个文档注释,他用的文档注释,所以我们在调的时候呢,也会做一个相应的提示,都是这样的原因做到的,所以咱们做开发的时候,尤其是当这个代码量比较大的时候,写到后边忘了前边了,这个你写这个方法的时候呢,你看一下当初这个方法主要是做什么用的,尤其呢是参数是什么意思,反回值类型又是什么意思。这个呢是主要我们要关心的点,包括呢,后边呢,写完这个项目以后就做别的项目了,发现呢有一些功能类似的,回过来想粘一粘,结果一看这个方法,不知道当时写这个方法要干什么用,这种情况是会出现的,避免这种情况出现呢,要加一些注释,这样然后在这个具体的这个逻辑步骤层面,在这个方法里边要想实现一共呢,需要实现十步,那每一步的话呢,或者说一些关键的步骤,容易理解错误的步骤,或者说需要额外的说明的一些步骤,我们可以去加这个单行或者多行注释。
14:39
这是呢,对于咱们这个大家加注释这个事儿要注意一下,咱们讲这个新课的话呢,可能里边呢,就这个二三十行代码,我们就核心的那个呢,加了加,那真正写项目的时候呢,大家也要养成个习惯,必要的位置呢,一定要给他加上行,真的是这个项目呢对大家的一个要求,嗯,整体来说的话呢,咱们提到了项目里边没有这个新的知识了,没有新的知识就是一些已有知识的一个应用,涉及到这个代码量比较大,主要呢,是训练大家这个逻辑和解决问题的这个能力,同时呢,你看一下我们讲的知识呢,在项目当中到底是怎么用的,是这样一个情况,行,这是关于咱们这个项目的一个复习。
我来说两句