《JavaScript设计模式与开发实践读书笔记》

本周分享程序设计中的几个重要原则,开放封闭原则接口和面向接口编程以及代码重构

开放封闭原则

开放封闭原则是面向对象程序设计中的一个很重要的原则,许多设计模式都是基于开放封闭原则而设计的,例如:***模式职责链模式以及发布订阅模式等等。

开放封闭原则就是要把不变的部分变化的部分隔离开来,开发的时候尽量不要去碰那些不变的部分。

例如,我们在写代码的过程中,如果要增加新功能,我们最好是单独写一个函数,然后将这个函数添加到何时的地方,而不是对原有的函数做修改。React和angular中的生命周期钩子就是一个典型的例子,一个组件从窗前到渲染,再到销毁,React和angular等框架其实已经实现了一些功能,但是考虑到使用者,可能要添加新功能,它们将这个过程封装成钩子函数,方便使用者进行定制化的处理。

接口和面向接口编程

由于js是一种弱类型的语言,没有类型判断,因此在js中很少提到接口。但是随着前端代码的逻辑越来越复杂,改革js的呼声也越来越大,于是TypeScript变横空出世。TypeScript不仅带来了类型判断,也带来了接口和泛型。接口的作用就是达成一种共识,它规定了实现这个接口的对象所拥有的属性方法,这样程序员可以快速的了解对象的功能。在java中,接口中定义的方法,接口的实例中必须全部实现,在TS中则可以人为的规定是否必须实现。

代码重构

代码重构是程序员经常要做的一件事,它能够有效的提升代码的质量,改善代码的可读性。作者在最后一张里讲解了有关代码重构的几种方法,下面我们分别做一些介绍。

提炼函数

提炼函数是编程中一项重要的工作,函数就相当于我们写作中的段落,它是组成程序的基本单元,我们把不同功能的模块抽离成函数也更利于我们阅读代码,理解代码的逻辑。作者概括提炼函数有三种优势:

  1. 避免出现超大函数,代码理解起来更容易
  2. 利于代码复用
  3. 函数的代码块小,使其更容易被重写

把条件语句提炼成函数

写程序一大忌讳就是出现太多的if else,我们可以通过职责链模式或者多态来避免判断语句

合理使用循环

js数组的几种方法,some,every,filter,map要理解起来,巧妙使用,可以有效减少代码量。

减少参数数量

尽量用对象来代替过长的参数列表,避免参数过长造成调用函数时的错误。典型的例子可以参考Echarts,利用一个配置对象来代替过多的参数,

少用三目运算符

expression ? a : b这种表达式尽量不要出现,因为可读性真的很差啊。

链式调用

jQuery的链式调用,清晰方便,便于阅读。要实现链式调用,每执行一个方法,必然要返回对象本身。

使用return退出多重循环

双重for循环,不要用break退出,用return就可以轻松搞定。

#Java##设计##笔记##读书笔记#
全部评论

相关推荐

那一天的Java_J...:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
06-18 13:28
已编辑
门头沟学院 Web前端
爱睡觉的冰箱哥:《给予你300的工资》,阴的没边了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 13:05
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务