4月码代码总结

这是个过程

或许更适合慢热的你

1

公司方面,完成了两项任务:月初完成了第一个开发任务,用 JavaScript 按照 MVC 模式重构了第一遍没有按照任何模式写的代码,并在那基础上,增加完成了要开发的功能。与无模式相比,MVC 也好,MVVM 或者 MVP 也好,更加符合软件工程开发的规范,代码调理清楚,易维护和扩展。

月中完成了第二个任务的设计文档,被打回来重造了两次,终于过了,在这篇文章里做了总结:所见即所缚,设计一个新软件该有怎样的思维方式?

第二个任务是一个体量相对较大的库存管理系统,如果上手直接开码,可遇见还会踩进之前的坑,边码边设计,结果就是代码整体性不好,边码边改前面的代码。所以干脆从 界面 开始,走套流程:

  1. 设计界面草图:先按照文档定义的需求,将重要界面的草图设计出来。在过程中,也就要考虑到要有哪些功能,需要什么数据,数据库要怎么设计,怎么更好的重复利用功能和界面类似的模块。
    界面设计自然就涉及到了一个问题,用什么设计?纸笔?还是有什么软件?最初,在纸上画了几页,从中性笔换到铅笔,可修改性还是太差了,而且效率低。开始尝试软件,试了三款比较流行的软件 Balsamiq, Mockingbot 和 Axure,Mockingbot 和 Axure 都有办法到达类似我们使用的网页和App的效果,但是上手难度较大,细节操作比较麻烦,毫不犹豫的就选择了 Balsamiq。Balsamiq 的优点在于能够帮助快速完成草图设计,软件本身已经集成了许多 网页组件,秒上手,看个10分钟左右的介绍视频,了解常用的快捷键和操作方式,速度能更上一层楼。
  2. 根据界面草图,具体罗列功能,并完善用户使用场景,查缺补漏,相对应的修改界面草图。
  3. 根据功能和界面,设计数据库。
  4. 怎么更好的应用模块化。本打算沿用 MVC 模式,但后来想尝试新模式,用一个前端框架开发,这方面基本是盲区,所以最后先直接上手尝试开发了一部分后,才开始安排。

受 Gisonrg 大神点拨,从想试用 Angular,到萌生了使用 Vue 的想法,然后一发不可收拾。Angular, React 和 Vue 怎么选择?查了些资料,简单的总结是,这三个框架,各有擅长的领域,根据不同项目的需要,进行选择。 对我来说,就想学个 JS 框架,学哪个都差不多。Vue 在三者中,比较轻量级,直接插入 vue.js 文件就可以用,又因为项目限制,不能在 server 上跑命令,当时认为,也就只剩这个选择了。在初步上手 webpack 之后发现,使用 webpack 任何一个框架,都是有办法做到这点的。(学 webpack 可以参考 Webpack快速入门实践

学习 Vue 还只是个开端,慢慢发现了一些别的部件:

  1. Vue-Router,实现 Vue 组件化的路由
  2. Vuex,Vue 的状态管理模式
  3. Vuetify,根据 Google Material Design 做的一套前端 UI 包。

最后用了 Vue + Vue-Router + Vuex + Vuetify,本来说好的轻量级容易上手,当这些东西都混杂在一起,加上半桶水 webpack 的使用水平,初步试用学习过程,还是比较艰难的。特别是 Vuetify,现在还不是很成熟,文档也不是很完整,极大限制了流畅性,在它发展成熟前,建议换成 bootstrap 或者 semantic,代码能够写的更灵活。另外,在某个周末把 ES6 给看了,避免个参考代码 Vue 时进一步的各种懵逼。

除了公司上的事之外,在 Digital Ocean 上弄了个 server,用 hexo 建了个博客,用 ngnix 把个人网页和博客都搭上去了。怎么在搭建个人网站和博客的文章还在路上了。。

2

这个月共写了9篇博客,5篇技术,1篇产品,3篇杂文。

微信公众号开通了原创,评论,赞赏。很有意思的事是,3月末写了篇提到了《镇魂街》的文章,时不时有人关注并在公众号里留言镇魂街,非常好奇是从什么途径引到这边来的?

3

我们的认知,有时是不正确的。就像每天早上出门都给小盆摘浇水,白天把它放在窗边,晴天暖阳,雨天听雨 ,晚上再将它收回房里,本以为可以长得更有艺术感些,却只能见它日渐颓萎,落叶,枯枝,残根。可能认为可行的方法本来就是错的, 做法也错了,结果不如意也是正常;可能在意识之外,有影响的因素,比如晚上时的空调温度,或者其他的不知。事有不如意,可能我们认为的是错的,可能我们的做法也是错的,要怪谁呢?等待它的,是死亡,还是重生?

四月已过,将忙成狗的五月,也已经到了。只是,我好像还不知道这株植物叫什么。