TikTok到底“失算”在哪里?
|
客户端是无法直接访问后端的server的,因为server资源高高在上,client并没有权限。这个时候,就需要有一个proxy,进行代理,将客户端的请求进行转发,然后把结果返回给client。 为什么不能直接让client访问server呢?这就涉及到资源隔离问题。server的一些真实意图,是不想要client知晓的,比如一些受安全保护的敏感资源。也就是说,通过proxy,server想让client看到啥,client也只能看到啥。 对client来说,功能总是阉割的!甚至是篡改的!
我们将图中的元素替换一下,奇妙的事情发生了。 大家可以看一下上面的代码,是不是很多地方我们可以直接把这些代码进行封装,毕竟你学Java的,你不会封装方法的话,你岂不是就不是一个正儿八级的合格程序员了。 于是我们把这个代码抽取出来,就组成一个方法,也可以使用IDEA的快捷键,Extract Method 这样把我们重复的代码提取出来,当我们在使用这段代码的时候,我们就能够把这些内容直接调用,不用在直接拿过来复制粘贴,然后把代码重新组合啥的,直接就可以把这个抽取出来的方法进行调用,实现我们的功能即可。 而上面就单独说这个验证这个验证码正确性这块的内容,我们在注册的时候,有时候会需要这个验证,在我们登录的时候有时候也会需要这个,那么都是同样的验证,你这就相当于写了两次,如果说你不做抽取,那你的里面就出现了最简单的这种代码冗余。那我们这时候是不是就可以通过Extract Method把代码抽取成一个方法,封装起来,当我们需要这段代码的时候,我们把这个参数传递过去,返回我们想要的数据就可以了,不是么? 2.2 巨长的参数
为什么阿粉要把这个放在第二个呢,因为这个也是大家有时候在写代码的时候最容易出现的问题,有很多刚刚初入公司的年轻人来说,那传递的参数,那叫一个恐怖,一行两行都不能满足,比如说: 1.为什么需要我们重构
而在《重构:改善既有代码的设计》说重构的目的:让软件更加的容易理解和修改,而与之前的形成对比的是性能方面的优化,不改变组件的行为,改变内部结构,而重构之后的软件功能还是一如既往。 而阿粉是亲身经历过有些人的代码,咱们先不说这个功能实现的好坏,至少你必要的方法上面能不能写点注释,比如说实现某些功能的时候,你可以在方法的实现上面写上,用于此处教师信息的导入,完成教师信息的分类别导入和基础查询,可能你在中间做了很多业务上的操作,不用像刚刚走上工作岗位的朋友一样,每个方法上面都写上注释,但是必有的注释还是要有的把,阿粉之前接手的一个项目,从头到尾除了在配置文件里面写了注释,估计还是百度的时候写入配置的时候加上去的注释,一个注释没有,看的阿粉那叫一个崩溃。 2.都有哪些代码需要重构 2.1 重复代码
最简单的一个重构的代码,阿粉给大家放上一个片段,假如说我们有一个注册和一个登陆的, (编辑:常州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

