电商系统是一个很复杂的综合性互联网应用,国内的淘宝,就是我们日常所能接触到的最复杂的网站之一。
Image.png如果我们要从零开始构建一个电商系统,很难一开始就投入海量的资源,庞大的开发团队去开发一个高大上的系统,我们必须用有限的人力去抓住最核心的东西。
我所理解的核心代码,就是业务模型实体类、操作实体增删改查的实现类,操作的接口和参数。
对于业务系统开发而言,首要要求就是能让系统实现业务需求,业务实现不准确,不人性化,系统哪怕有再好的性能,再高大上的技术实现也无际于事。
很多程序员有种矛盾的态度,一方面认为业务代码实现根本没难度,写业务代码的人不过是只会CRUD的码农。一方面又常常吐槽需求如此混乱多变,以致代码也失控了。人们把提高项目代码质量一方面寄托于更好的需求管理,更靠谱的项目管理,一方面寄托于换框架,换新技术,进而死搬框架。
我相信,一切的代码混乱都是因为没有充分思考如何将需求合理地转化为代码实现导致的。这一系列文章,从零开始记录了一个电商系统的核心业务代码的开发思考经过。项目的开发需求背景,设定为一个常规的B2C商城。
在开始之前,我已经确立了几点原则:
- 代码要清晰可读,一切的分层、包结构、变量与方法的命名、首先要照顾人的阅读方便。
- 尽可能地让核心业务代码纯粹表达业务,不要将技术实现细节混入其中。
- 可以牺牲一些性能,照顾代码可读性。
以上原则若有不理解之处,我在实际开发中再慢慢展开讨论。
网友评论