UML的命名约定
UML有任何名称约定吗UML的命名约定,uml,naming-conventions,Uml,Naming Conventions,UML有任何名称约定吗 我很想知道如何命名类、包和方法。但是,如果有一些文档指定了每个UML图的所有命名约定,请共享。您的UML命名约定应该基于您正在编程的语言的命名约定。您正在描述实际的类、包和方法,因此使用您将要或已经在代码中使用的相同名称。UML标准没有指定任何命名约定。您选择的命名标准取决于UML模型的目标受众。这一受众同样取决于模型的目的。例如,如果您打算从您的模型生成代码,则需要得到适合您的目标平台的结果。我自己的经验是,如果您希望在更改目标平台后仍保留模型,或者如果您打算为多个目标
我很想知道如何命名类、包和方法。但是,如果有一些文档指定了每个UML图的所有命名约定,请共享。您的UML命名约定应该基于您正在编程的语言的命名约定。您正在描述实际的类、包和方法,因此使用您将要或已经在代码中使用的相同名称。UML标准没有指定任何命名约定。您选择的命名标准取决于UML模型的目标受众。这一受众同样取决于模型的目的。例如,如果您打算从您的模型生成代码,则需要得到适合您的目标平台的结果。我自己的经验是,如果您希望在更改目标平台后仍保留模型,或者如果您打算为多个目标平台生成代码,那么选择与平台无关的命名是很有帮助的。例如,如果您打算为SQL数据库创建Java代码、DDL语句,并为Restful服务创建XSD模式定义,那么您有三个不同的目标,在这三个目标中,您都需要一种通用语言。一个好的方法是使用独立于平台的类型系统,如CORBA IDL、XSD类型甚至ISO类型。您还可以使用自然语言类型描述,如“日期”、“时间”、“数字”、“货币”。对于特定于域的内容的名称,可以使用映射。例如,如果您将一个类命名为“Customer Contact”,操作命名为“Call Customer”,属性命名为“Customer’s name”,则映射将允许创建。 Customer\u Contact作为Java类名,“callCustomer”作为操作名,“customersName”作为属性名 是否可以应用映射取决于所使用的工具链。如果不能使用映射,则必须确定目标平台的最小公分母。如果没有,您将不得不决定在哪里不遵循命名约定是最省力的
最重要的是IMHO是否严格遵循和系统化(甚至可能是自动的)将模型元素映射到其他工件的规则或者该模型是否用于说明目的,映射规则是否仅由使用大脑的人员应用。根据不同的实现目标使用不同的命名约定。以下是一些:
- 比特流
- libcurl
- libusb
- 利比特
- libexpect
- xmpp
- 测试协议(tap)
- irc
- 网络驱动程序
- 少校
- 网袋
- memcached
- 昂首阔步
- XDG