FEX 技术周刊 – 2016/05/16
最后更新于:2022-04-01 00:03:56
## 深阅读
**糯米移动组件架构演进之路**
[https://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112195&idx=1&sn=27fa638e90b09a107057e4a5e8d01ab1](https://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112195&idx=1&sn=27fa638e90b09a107057e4a5e8d01ab1)
糯米移动 APP 中大量使用了 Hybrid 技术,本文介绍了其中上怎么优化的
**用户数过亿的QQ空间前端优化的思路是什么**
[http://mp.weixin.qq.com/s?__biz=MzAwNjE3ODQ4NQ==&mid=2650896255&idx=1&sn=641779f9a603627620a75c1cde960916#rd](http://mp.weixin.qq.com/s?__biz=MzAwNjE3ODQ4NQ==&mid=2650896255&idx=1&sn=641779f9a603627620a75c1cde960916#rd)
介绍 QQ 空间前端团队的发展,以及如何做性能优化
**MaintainableCSS**
[http://maintainablecss.com/](http://maintainablecss.com/)
如何写可维护 CSS 的经验
**资深程序员都了解的代码复用法则**
[http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653547118&idx=1&sn=733737f71a751feea5c2d2ca5ea3adbe](http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653547118&idx=1&sn=733737f71a751feea5c2d2ca5ea3adbe)
编写代码最重要一条,是怎样复用其他程序员的代码和思路来解决问题。通过修改他人的代码来解决复杂问题是种错误的做法,不仅成功的机率很低,就算成功也不会提供什么经验。按照这种方式进行编程,无法成长为一名真正的程序员,在软件开发领域,前景也是非常有限。
**Optimizing for Large-Scale Displays**
[https://css-tricks.com/optimizing-large-scale-displays/](https://css-tricks.com/optimizing-large-scale-displays/)
大屏下如何优化展现
**The Redux ecosystem**
[https://medium.com/@denisraslov/the-redux-ecosystem-539c630ec521#.k0o8pq76t](https://medium.com/@denisraslov/the-redux-ecosystem-539c630ec521#.k0o8pq76t)
Packages you should know to create a Redux production application
**写给想成为前端工程师的同学们 - by 月影**
[https://www.h5jun.com/post/to-be-a-good-frontend-engineer.html](https://www.h5jun.com/post/to-be-a-good-frontend-engineer.html)
关于前端工程师的发展,以及兴趣很重要
**Better Node with ES6, Pt. I**
[https://scotch.io/tutorials/better-node-with-es6-pt-i](https://scotch.io/tutorials/better-node-with-es6-pt-i)
This article will cover three of the more popular ES2015 features available in Node: Block scoping with let and const; Arrow functions; Shorthand properties & methods.
**[译] Facebook:我们是如何构建第一个跨平台的 React Native APP**
[https://segmentfault.com/a/1190000005091857](https://segmentfault.com/a/1190000005091857)
去年 Android 版本刚出来时候的文章有翻译了
**Analyzing website performance with the Windows Performance Toolkit**
[https://blogs.windows.com/msedgedev/2016/05/11/top-down-analysis-wpt/](https://blogs.windows.com/msedgedev/2016/05/11/top-down-analysis-wpt/)
使用 WPT 来分析页面性能,可以深入了解性能瓶颈
**ng-conf 2016大会深入介绍了新的Angular编译器**
[http://www.infoq.com/cn/news/2016/05/new-angular-2-compiler-deep-dive](http://www.infoq.com/cn/news/2016/05/new-angular-2-compiler-deep-dive)
好久没关注了,竟然提供了优化体积的工具
**LuaView高性能、动态化、跨平台应用开发引擎—聚划算动态化之路**
[http://www.infoq.com/cn/articles/luaview-application-development-engine](http://www.infoq.com/cn/articles/luaview-application-development-engine)
看来今年会出现很多类 React Native 轮子
**babel到底将代码转换成什么鸟样?**
[https://github.com/lcxfs1991/blog/issues/9](https://github.com/lcxfs1991/blog/issues/9)
整理的不错,方便大家了解
**Introducing FBLearner Flow: Facebook’s AI backbone**
[https://code.facebook.com/posts/1072626246134461/introducing-fblearner-flow-facebook-s-ai-backbone/](https://code.facebook.com/posts/1072626246134461/introducing-fblearner-flow-facebook-s-ai-backbone/)
介绍了 Facebook 内部的机器学习平台
**The Benefits of NativeScript’s Single Threading Model**
[http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/](http://developer.telerik.com/featured/benefits-single-threading-model-nativescript/)
NativeScript 企图解释在主线程上执行的好处,似乎有点牵强呢
**那些年我们用过的显示性能指标**
[http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=936](http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=936)
如何采集和分析 Android 显示性能
**持续交付:当前普遍存在的三个问题与解决方案**
[http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659597173&idx=1&sn=70c52dad01d1075d01695e6468f32c8f](http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659597173&idx=1&sn=70c52dad01d1075d01695e6468f32c8f)
持续交付的三条主线总结的挺好的:从Code到Artifacts仓库;从Artifacts到Running Service;从开发、测试环境到准生产、生产环境。
**Modular JavaScript: A Beginners Guide to SystemJS & jspm**
[http://www.sitepoint.com/modular-javascript-systemjs-jspm/](http://www.sitepoint.com/modular-javascript-systemjs-jspm/)
SystemJS is a module loader that can import modules at run time in any of the popular formats used today (CommonJS, UMD, AMD, ES6). jspm uses SystemJS to manage packages and their dependencies, so we need not worry about putting the packages in the right order to load them.
**Node.js Project Structure Tutorial**
[https://blog.risingstack.com/node-hero-node-js-project-structure-tutorial/](https://blog.risingstack.com/node-hero-node-js-project-structure-tutorial/)
Most Node.js frameworks don’t come with a fixed directory structure and it might be challenging to get it right from the beginning. In this tutorial, you will learn how to properly structure a Node.js project to avoid confusion when your applications start to grow.
**Buttons in Design Systems - 12 Tips for Setting Up a System That Endures**
[https://medium.com/eightshapes-llc/buttons-in-design-systems-eac3acf7e23#.hupza9rmg](https://medium.com/eightshapes-llc/buttons-in-design-systems-eac3acf7e23#.hupza9rmg)
Here’s 12 lessons I’ve learned when working the primary button, secondary buttons, and a whole host of other button types in an emerging system.
## 新鲜货
**Visual Studio Code 1.1**
[https://code.visualstudio.com/Updates](https://code.visualstudio.com/Updates)
每月更新一次啊,而且改进还真多
**Announcing SyntaxNet: The World’s Most Accurate Parser Goes Open Source**
[http://googleresearch.blogspot.jp/2016/05/announcing-syntaxnet-worlds-most.html](http://googleresearch.blogspot.jp/2016/05/announcing-syntaxnet-worlds-most.html)
Google 开源的自然语言标注库,不过只支持英文。特斯拉的 OpenAI 、亚马逊的 DSSTNE、Facebook 的FBLearner Flow,AI 领域今年很热闹。
**Electron 1.0**
[http://electron.atom.io/blog/2016/05/11/electron-1-0](http://electron.atom.io/blog/2016/05/11/electron-1-0)
1.0 版意味着官方认为它已经成熟了,相关的周边辅助工具也完善起来了
**JavaPoly.js**
[https://www.javapoly.com/](https://www.javapoly.com/)
JavaPoly.js is a library that polyfills native JVM support in the browser. It allows you to import your existing Java code, and invoke the code directly from Javascript. JavaPoly works even if the user does not have Java installed on their computer. It finally allows Java to become a first class citizen by running directly in the browser’s script tags (and interacting directly with the DOM), instead of being confined to an applet sandbox.
**ECharts 3.1.9 发布**
[http://echarts.baidu.com/changelog.html](http://echarts.baidu.com/changelog.html)
对 graph,地图,visualMap组件等做了大幅度的增强
**Blisk**
[https://blisk.io/](https://blisk.io/)
面向开发者的浏览器,有很多针对 Web 开发的特性,比如同时浏览 PC 和移动版效果,不过目前只有 Windows 版
**Announcing the Sourcegraph Chrome extension for GitHub: jump-to-definition and better code search**
[https://sourcegraph.com/blog/announcing-the-sourcegraph-chrome-extension-for/](https://sourcegraph.com/blog/announcing-the-sourcegraph-chrome-extension-for/)
一个 Chrome 插件,可以支持 Github 上的代码跳转到定义,不过目前只支持 Go 的项目
**WebFont 智能压缩工具——字蛛 1.0.0 正式版发布**
[https://github.com/aui/font-spider/issues/79](https://github.com/aui/font-spider/issues/79)
[http://font-spider.org/](http://font-spider.org/)
字蛛是一个 WebFont 智能压缩工具,它能自动化分析页面中所使用的 WebFont 并进行按需压缩,通常好几 MB 的中文字体可以被压缩成几 KB 大小。
**ANDROID SDK 源码解析**
[https://github.com/LittleFriendsGroup/AndroidSdkSourceAnalysis](https://github.com/LittleFriendsGroup/AndroidSdkSourceAnalysis)
这种多人共同解析源码的模式挺赞的:Android sdk 源码解析——旨在帮助Android开发者更好的学习Android!
**移动端数据库新王者:realm**
[http://www.jianshu.com/p/2b4388cf2a2d](http://www.jianshu.com/p/2b4388cf2a2d)
[https://realm.io/](https://realm.io/)
realm是一个跨平台移动数据库引擎,支持iOS、OS X(Objective‑C和Swift)以及Android。
2014年7月发布。由YCombinator孵化的创业团队历时几年打造,是第一个专门针对移动平台设计的数据库。目标是取代SQLite。
为了彻底解决性能问题,核心数据引擎用C++打造,并不是建立在SQLite之上的ORM。
## 产品及其它
**专访饿了么张雪峰:未长夜痛哭者,不足以语人生**
[http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650992464&idx=1&sn=120e185098e8dbf6828a12359a2298e9](http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650992464&idx=1&sn=120e185098e8dbf6828a12359a2298e9)
找到真正需求,而不是创造「伪需求」;先做出最小可用产品(MVP);既然很多创业者只缺一个程序员,那就对你的程序员好一点,再好一点…
**脑洞打开:图解VR、AR、MR**
[http://weibo.com/1687445053/DuTRx6zPU](http://weibo.com/1687445053/DuTRx6zPU)
感觉可以去研究基于这几个东西的编程了,应该可以产生不少交互专利。