[好书推荐]《WEB+DB PRESS 中文版 01》UI设计+Web支付+数据可视化
| 2015-04-01 10:50 评论: 11 分享: 3
基本信息
作者: [日]技术评论社
出版社:人民邮电出版社
ISBN:9787115384515
出版日期:2015 年2月
开本:16开
页码:174
版次:1-1
内容简介
WEB+DB PRESS是日本主流的计算机技术杂志,旨在帮助程序员更实时、深入地了解前沿技术,扩大视野,提升技能。内容侧重于Web开发的相关技术。
本期的主题分为3 个特辑:UI 设计实践、Web 支付入门和数据可视化。特辑1结合Cookpad 网站详细介绍UI 设计方面的实践知识。特辑2以在Web上使用最为广泛的信用卡支付为核心,介绍将信用卡支付整合进自己的网站或智能手机应用所必需的知识和方法。特辑3则介绍如何使用Web技术进行数据可视化。
本书适合各行业Web应用开发者阅读。
作译者
技术评论社是日本最大的技术类图书出版社,创立于1969年,主要出版IT相关的技术书籍和杂志,拥有一大批活跃在IT前沿的作者和编辑团队。其出版的单月刊Software Design和双月刊WEB+DB PRESS成为了日本程序员的必读杂志。
编委点评
吴多益(百度)
看惯了中英文的技术文章,偶尔看看日文的杂志也挺有意思,既有许多相同之处,也有不少日本特色。
从编排结构上看,这本杂志由三个特辑和许多不同方向的专题文章组成,整体技术氛围比较强,但或许是为了考虑大部分初学者,很多文章都比较入门。
我们先从三个特辑开始介绍。
第一个特辑是“实践 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 的影子,看来日本技术人员还真喜欢这个语言。