00:00
好,呃,先简单回顾一下我们前一天讲的哪些内容啊呃,一上来的时候呢,我们是呃这个关于具体这块,关于支付业务的提现功能这块,我们是上来写了一下啊呃,其实这个提现业务的话呢,我们在客户端来看,其实就比较简单,就是呢,给后台呢提供发送一个请求,呃告诉呢后台我这块呢,需要从这个账户当中提现多少钱。啊就是呃,这个钱呢,在这个平台当中的哈,我把这钱呢,诶要打到我的这个账户当中,或者呢,就我们说到的就是诶你这儿呢,买了相应的一个QQ平台这个产品啊,然后呢,到这个时间以后呢,他把这个钱打到这个平台的这个账户里了,啊这时候呢,我就把这个钱呢,再转到我自己的银行卡账户里边啊这呢需要借助于我们这个第三方平台,然后呢,诶你再去跟这个第三方支付平台去关联,哎,然后呢,给他打进来啊整个这个呢,是主要呢由后台来完成的这个业务。啊,后台来完成的业务啊,所以对于我们这个客户端来讲呢,这个要做的事情呢,就比较简单啊,就发送提供一个页面啊,让用户呢去填写你要提现的这样的一个金额,以及提现一个账户啊提现到哪这块啊呃,然后呢,就把它打过去,嗯,然后呢,你就等着到相应的这个时间,比如说呢,呃,有快的哈,这种两个小时就说到账的,那有的慢的呢,就是24小时或者48小时,到这个时间以后呢,到账以后,他这块会提示你啊说已经到账了。
01:24
哎,就是我们到时候再拿这个客户端呢,去接收一个相应的通知就行。好,这个呢,就功能就比较简单了啊,嗯,然后下边的话呢,我们是使用了一个关于绘制嗯图表这样的一个库啊,就是回头我们在应用当中只要涉及到这个数据的一个展示的,嗯,包括折线图啊,柱状图,饼状图,这应该算是比较常见的这几个啊,除了这几个之外呢,哎,这个提供的这个框架MP and chart里边还有很多其他的,呃,昨天我们大概也看到了一些啊。其实具体的用法呢,就是我们呃直接呢拿到呃,人家提供了相应的这样一个DEMO啊,MP叉的一个example啊,然后呢,你运行起来以后,你看一看你你大概想做一个什么样的效果,在对应的呢,去从那个嗯相当于模拟器或者真机,你抛起来这个效果里边找它对应的这个代码。
02:20
然后根据你强大的这个Java分析能力是吧,你看哪些代码需要粘过来,哪些代码需要改,再给他挑好。啊,就是这个能力的话,其实慢慢也得有了哈,其实在这个公司里边大家写代码的话呢,一方面那一方面呢,是自己去写,或者说这个呢,是贯穿你从头到尾的啊,就像说我们一个程序里边涉及到顺序结构啊,这个循环结构,条件判断结构,那其实整个来看的话呢,它就是一个顺序结构,嗯,你代码就从上往下这个一个顺序去执行啊,中间过程当中出现过循环呀,出现过条件判断呀,这样的逻辑啊,啊你这个公司里边写的项尾也一样,那从上到下,从开头到基尾,整体来看的话呢,呃,都得说是需要自己写。
03:05
啊,当然在这个过程当中呢,比如出现过比较熟的一些代码啊,具体的某一个模块的实现了,当然这个模块是比较小的这个模块啊,比如实现一个比如连击点击两次推出页面,那比较小的这个功能,诶之前做过这呢,诶我可以把这个代码直接粘过来用。啊,有的呢,粘过来的时候呢,需要前前后后稍微再调一下啊就可以了啊,这是一种,然后第二种的话呢,就是具体这个功能不大熟啊,之前做的时候呢,比如说也做过,但好像这个这个跟他这个还不太一样,那这时候呢,你可能需要在百度啊,或者这个具体一些论坛里边再去搜一搜啊,看看这个有没有一些新的解决方案啊,有的话呢,然后参照一下那个,然后自己再去写,或者说呢,他有提供了DEMO啊,这样呢再改一改是吧,就这呢,其实在你工作当中也是比较常见的啊。嗯,这里边儿呢,比如说你拿到人家那个代码啊,过来以后呢,自己本来也用的不是特别熟。
04:00
嗯,至少呢,你知道他大概要完成什么样功能,然后呢,怎么能够改成你自己的这个需求的啊,这里边这个相应的一些逻辑,你得能够分析清楚啊,相应的你像我们昨天讲那个。设置它这个数据的时候啊,这个数据呢,那个参数呢是在负类里的,然后那个参数呢,就通过构造器传入一下,然后整个在外边这个类里边造构造器的时候呢,呃,调这个造列对象的时候呢,调这构造器出一个方法,呃那个方法呢,你得给它粘过来,就整个呢,它这个逻辑里边,呃,哪些位置到底是怎么来设置的?呃,拿到你这个代码里边呢,你得能够给他改过来。啊,现在这个,嗯,Java作为一个基本的这个语言的这个功底哈,也有。行这个呢,就是我们说这个整个写代码这样一个过程啊,嗯,就是其实粘代码的话呢,感觉好像技术水平挺低的,但其实你工作中你发现这个还是。这是一项能力的是吧。应该都懂啊。
05:02
就是代码呢,不一定非得说让自己一行一行这样去敲了哈,就跟有的说这个说这个真正的什么大牛都是用记事本写的,就是当初最开始学这个,像我最开始学Java的时候呢,有人就说说啊真的人家牛人都用记事本,你不懂嘛是吧,一为好像用记事本真的很很厉害是吧,然后确实呢,你用记本没有用这个编译器方便嘛,只要你点的方法的点都不知道点出来什么。啊,这呢,你写个首字母方法都给你列出来了,几个参数,参数什么意思写的很清楚啊,然后发现积数确实不方便,然后呢说大牛都这样整,然后自己也开始用奇数写。后来发现哪这么回事儿啊,你看谁公司里边谁敢用记本写,敢给他开了就是,嗯,没有用记本写啊,当时用记本写他确实是挺考验这个能力的。啊。嗯,就是嗯,还是对公司来讲呢,都比较务实的,你这个在固定的时间之内,把这个项目能够完成,能够上线,这个是最重要的是吧,功能呢,你你别给出问题了。
06:04
啊,Bug呢给你解决了,这个是最主要的啊,啊像我们今天讲课的时候,有的时候还谈一谈,说这个,呃,这个效率高一点啊,那个效率呢低一点,特别细微的一个差别啊,我分析的透透的啊啊这是你在工作里边呢,见过的这个东西,当然你还是要分析一下的。那有的可能没有见过了,那你有时候也懒得去分析了,哎,先给他跑通再说是吧,跑通以后的话呢,呃,一般的话呢,你能踏下心来再去研究研究那是最好的,那很多时候呢,就说,哎哎,先写吧,写完以后呢,有时间了再来研究研究是吧,那基本上你写完以后呢,就没那个时间想这个事了,是吧,那就可能就开始去做接下来这个问题了啊。所以这个里边呢,后边这个写代码这些习惯啊,我看有同学这个就写我们这个项目吧,写的那个那个结构呢,就比较乱啊,就这里边呢,相当于我这都是有相应的一些结构,什么我们放哪里边,咱们去抽取,哎,放在哪个结构里,像我这抽取都放在这个common里了啊。
07:08
就是应该是写的稍微规范一些,你现在呢,就应该养成一个比较好的一个习惯。啊,当然了,在我这写的时候呢,也也写过拼音是吧啊。嗯。那这个我就不好说大家了是吧,就是你你别这个全篇的都拼音是吧,啊来个注册的话呢,像注册这单词都比较常见的啊,登录login啊,那这些呢,你还是要用一下英文的啊,要不让人觉得也是。有点有点low了,就是吧。嗯,再一个呢,你这里边别整什么AA,什么activity BB activity是吧?啊,那你这写的多了以后,我们怎么去区分呢,到底哪个是干什么的呀,是吧,这些习惯得养好啊,啊就是学的时候呢,现在就相当于教你怎么去写这个代码,怎么去写的规范一些。啊,那你真正在公司里边以后呢,你要是写的比较烂,你比如说客户端安卓这块就你一个人啊,然后你反正都能跑通哈,那你让这个比如项目经理回头过来看一看你写的代码,你看这写的怎么这样写,或者说你这块完成以后,你走了以后是吧,然后换一个人过来迭代你这个项目,然后一看这前面个人写的是什么呀,这都。
08:23
一一堆垃圾是吧,嗯,然后开始给你改,然后一边改心里边一边给你扎小人是吧,嗯,因为咱有同学过去,然后你开始那就说这前个人怎么写的,这这是吧,你反正你说别人也听不见哈,那就说写的比较烂啊,怎么着的,你自己也是一样啊,你自己写代码的时候呢,你开始写的时候呢。你就好好写是吧,反正一个规范化啊。别这个想怎么写就怎么写,这个变量的话呢,也乱写啊,这都是一些基本的习惯了哈。行。嗯,就这样的一些这个事情啊,就代码,总之的话呢,还是得目前学的时候呢,得多去写啊这个翻来覆去的说,那其实你也知道这个重要性,那就是不写,那就是懒了。
09:08
这这个代码只有你写的话呢,写熟了这个能力才能提升上来啊,粘代码是一种能力,粘代码的前提也是你得大概都得懂啊,你得有这样的一个积淀才行。嗯。行呃,然后的话呢,我们是说了一下这个图表啊,这个图表呢,以后大家在工作中还会陆陆续续出现一些新的框架的啊,这个安卓目前这个迭代变化这几年还是比较大的啊,一些新的框架啊,这个出现的还是层出不穷。啊,因为本身客户端呢,其实不是特别复杂哈,不是特别复杂的话呢,所以大家都可以去封装一些结构啊,用起来就很方便,所以呢,嗯,没事也可以多逛逛这个吉他是吧?哎,里边有好多这个大家上传的各种各样的一些效果啊,一些内裤啊都有啊。哎,那到时候呢,你得有自己的自学能力了啊,怎么能够拿到一个以后呢,自己能够给他提升过来啊。
10:01
行,然后的话呢,我们是针对于最后这个啊,就是更多这个more fragment啊,昨天呢主体呢,我们就开始写这个功能,哎,这个功能里边呢,注册哎在客户端这块呢,我们看到其实就是一个activity了啊,把你的信息填上以后呢,给他发到后台。哎,在这里边呢,我们需要注意到的问题,就是我们提到这个乱码的问题。啊,这是我们昨天重点也说了一下啊,但在真正这个公司里边,呃,一这个问题的话呢,就一定是需要重点考虑的啊,但是这个问题一旦你解决以后,嗯,以后再去写的时候,客户端对你来讲,还是对于后台来讲,还是对于跟数据库交互也来讲,就是他们都要考虑问题,但是考虑完以后呢,正常解决就都没有啥事。就是每一个呢需要考虑,但是呢,解决方案非常的这个这个直接啊请求的时候,呃,指明一个请求的编码题,那边呢,再往回响应的时候呢,指明一个响应的编码题,呃存到数据库的时候呢,大家一开始设置的时候呢,哎,都设置成UR杠八的,整个这个呢就都要考虑,那考虑好以后以后再去写一点问题没有。
11:03
啊,就是这样的情况。啊,只要出现乱码了,你要考虑一下啊,比如他从那个,比如我用户注册了一下,注册完以后呢,我再用我自己注册的用户登录的时候乱码了。哎,那这时候你得考虑一下,这到底有哪些位置可能造成这个。再说一遍啊,我注册的时候呢,哎,点击都成功了啊,然后呢,再一登录,发现登录的这个是可上了。那你说都有哪些可能性啊?首先你往这块呢,去发给后台发的时候呢,是不是有可能出现一个。没指明你是U条杠八的是吧,哎,所以发过去的时候呢,你可能就是按一个非U杠八的发的。啊,这首先明确一点,就是我们这前前后后呢,都是用uf杠八。啊,你又没有别的可选的,就是用他的。那我发给后台的时候呢,有可能没有指明它就有点干嘛,所以发过去可能就有问题,那我们这时候呢,在服务器端,呃,首先呢,去接收这个请求参数接收的时候呢,我们昨天说了一下,首行呢要加一个request set一下这个叉set这个类型啊,指定是U杠八的这个呢需要加上。
12:14
那没加的话呢,就有可能人家发来是油条干嘛,你接的时候呢,不是按油条干嘛接的,就不是按照这个解析的啊,这你这发出去油条干嘛这呢,接的时候也是有点干嘛好,然后接完以后,我这时候呢,使用一下有JDBC或者是harm等等这些框架啊,哎,我把它呢存到底层的数据库当中。哎,这往这存的时候呢,我发出来也得是一条方码的,而你这个MYSQL数据库呢,当初在配置的时候,我们在安装MYSQL的时候呢,他也得是指明保存数据用的是U太广吧。啊,这都得是去指明的啊,啊这个你要没指明的话呢,就是导致这块保存的时候呢,也有问题。所以这呢,只是保证我写到数据库的时候呢,它不是乱码的。
13:02
如果写到数据库就乱了,那你肯定这条线里边就有问题了。啊,是这有问题了。这个问题了,还是这块往这块写的,这个问题还是这个数据库当初在哎这个安装的时候呢,就没有指明是U条管法的。让张总带他一会儿带大家看一下这块在哪指明的啊。啊,这一个呃,然后的话呢,你这是保存了,我下边呢,进行一个这个相当于登录,登录的话呢,我得去校验一下,然后呢,把这个诶我的这个用户名呢,得反馈回来哈,那这其实涉及到查询这个数据库,查的时候的话呢,诶那不刚才说了你这有乱码啊,那如果乱码这肯定回来好不了。那一定是乱的啊,那你别指望说这是乱的,然后回来以后呢,再反着来,再还原成一个能看得懂的,这不可能。啊,那往这块去读的时候,假设你这块乱了乱了,那就不用多讲了啊,肯定回来乱,那假设这不乱。啊,就是正常能够显示这个中文,那我这块读的时候呢,一般读到这这没有问题。
14:01
那这块就没有问题了啊,这块没有问题的话呢,接着我要是往这个客户端这块去响应,响应的时候呢,叫response,那response再往外响应的时候呢,我在指明,呃响应的时候呢,我用呃指明一个编码器,这个编码器实际上是告诉我们的客户端或者是浏览器,呃,你接到我这个响应数据以后,拿什么样的这个哎编码机去进行一个解析。啊这呢,我们往外传的时候呢,也可以去指定解析对应的这个解析的时候,告诉客户端哈,你用什么编码去解析,然后呢,到我们这客户端以后,那你应该确实的拿它这个编码机进行解析。啊,这个时候呢,才能还原是一个正确的。啊,就是整个这一块的话呢,都得要考虑,那一旦出现乱码了,你得想想是你。后端的问题还是后台的问题?还是他这个当然数据库有问题,但是一般情况下这块应该没有问题哈,因为这要有问题的话,他可能早就发现了啊,不管是这时候连的时候出现的,或者你怎么验证它这有问题,你就不用管你客户端了,你就让他后台,你说你那个,嗯,你调一下那个数据库,你自己做个测试,但是测试你看一下你这个后台。
15:12
呃,是不是你当时这个数据库写的时候呢,就有问题是吧,不是指面有条杠八的啊,这个在哪看呢。压力,MYSQL装好以后哈。我这装这了。嗯,在我们整个MYSQL这属于这个服务器了啊呃,在他这里边有一个MY.i啊,这个你打开以后,我们当时安装完以后呢,应该是在这块能够看到你这个编码机的。啊,这是编码,就有下广发的啊,这是整个我们这个数据库的一个配置文件啊,这样的话呢,你再去,呃,通过这个客户端,我再去连一下这个数据库啊,进而呢,你再去创建一些相关的表,哎,他们这里边呢都是。按照我们刚才指定的这样一个编码器来的,比我创建一个表。嗯,这呢都是默认的啊,这个默认的话呢,就用的就我们这个油条方法的啊。
16:07
简单的把这个说一下。好,然后回过来,哎,这是我们说的这个注册功能啊,需要考虑乱码问题,然后呢,手势这个呢,我们是用了一个,其实找到一个手势的一个DEMO啊,然后把它的改成了库,在我们这里边做了个应用啊,关于这个talk button的一个使用,嗯,这以后呢,在项目里边还是比较常见的。就是关于那一个按钮啊。关于这个按钮,这个使用这个按钮的话呢,我们去设置它,它用的是这个check啊。哎,不管你是在那个select中。还是在这个代码里边,你去设置监听,它都是关于这个的状态的一个监听。啊,是不是选中,所以有true和false之分,默认的话呢,一上来它就是false的啊,你可以呢,给它一点开,它就是出的啊。好呃,现在这个手势这个呢,也是得下来写一写啊,在应用里边呢,都会用到这个手势重置,这这没有什么多说的了啊呃,联系客服,这也是我们原来讲过的一个功能,直接呢调系统的通话的这样一个界面啊。
17:15
用户反馈啊。用户反馈的话呢,这里边儿跟这个注册呢,其实有点像。就是将这个客户端,我们这个数据给他发送到后台,那后台呢,给他再保存到数据库当中啊,就这样的需求啊。呃,只是呢,我们展现这个页面呢,有点不太一样了啊,别的就没啥了啊,哎,后边呢,我们还提到了关于这个分享的功能,呃,这块呢,其实。应该说不难啊,就是直接呢,照着这个文档我们来去集成啊,其实就可以了啊。好啊,这呢是我们昨天讲的这样一个基本内容。啊,这个呢,家里都给写一写啊,那一说挺简单的,真正你自己写的时候呢,就得亲自的一点点去敲了啊,尤其这个过程当中出现这个问题的时候,这个其实你正好是好好的去分析分析啊,然后把它改过来,这个时候呢,其实你这个能力才提升的啊嗯。
我来说两句