2008-12-19 70 views
2

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

然后,一旦解决了问题,我该怎么做DTO的?在那个领域我见过xxx.DTO,xxx.Entities,xxx.Props。

什么是在编码时命名库,方法,接口等的一些很好的指导方针,以便越来越多的人在他们接踵而至的时候理解这些项目。

回答

7

缩写通常不好。

数据访问层
YourCompany.Data.dll

实体层
YourCompany.Data.Entities.dll

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

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

3

命名组件的项目确实没有标准。重要的是选择适用于您的项目的惯例,然后一致地应用它。

0

你可能会在构建包这里的一些想法:Package structure for a Java project?

至于的方法,接口,变量等....付出一切,描述什么它或代表的名称。每种语言都有不同的标准命名约定。你可能想google你正在编程的语言。

0

与汤姆安德森同意,你需要不要害怕做一些打字。试图尽可能缩短所有内容对于术语来说是比人们意识到的更多的障碍,命名更多地是发展的障碍,而不是人们意识到的。

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它没有namspaces更难。但我仍然遵循与C#中相同的文件夹结构,但是我命名我的类来弥补没有名称空间。例如,如果在C#中我有一个在Application.Controllers.Course命名空间下称“指标”类,在PHP我称之为:

Application_Controllers_Course_Index 

无论如何,请不要走DLL疯狂没有一个好的需求为了它。我不能站在看到超过5个DLL的应用程序,除了在主EXE之外的其他地方从来没有使用它。

+0

是的一样的人。是的,我明白我是更多的实际命名本身不一定是组织。 – percent20 2009-01-01 00:17:31