既然是杂记,就当流水账写吧。
deepin开发者与用户大会 - 南京站
上周偶然看见了deepin在南京举办开发者与用户大会的消息,虽然我不是开发者但好歹算个常年双系统的用户吧,于是周末本着打酱油的心态去了趟南京,开会的地方是真偏呐。下了地铁就去签到了,书包里背了两块中秋节公司发的月饼也没好意思拿出来吃。。deepin的分享都很精彩,羡慕他们始终如一的坚持自由和开源的信仰,特别是见证了这三年间deepin从交互界面到系统软件优化以及对常用软件进行linux适配的进步,虽然说光有情怀等于画饼充饥,但是我觉得没点情怀也很难做到这么多年面对质疑和唱衰的坚守。oray CTO分享了花生壳向日葵等产品,我用过向日葵的远控,了解过花生壳的内网穿透。我用过windows的原生远控,用过国外的team viewer,实话实说向日葵应该是最好用的,而且单个远程主机免费还不像team viewer那么多限制。不过让我觉得励志的是,这个CTO大学学的是柴油机。。虽然我也很喜欢deepin,但是用deepin还咋玩游戏。。
嗯。。以上是上周断更的原因。
关于工作
为了寻求不写lowB代码的方法,我看了几章设计模式,虽说有所启发,但是还觉得哪里我没领悟到,或者说缺失了什么。这一周给我的需求页面比较复杂,一个页面十几个echarts折线图,为了让他们互不干涉,写了很多if判断用了很多全局变量,代码结构不清晰,逻辑也显得很混乱,有的函数接收四五个参数或者写了快100行。阳哥建议我有空重构一下,emmm我自己都不知道从何下手,况且我也没有更好的办法分离它们。平均一个需求页面要写800到1000行js(jq),有些重复代码不知道如何抽象出来,用到全局变量的地方也没什么好的办法约束它们。。我又买了几本书,希望看完能有点启发吧。
写了二十多个echarts之后,我终须下定决心动手写个echart类,一个实例对应一个图表,每个实例维护自己的配置参数,也许能改善重复的配置过程,增加一点复用。用后端给的接口数据做了下测试,渲染个折线图也不成问题,但是还觉得有些地方没考虑到,或者结构划分的还不是太好。代码放在github,下周如果再有echarts的需求,也许就能想到改进方案了。
1 | function Chart (IDselector) { |
这样可以把从ajax数据处理到生成echarts的过程简化为
1 | var a = new Chart('emm') |
option的配置好像不咋灵活。。
关于读书
从我觉得看设计模式的书不能直接帮助我改善代码,就开始有点懈怠。几个设计原则和编程技巧,其实我也没怎么能切实的领悟到并运用好,没人review代码以及没个师傅真是个头疼的事。。我开始看《代码整洁之道》,每天翻几页,希望体现在代码上有直接的效果吧。。