这里是HIT软件构造实验的一些基本的过程和构造
首先是整个lab的设计思想和设计模式
我选取的五个读取选项我们选取了1,3,5这三个读取的文件,分别为行星系统、原子系统和社交网络系统,我们会分别对这三个我文件进行解析。
行星系统
1.首先是ADT的设计
我们首先能想到两个基本的ADT,也就是用来表示中心天体的恒星starts,然后就是表示行星的planet,除此之外我们还能够想到,我们需要能够对于轨道进行表征,其实这里在我一开始的时候想到的是能够对于每一个行星能够添加一个int元素来表示所处于的轨道,但是考虑到我们对于三个实验要求,我们使用一个轨道的数据来对轨道进行表示。
2.文件的读取和系统对象的工厂化设计
在有了最基本的ADT之后,我们就需要采取工厂设计模式来对我们的轨道系统进行构建,同时我们要能够根据文件的读取来进行要求来通过文件的读取来初始化
我们使用的是正则表达。
对于工厂模式的设计,我们要求能够在我们初始化系统的时候能够将所有的基本ADT一起初始化,这样就要求我们对于系统设计的时候能够通过循环包含基本的数据形。
原子系统
1.ADT的设计
与行星系统一样,我们使用一个ADT表示原子核这个抽象的物体,另外还有电子和电子轨道
2.工厂化的设计模式
与之前的类似,没什么讲得
社交系统
其他的与之前的类似,在这里我们需要强调的一个特别的地方就是我们应该能够有一个能够计算两点之间距离的函数,应为我们没有办法直接从文件之中获得一个点应该在的位置,我们需要能够对构建额图进行搜索和计算来获得应该处于的轨道,不过应该注意到的是,我们不能够使用递归的方式来对距离进行求职,几十万行的数据量你的栈会爆掉的。