萝三画室

201803月记

三月一整个月依然再上海出差。这也是在这个项目中唯一做完整的一个月了。

工作

三月是上这个项目以来唯一一个工作完整,没有假期的月份。项目正式进入开发阶段是在1月22日,前期因为前端工作量比较大,所以全栈林同学也捡了一些前端卡。在过年之前,我们相当于是拥有1.5个前端的。过年之后,后端开始开发核心部分,于是林同学转去支持后端,从此以后就只有我一个人在做前端了。所以作为唯一的前端,这个三月还是有很多体验和收获的。

难忘的点:

  1. 在林同学的支持下,重构前端整体布局和路由。
  2. 联调平台登陆功能。
  3. 一些库的选择和使用,从需求到落地。
  4. 帮助QA解决一些UI自动化脚本中的代码问题,transfer一些思路。

感受:

  1. 全局观很重要,尤其在敏捷实践中。
  2. 在环境和依赖都不可信的情况下,会遇到许多三观震裂的情况。一切皆有可能。(这个故事会在项目总结中详述)
  3. 很多功能相似的库,很大可能性都是基于同一个库做的增强版。这个最基础的库才是我们选择的最终目标。
  4. 从别人描述的问题中,只需要滤出问题的表现信息,其他的要按照自己的思路去分析。

收获:

  1. 解决BUG的思路。
  2. 选型的思路。
  3. 全局观。

不足:

  1. 向别人描述问题时,叙述不够清晰,上下文信息不充足。
  2. 后端的概念。
  3. 没有及时总结。

学习

大致看了下《clean code》。书是以Java的视角讲代码整洁的,我只能看明白大致的思路。我的理解是,整洁的代码一定是读起来像文档一样的。实践中关注比较多的是变量/函数命名和一个函数只做一件事情。好的命名可以让人只看名字不看细节就知道变量/函数是做什么的;一个函数只做一件事情可以将复杂的逻辑分离,让代码更易读易测易扩展。
举个简单栗子。

背景:一个确定按钮,它的点击事件可能是创建新的规则转发操作,也可能是更新一个已有规则转发操作。

实践:

1
2
3
4
5
6
7
8
9
10
11
//绑定按钮的点击事件
<button @click="toggleRuleForward">确定</button>
//点击事件逻辑
toggleRuleForward() {
const data = this.getForwardData(this.selectedTargetType);
if (this.isCreateForward) {
this.createRuleForward(data);
} else {
this.updateRuleForward(data);
}
}

首先从HTML上我们就可以得知,按钮的click事件会触发规则转发。
然后看toggleRuleForward这个函数做了什么:

  1. 构造请求所需的参数
  2. 根据转发类型(是否为创建)判断调用哪个API。
    这里将构造请求参数,判断操作类型以及调用API的逻辑抽出函数之外,保持toggleRuleForward内部逻辑清晰。他的任务就是负责判断当前应该调用哪个API,真正的收发请求是在函数createRuleForward和updateRuleForward中处理的。对于这样的toggleRuleForward,相信不需要去看getForwardData,isCreateForward,createRuleForward,updateRuleForward中的实现细节你也会知道他们做了什么。

    再来说说敏捷实践中非常重要的一环:拆tasking。刚加入骚窝的时候我并不太懂拆tasking的意义,并且意识也不够,经常略过这个环节直接开搞,给自己造成了很多麻烦。后来通过自己亲手挖的坑,才理解了拆tasking的意义。然后发现,其实它和clean code也关系密切。

    所谓拆tasking,大白话就是在明确需求后,开始实现前,将任务拆解成一个个的小单元,不考虑细节,只明确每个单元的输入输出。然后单元之间通过输出输出彼此连接起来,就完成了最终的任务。所以其实拆tasking就是在抽离逻辑,一个单元就是一个“只做一件事情”的函数。同时它也可以帮我们整理思路,遇到问题定位起来也更容易。

生活

回忆了一下,发现这个月几乎每个周末都没闲着。第一周周末正月十五+生日,王很臭过来上海团聚。虽然发发和蛋糕都丑丑的,还是很感动,拖着大行李箱在陌生的地方准备这些也是不容易>_<。第二周约上了胡老师和她老婆吃吃喝喝,老夫老妻这么多年还能秀我一脸恩爱,很辛福的样子。第四周爸妈过来上海。本来按照原计划我4月底下项目,结果临时改道了3月底,就没办法和爸妈一起玩了,只能尽可能多利用周末时间。第一次用airbnb订民宿,体验还不错。旅行的时候住在交通便利的地方能极大改善旅行体验呀。周六下午逛了地标,周日起早逛了豫园,然后就去虹桥搭火车。说多虹桥,觉得我们现在的火车站朝着商场方向发展一去不复返,之前还只有各种餐饮店,现在连施华洛世奇都卖到候车大厅了2333。这个月叫的外卖比较少,在盒马和永辉定了许多蔬菜吃。大爱煎芦笋,煎好撒一些盐就很美味! 这个月还有预计之外的支付了一波彩妆。
沙漠中的沙漠皮找到了真爱底妆。虽然贵得肉痛,但是能让沙漠皮感受到光泽底妆,这肉痛的还是值得的。