如何在UML图中建模python属性

时间:2016-03-23 11:58:07

标签: python properties uml

在UML类图中建模python属性的好习惯是什么? 属性本身是类对象,它们的getter和setter是类函数。从课外看,它们看起来像实例属性。那么,您如何建议在我的班级图中提出这一点? 感谢

3 个答案:

答案 0 :(得分:2)

我建议您阅读另一个名为UML Best Practice: Attribute or Association的Stack Overflow用户Geert Bellekens。它简单地说:

  

为数据类型使用类和属性的关联。

您应该在连接到这些UML类的UML关联的末尾编写由非数据类型(具有标识)键入的Python属性。您应该在UML类的属性框中编写由简单数据类型(除了它们的值之外没有其他标识)键入的Python属性。

访问者和变异者主要只是噪音。模型编译器或IDE可以为您生成这些。

答案 1 :(得分:1)

良好的做法是适用于您的项目。

为了对Python属性进行建模,您可以添加表示其用途的构造型getter和setter操作。属性和操作之间的链接通常通过命名约定来完成。有些工具提供了内部链接,可以使用getter和setter创建属性属性。

如果您不使用代码生成,您还可以对该属性进行构造,以指示它们作为属性使用(从而告诉编码人员使用@property)并放弃操作。如果您使用自己的代码生成器,这将类似地工作。工具嵌入式代码生成器可能需要如上所述的其他操作。

答案 2 :(得分:0)

这取决于您的UML工具使用哪种模板。在某些工具中,常见的“属性和方法”框中有一个“属性”框。 UML表示法指出属性是用较低的camelcase编写的,你可以在上层camelcase中写入属性。由于公共访问修饰符(+),它们在视觉上也会有所不同。

您是否需要为getter和setter指定不同的访问修饰符?我不知道我会怎么做。请记住必要的抽象级别。

请记住,UML主要是一组定义的标准。如果标准需要稍微调整以满足您的需求,请不要犹豫。重要的是你的团队和利益相关者理解语法。