12月书单和2018回顾
书单和体验
展览
今天请了年假陪老婆去做检查,下午还去上海博物馆逛了三个多小时,毕竟下半年最重要的特展就是《美国现代艺术80年》,自从9月开始就心心念念的特展,因为博物馆周末人特别多(排队1小时),所以趁着工作日去一趟,真的只花了3分钟就进去了。
这次的特展包括了Edward Hopper/ Whistler 等大师的作品,集中展现了1865-1945年美国艺术在南北战争之后,经历工业技术革命,世界大战等影响之后的变革。下图是Edward Hopper 的《夜游者》,20世纪认知度很高的作品
特展厅前——霍普的大作《夜游者》不得不说,我现在逐渐开始觉得具象的画,稍微缺乏一点耐人寻味的意趣。特别是现代艺术,是很多样化的,不能说看不懂的就是艺术,也不能说看得懂的就是普通的画。
如下科伦的《荷花》,画中彰显了科伦高超的绘画技艺,水面反射,逆光高亮,无一不精彩。细节更是精美,右边是画家的老婆,姿态自然,远处的景物自然地模糊。代表了当时很高的艺术水准。
如下,稍显抽象的画《出航的船》只用一些色块线条,非具象地展现了船、海以及空中云层的意象。整个配色看似随意,实际上很协调,看起来很舒服。画家的水平相当高。
其他的,还有很多优秀的作品,也许有空我要做一个页面单独展现这些作品和古典音乐的关系。毕竟我在看这些作品的时候会浮现起画面和BGM,特别是霍普的《夜游者》,对于建筑的情感化、光线和人物内心的描写烘托是仁者见仁的。
书单
《我喜欢生命本来的样子》周国平
这本书的确是一本增强心智的好书,对不同的读者来说应该都有部分章节切中要害。生命本来就是充满苦难、艰辛和思考的,面对很多阶段的拷问,都要在自我的实践中萃取宝贵的经验和智慧。
我不相信一切所谓人生导师。在这个没有上帝的世界上,谁敢说自己已经贯通一切歧路和绝境,因而不再困惑,也不再需要寻找? 至于我,我将永远困惑,也永远寻找。困惑是我的诚实,寻找是我的勇敢。
周国平这本书给我传递的观点是一种路漫漫,上下求索的强大心态,一种经历人生风浪之后的豁达。这其实是焦虑的年轻人们所缺乏的珍贵品质,这也是我们需要不断习得的心智能力。
一些思考我一直在单独写一篇思考和分析,《魔都生存指南》,一直没敢写完。。不过作为观点阐述,要求不必过高。
《北京折叠》 郝景芳
郝景芳的这本书,我以为很长,结果就1个小时读完了吧。亏我到处去找完整版,原来主人公从第一空间回来后,就结束了。。整个剧情并没有太大的推进,人物关系也没有巨大的变化。。所以我以为还没有过瘾。直白地展现了社会的阶层分化,阶层之间巨大的资源分配差异,非常痛击人心。不过理性地分析,还是有很多值得探讨的侧面:
- 阶层分化如何形成的,有几个阶段
- 社会阶层分化的必然性是否确定?是否一定越来越固化?
- 100年后的社会资源分配是怎么样的?
《野性的呼唤》杰克伦敦
只看了前几章,正在抽空看。据说是《热爱生命》全书,展现了阿拉斯加淘金时代的生产生活图卷。气势磅礴,故事跌宕起伏。。。以一只狗狗 巴克为主角的故事开头很吸引人,描述了20世纪初阿拉斯加淘金热下的雪橇犬故事。后面应该还有剧情大变动。
技术点
Github2018 Profile今年明显没有去年提交多,但是最高兴的是对于maptalks 这样的项目有一点微薄的贡献,哪怕有时候仅仅是想法上的,还应该多参与现有的开源项目!
vuex 的应用
今年没有写很多技术文章,这点有些欠缺,要反省下。不过今年主要的工作还是做公司的UI组件库。基于vue.js 的UI 组件库还是蛮有意思的,下半年也基于这套UI组件做了实际的业务系统,具体用到了vue-router,vuex 等配套设施。特别的,vuex 在增强用户体验方面还真是有用。我用到的一些场景包括:
- 存储用户上次访问的最后一个路由,
- 存储当前 table 的列名和顺序,用户可选显示哪些列名,
- 存储当前页面中 tab-group 中激活的tabId 等。
这些都是暂存用户的状态,使得重新返回这个页面的时候可以保持一种恢复快照的状态。而还有一种应用就是为了把多个组件需要共享的数据和状态放到vuex 中,使得组件之间可以自由跨组件get/set
webpack 应用
另外关于业务系统项目的webpack 配置,我为了把系统bundle的 js 部分尽量压缩,做了一些研究,大抵实践了几块工作。
- 默认的webpack4.x 是无法支持treeShaking 的,采用改引入代码的方式来确定性引入需要的模块。
import * as _ from 'lodash';
import { cloneDeep } from 'lodash';
import { LineChart } from './shared/xchart'; // include all xchart/index.ts
import LineChart from './shared/xchart/line-chart.vue'; // include one component
第一行引入方式会导致lodash 被全部打包(65Kb以上)进入 vendor.bundle.js, 第二行这类部分引入则不会出现这个问题,只会打包需要的部分代码。
第三行这种引入自己写的系列组件的方式,实际上引入的是xchart 文件夹下所有在index.ts 中导出的组件,这个也会导致类似第一行import 的问题,所有组件都会被打包。
所以需要指明从哪个具体的组件文件中引入->参考第四行
另外,webpack 配置方面,针对moment.js 这类有语言包的插件,也需要通过webpack.ContextReplacementPlugin 这个内置插件的正则去指定,只打包项目需要的语言包,可以省下200Kb左右的bundle size.
new webpack.ContextReplacementPlugin(/moment[\/\\]locale$/, /zh-cn/),
写在后面
2018年最开始的计划,我翻看了下如下图!也算是实现了一半吧。
- 认真学习、总结看过的博客,读完做摘要,不要看完就忘 这一项是我没有做到的,看来确实需要加强学习别人优秀的经验×
- 思考总结做过的项目细节,写博客分享实现思路,学而不思则罔(不少于 10篇博客)实际完成量9篇 √
- 深究React、Angular 等框架的细节,今年争取做好一两个完整的React 企业后台管理界面项目实际完成了基于vue.js的系统√
- 继续维护好mapbox-plugins 项目,结合react 重构或重写一个完整的有趣的小游戏 这个没有好好完成,因为实在没空做小游戏×
最近倒是在完成腾讯云端IDE 的插件小比赛,提交了一个Giser 喜欢的功能吧,希望大家去多多评分,提提建议。一月份应该会多增加几个功能!这个插件比赛是基于react 的,所以也同时在做多人飞机大战的移植,不知道最后能不能成,尽量增加一些原来没有的特效。
coding IDE 地图预览插件地址 快去评分点赞吧,一月份评分,腾讯还有抽MAC电脑的活动。谢谢!!