数据结构优于流程图

忘记在哪本书上看到了这句话,好像是某个大牛说的,当时挺有感触就记了下来。

大大小小做过几个项目后,才开始认识到“数据结构优于流程图”,也算是一个收获。

当初做礼花模拟的时候,采用一套统一的多层次链表的数据结构,从某一方面说,具有比较好的灵活性,然而,却在众多其他方面造成了严重的掣肘。比如为适应这一数据结构的数据文件的存储结构设计,文件的读写速度很慢;为达到播放、重新播放的目的,而设计的比较复杂的程序处理逻辑;统一的播放处理使得在礼花花形扩展性方面存在严重问题。

如果不是采用统一的多层次链表结构,而是只设计核心接口,其他的部分各自分别根据具体需要来设计具体的数据结构实现,会好很多。

在做抽奖程序的时候,采用了链表存储奖项设置,链表存储抽奖结果的数据结构,在程序中用两个链表中数据相结合的方法来设置抽奖界面的状态等,程序处理逻辑比较复杂,牵一发而动全身。

若是采用将一个一个具体的奖按照抽奖顺序的逆序存入栈的数据结构,在升序处理逻辑方面会简单很多。

在做Web开发方面,比如RESTful的设计风格的应用(区别于传统的Web Service)、JSON等与语言无关的数据封装、工作流的设计应用、AOP的应用、消息队列的应用等等,凡是开发顺畅的项目,几乎都是良好数据结构基础上的良好架构,至于流程图似乎除了业务流程,程序开发方面都不是必须的了。

- by 一个农夫 -

posted @ 2012-08-02 23:53  一个农夫  阅读(1791)  评论(0编辑  收藏  举报