stephen's blog

[object Object] object(s)
 

2016 NingJS(JSConf CN 2016) 见闻

第一次参加JSconf,也是我第一次来南京这座城市,这座有着丰富的文化历史底蕴的城市。参加这次JSconf心情是十分激动的,见到来自各地的开发者,感受他们分享的经历与成长,这对我自身也有很大激励与启发。下面就是我对参加峰会的记录整理。

9月3日

VUE.js

从出场的热烈掌声无不表明了尤小右在国内前端圈的受欢迎程度,作为首位分享的讲师,尤大大首先分享了progressive framework的概念,即
core -> component system -> routing -> large scale state management -> build system -> client-server data persistence
其次回顾vue的历史,vue从最初诞生到发展成当今国内最热的框架,通过刚开始的想法然后动手去做,一步一步的积累最终达到了今天的成果。接着展望了vue2.0,vue2.0会更轻更快,并且支持virtual dom, 自动帮你做React 中的 shouldComponentUpdate。最后”weex powered by vue”也说明了vue和weex的合作。

HOW TO BUILD A COMPILER

虽然之前看过James Kyle在其他JSconf的分享视频,不过这一次亲眼见到大神还是比较激动的。首先James介绍了什么是compiler,以及一个compiler做了哪些事(parsing、transformation、code generation),最后通过一行行代码解释了如何实现一个世界上最简单的编译器 – 实现了lisp风格的加减法到C风格的转换,不过还有很多地方不是很清楚,比如生成AST,具体我还需要下功夫去研究。其中最让人印象深刻的就是James的ppt风格了,虽然之前有过准备,不过现场看的确是 la eye(逃…
github仓库:
how-to-build-a-compiler

阿里node 团队开源项目,企业级框架EGG

天猪介绍的node框架egg,基于KOA,并且提供了日志、路由、配置以及内置了web安全解决方案,还有一整套测试、集成、发布构建方案,不得不感慨企业级框架就是牛逼。
github仓库:
https://github.com/eggjs/egg

聊聊 JS 测试框架

主要讲了主流的测试框架,分别基于tapa流(tap、tape、ava)以及mocha流(jasmine 、mocha、jest)。最后介绍了自己基于mocha造的轮子tman。
github仓库:
https://github.com/thunks/tman

3D on the web

讲师中唯一的妹子,而且英文讲的超棒。首先妹子介绍了如何使用WebGL画一个三角形,然后就是three.js的介绍,最后的demo让在场所有人感受到了web 3D的酷炫。
github地址:
http://developer-autodesk.github.io/

A-Frame, Building Virtual Reality on the Web

Kevin Ngo是WebVR的布道者,也是A-Frame的核心开发成员。WebVR的概念对我来说是非常新颖的,首先Kevin介绍了WebVR以及WebVR的一些现状
其次介绍了一个基于three.js的框架--A-Frame,通过声明式的HTML来创建场景。比如实现 一个3D盒子

1
2
3
4
5
6
7
8
9
<a-scene>
<a-box position="-1 0.5 1" rotation="0 45 0" width="1" height="1" depth="1" color="#4CC3D9"></a-box>
<a-plane rotation="-90 0 0" width="4" height="4" color="#7BC8A4"></a-plane>
<a-sky color="#ECECEC"></a-sky>
<a-entity position="0 0 3.8">
<a-camera></a-camera>
</a-entity>
</a-scene>

具体可以参考官方地址: https://aframe.io

Building a Unified Frontend and Mobile Team

这个分享主要说的是react,react native的,介绍了通过UI层的虚拟机,来屏蔽各端的差异,用RN搞定web、android、ios三端的开发,不过即使如此,这还是不能抛开原生的影响,也就是说未来RN可以融合其他端,但是这只是在某些特定的业务场景下。

Building asynchronous microservices that get along

讲师解释了microservices的概念,以及microservices的交互(restful接口,消息中间件、任务系统),然后是microservices面临的一些问题(请求变重、API数量暴增),最后以订单&支付为例子,介绍了一些问题以及解决方案。

最后附上我和大神的合影:)

ningjs