﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-It Smils-随笔分类-软件工程</title><link>http://www.cppblog.com/ronliu/category/8752.html</link><description>思绪的自留地</description><language>zh-cn</language><lastBuildDate>Fri, 07 Nov 2008 13:11:05 GMT</lastBuildDate><pubDate>Fri, 07 Nov 2008 13:11:05 GMT</pubDate><ttl>60</ttl><item><title>数据结构先行的设计方法</title><link>http://www.cppblog.com/ronliu/archive/2008/08/05/58079.html</link><dc:creator>ronliu</dc:creator><author>ronliu</author><pubDate>Tue, 05 Aug 2008 11:46:00 GMT</pubDate><guid>http://www.cppblog.com/ronliu/archive/2008/08/05/58079.html</guid><wfw:comment>http://www.cppblog.com/ronliu/comments/58079.html</wfw:comment><comments>http://www.cppblog.com/ronliu/archive/2008/08/05/58079.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/ronliu/comments/commentRss/58079.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ronliu/services/trackbacks/58079.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;去年开始做这个智能代理系统的时候，老板一直强调，数据结构数据结构。那时不大以为然，总觉得思路还没有理清楚，怎么给出很具体的数据结构呢？今天看来，老板是对的。现在做出来的这个系统，核心模块中最重要的几个数据结构混乱不堪，导致程序改动起来相当困难，不知道从哪里下手。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 信息系统的设计中，有一条好的原则是，先设计表，再用这些表实现业务逻辑，最后才是界面。因为信息系统所有增删改查，都是与表打交道。它是基础。在上一个项目中，要设计合同预警模块，先搞界面，在根据界面去写数据表，然后将这两个用业务逻辑串起来，其结局是，完成了一个很脆弱的模块，界面的变动是频繁的，但表却不大可能发生大的变化。表没有设计好，说明其实对需求了解不够深。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 软件系统也是一样。先想好会用到哪些数据结构，最核心的是哪几个，为完成这几个数据结构的功能，又需要有那些辅助性的数据。这些数据结构之间是怎么关联的。他们需要提供那些方法，以完成这个结构的功能，这些方法哪些是对内的，哪些是对外的？哪些是为系统本身使用的，哪些又是提供给用户使用的。把这些想清楚后，整个系统的框架，已经有很深的了解了。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 而且，数据先行是做系统时一个很好的切入点。面对需求说明，可能为各种各样的功能整的头昏脑胀，这个时候，想一下它有哪些数据结构吧。这些数据结构就是你展现给用户的了。再深入一步，这些数据结构需要哪些辅助结构。整个思维就会慢慢清晰。<img src ="http://www.cppblog.com/ronliu/aggbug/58079.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ronliu/" target="_blank">ronliu</a> 2008-08-05 19:46 <a href="http://www.cppblog.com/ronliu/archive/2008/08/05/58079.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>