编委点评

编委点评

吴多益(百度)

看惯了中英文的技术文章,偶尔看看日文的杂志也挺有意思,既有许多相同之处,也有不少日本特色。

从编排结构上看,这本杂志由三个特辑和许多不同方向的专题文章组成,整体技术氛围比较强,但或许是为了考虑大部分初学者,很多文章都比较入门。

我们先从三个特辑开始介绍。

第一个特辑是“实践 UI 设计”,我在第一眼读到标题时并没有多少期待,因为这是一个很虚的话题,恐怕难以写好,不过在读完第一页后却意外地发现写得很不错。作者一开始就明确指出 UI 最重要的是帮助用户达到目标,而不是弄得多么绚丽,因此花了很大篇幅来谈产品设计与用户需求分析,几乎毫无保留地介绍了自己的设计流程、方法、工具及注意点,还有验证方法、内部前端 UI 框架等,整套流程做得非常专业,很值得借鉴,这也是整本杂志中我最喜欢的文章。

第二个特辑“Web 支付”本来是个很有价值的话题,因为随着现在各种垂直电商网站和创业项目的增多,肯定有不少网站需要具备支付功能的,但可惜这篇文章谈的是日本的情况,和国内差距较大,所以只能当成技术文章看看了,实战价值不高。我曾经了解过一个收银台系统的实现,发现比想象中要复杂得多,一方面要和支付宝、网银、点卡、信用卡等系统进行对接,另一方面还要考虑各种促销活动导致的特殊逻辑。

第三个特辑的内容是基于 D3 实现数据可视化,其中的 3 篇文章分别介绍了可视化的 3 个应用场景——图表、地图和关系图。在内容丰富程度上做得不错,但 D3 独特的设计理念使得它的门槛很高,之前没学过 D3 的读者估计看不懂文中的代码,所以只能大概了解 D3 能做什么,后续还得花很多时间去学习。

说完了三个特辑,接下来谈谈连载的文章,这些文章的跨度很广,从前端、移动端到后端都有涉及,对于开拓视野很有帮助。

介绍 Gradle 的文章很简洁明了,基本上把常见功能都说清楚了,对于之前不了解 Gradle 的读者很有帮助。

介绍 Android Studio 的文章所用的软件版本比较老,是一年半以前的,这个工具在 2014 年 12 月 9 日已经发布了正式版。不过,本文主要介绍的是如何使用 Gradle 和 IntelliJ IDEA,所以受版本影响不太大。

介绍 serverspec 的文章令我眼前一亮,这个工具我之前没听过,看作者名字是个日本人,它的特点是将服务器环境的搭建也纳入到单元测试中,比如搭建完后测试某个端口是否开启等,看起来还挺有用的,有了它就可以将环境部署脚本也纳入持续集成,从而保证质量。

介绍 Coro 的文章虽然花了很大篇幅来谈爬虫的实现,但其实还是远远不够,作者忽略了很多抓取中的重要技术,比如广度优先还是深度优先策略、网页更新策略、表单抓取、Ajax 抓取等,所以看起来这篇文章的主要目的还是推广 Coro 这个协程框架。

介绍 PHP 中使用 AOP 的文章看起来很非主流,因为 PHP 本身并没有注解(annotation)的语法,所以就只能在注释中进行配置,看起来很奇怪,感觉还不如直接用 Java。

在 JavaScript 专栏里介绍了 Web Components,尽管这个技术推出有一段时间了,但国内似乎关注的不多。从我个人的使用体会来看,这个技术对于传统的前端开发是颠覆性的,可以说是目前最好的前端模块化方案,感兴趣的读者推荐读一下 Polymer Designer 的源码,体验一下完全不同的前端开发方式。不过这篇文章的写作时间较早,其实在 2014 年 7 月 16 日正式发布的 Chrome 36 中已经正式支持 Object.observe 和 HTML Imports 了,这使得 Chrome 在所有浏览器中最先全面支持 Web Components。

在关系数据库的专题里介绍了图的基本概念,然后总结了几种数据库中存储图数据的优缺点,然而最终并没有很好地解决作者开始提出的几个问题。对于复杂的图算法,我个人觉得最好还是使用专门的数据库,比如 Neo4j,它内置支持文中提到的 Dijkstra 等算法,所以实现起来很容易。

在 Java 专题里谈的是缓存,感觉这篇文章主要是介绍概念,实战价值不大,因为本文代码中实现的缓存太简单了,作者最后应该推荐一些真正的解决方案,比如简单的 Guava cache,或者完善的 Ehcache/JCS,以及分布式数据的 Hazelcast/Redis 等。

Ruby 专栏介绍的是实时数据采集和展现,在这方面另一个比较流行的组合是 Elasticsearch + Logstash + Kibana,我觉得它的功能更为强大,更适合用来分析日志。

在 HTML5 canvas 游戏开发经验中介绍了一个自己开发的库 tofu.js,据说能解决一些 Android 机器下的性能问题,不过我到 github 看了一下发现只有 38 个 Star,而且都一年多没更新了,所以看起来不靠谱。

最后,发现这本杂志里到处都有 Ruby 的影子,看来日本技术人员还真喜欢这个语言。

目录

  • 版权声明
  • 编委会
  • 分栏目录
  • 编委点评
  • 第 3 回 扁平化设计
  • 特辑 1 UI 设计实践
  • 第 1 章 开发人员所追求的 UI 设计
  • 第 2 章 为了 UI 设计而进行的用户体验设计
  • 第 3 章 准确高效地实现!UI 设计的技巧
  • 第 4 章 提高 UI 设计成果的验证技巧
  • 第 5 章 为多元化环境提供相应的 UI 设计
  • 特辑 2 Web 支付入门
  • 第 1 章 支付的基础知识
  • 第 2 章 信用卡的基础知识
  • 第 3 章 信用卡支付的信息安全
  • 第 4 章 实现 PayPal 支付
  • 第 5 章 实现 WebPay 支付
  • 第 6 章 实现在 iOS/Android 应用内支付
  • 特辑 3 “边做边学”数据可视化
  • 第 1 章 数据可视化的基础知识
  • 第 2 章 D3.js 的导入和设定
  • 第 3 章 实现地理数据可视化的方法
  • 第 4 章 实现人际关系数据可视化的方法
  • 特约文章 Gradle 让构建更高效
  • 第 3 回 Android Studio 速评 !
  • 第 3 回 使用 serverspec 构建测试驱动基础设施架构
  • 第 22 回 如何开发使用 Coro 的简易网络爬行器
  • 第 8 回 从 Go !开始的 AOP
  • 第 9 回 抢先看 Web Components
  • 第 8 回 使用 RDBMS 顺利处理图的方法
  • 第 8 回 数据缓存性能设计的要点
  • 第 8 回 使用 Fluentd + FnordMetric 进行实时数据可视化
  • 第 17 回 从 Pecolodge 来看 HTML5+Canvas 的开发要点
  • 图灵访谈 赵望野:前端工程师的困惑