






















公司最近正在对整个产品进行大规模的重构,把原先基于Web的产品线全部转向Android平台。随之而来的就是产品整体架构设计上的大讨论。作为其中一项最为旷日持久的争论的发起者,我觉得有必要把这个事件记下来。无论现在的思路或是观点是成熟的还是幼稚的。以后都可以引以为鉴。
先来描述一下我们要做什么。简单而言就是一个横跨各个内容源的书籍阅读平台。这个平台的目标不仅仅是方便用户在一个终端上,以一种统一的方式购买、阅读到所有内容源的书。同时,这个平台作为一个开放式的平台,也以方便内容源的接入为目标,这个平台就是起着这样一台读者与内容源之间的通道的作用。
这里的内容源是指持有内容版权的内容提供商,比如全国各家出版社、网络小说站点(如起点、红袖、纵横天下等)及其它数字出版资源提供商(如当当、淘花、云中书城、方正Apabi等)
这次改造的目标主要有这样几点:
争论问题的背景是:不同的内容源所提供的内容的格式不尽相同。有EPUB,有PDF,有TXT,有SNB,也有DOC的。我们显然要尽量多地去支持这些书籍的格式。
争论的焦点在于:对内容的阅读这个功能,应该与每个内容源自身的APK合并还是分开实现?很多人觉得当然是要分开,但是其实现实中的问题没有这么简单。比如如下的几个问题:
诸如此类的问题还有很多。即便如此,我个人自始至终都坚持分开。但我的上级领导坚持认为应该合并在一起,一个APK应当包括分类浏览、购买、阅读等一整套的功能,自成体系。如果仅仅是我一个人坚持分开,显然不会有争论,级别在这儿摆着,他一句:“这个事情不要讨论了,就是这个样子的。”我就直接歇了。好在主导这次重构的两个架构师的意见和我比较一致。于是我们几个人在大庭广众之下(一时找不到会议室)争论了多次。最后上级的上级看不下去。把我们一票人拉去群体PK。
最后BOSS给的解决方案是这样的:
虽然我就是那个做的人,BOSS说我爽就行。但是对于这个解决方案我目前是相当的不满意。
从技术的角度,我觉得合比分要简单得多,先分着做,出现无法解决的问题,再合起来所用的时间应该比把一个系统拆分成不同模块所用的时间更少。先分着做,也能把层次关系尽早理清。
从管理的角度,做正确的事情,应该比做事的效率重要吧?
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。