抽象数据类型 (ADT) 在包中定义。必须定义一些操作,才能处理ADT的对象。我认为没有规则告诉我们必须对 ADT 的例程进行排序。例如,应该首先列出所有检查器(获取例程),然后列出所有修饰符(设置例程)?或者这些例程是否应该通过检查或修改属性进行排序?是否有在其包规范 (ADS) 文件中对 ADT 例程进行排序的规则?
我想从例行程序的类型开始制定一个合理的顺序。
抽象地谈论 ADT 有点困难,但我可能会按用例构建结构,比inspect和modify更高。
正如@trashgod 所建议的那样,LRM 是一个很好的启动器。例如,Ada.Text_IO。您可能还会发现质量和风格指南很有用。
以这个结构为例(LIFO):
AbstractDataType Queue {
1.Constructors:
a.CreateQueue
2.Destructors:
a.DeleteQueue
3.Inspectors:
a.EqualQueues
b.EmptyQueue
c.QueueSize
d.QueueFront
e.QueueRear
f.PrintStack
4.Modifiers:
a.Enqueue
b.Dequeue
c.AssignQueues
}