项目命名

时间:2008-12-19 18:56:09

标签: naming-conventions namespaces class-library

作为一个初学者/中级开发人员,我遇到了一个问题,因为我使用更多的OOP原则,因为我的项目越来越大,抽象越来越多。就像我有多个项目或类库时,我不知道如何命名它们。我看到的东西从xxx.Core到xxx.Main或者甚至看过xxx.BLL和xxx.DAL。在浏览其他人时,我看到了xxx.Services和xxx.Data用于他们的库和命名空间。

然后一旦解决了我的DTO是什么?在那个领域,我见过xxx.DTO,xxx.Entities,xxx.Props。

在命名库,方法,界面等方面有哪些好的指导方针......在编码时,越来越多的人会在他们接下来接收项目后理解这些内容。

5 个答案:

答案 0 :(得分:7)

缩写通常很糟糕。

数据访问层
YourCompany.Data.dll

实体层
YourCompany.Data.Entities.dll

业务层
YourCompany.BusinessLogic.Name.dll (例如:YourCompany.Accounting.Services.dll)

这也不是黄金,我相信有很多其他类型的方法可以做到这一点,我们这样做是为了更容易找到项目,程序集和构建适当的部署。另外,在查看程序集时,查看全名,而不是“MS.BLL.dll”更友好。

答案 1 :(得分:3)

实际上没有标准来命名项目的组件。重要的是选择一个适用于您的项目的约定,然后一致地应用它。

答案 2 :(得分:0)

您可以在此处获得有关构建包的一些想法:Package structure for a Java project?

至于方法,接口,变量等......给所有东西一个名称,准确描述它的作用或代表。每种语言都有不同的标准命名约定。您可能想要谷歌编写您正在编程的语言。

答案 3 :(得分:0)

同意Tom Anderson的说法,你不必害怕做一些打字。试图让所有东西尽可能短,这比人们意识到的更多是命名法的障碍,而命名法更像是人们意识到的发展障碍。

答案 4 :(得分:0)

嘿%20,很想见到你:)(假设你是来自3dbuzz的那个)

无论如何,使用命名空间和文件夹!如果你不需要,不要对DLL疯狂。对于我假设您正在谈论DLL的应用程序类型可能会有点过分。在C#中使用文件夹和命名空间。例如:

Library
 - Net code
 - DBA code
 - Controller manager code
 - Factories
Application
 - Forms
 - Controllers
 - Models
  - Helpers

在C ++中,我通常会:

Library
 - Net Code
  - Header Files
  - Source Files
  - Inline/template files
 - DBA Code
  - Header Files
  - Source Files
  - Inline/template files
Application
 -Model
  - Header Files
... and so on

在PHP中,没有namspace就更难了。但我仍然遵循与C#中相同的文件夹结构,但我将我的类命名为没有名称空间。例如,如果在C#中我在Application.Controllers.Course命名空间下有一个名为“Index”的类,在PHP中我会称之为:

Application_Controllers_Course_Index

无论如何,请不要在没有良好需要的情况下疯狂地使用DLL。我无法看到有超过5个DLL的应用程序,除了主EXE之外从未在其他地方使用过。