C#:嵌套类的命名约定,以及适当的实现?

问题描述 投票:2回答:2

我想知道是否有用于命名“ concrete”类和实例的标准。

例如,我目前有一个名为Test的类,其实例也称为Test。我认为这很糟糕。

是否有某种标准来命名具体类及其实例?实例需要测试,但是具体的我不知道该怎么做。命名为TestConcrete吗?

Microsoft在这种情况下会做什么?

[基本上,具体类仅在Product类中用于支持嵌套类,绝不会从外部实例化。

这是我的班级。我想我做对了吗?我正在Product的构造函数中创建Test的实例。

我不想陷入不良习惯,而我将会做很多这样的事,而Test(具体)和Test(实例)可能是一个坏主意!

public class Product    {
    public int Id { get; set; }

    private Test Test { get; set; }


    public Product()
    {
        Test = new Test();
    }
}
c# oop inner-classes
2个回答
4
投票

这不是没有先例,我想您可以找到

  Color  Color { get; set; } 

在图书馆中,还有更多类似的东西。

但是最好的解决方法是考虑一个更具体的名称,即域驱动。有点像

  private Test TestResults { get; set; }

  private TestData  Test { get; set; }

1
投票

这些是我的指南:

public abstract class Test
{
    public void FooBar() // Method, capitalization, PascalCase
    {
         Person fatherFigure = new Person(); // Class instance, lowercase first letter, camelcase rest.

    }

    public string Name {get; set; } // Property, capitalization, PascalCase

    private string PrivateName {set; set; } // Private property, capitalization, camelcase

    public string someField; // Field, lowercase first letter, camelcase

    private string _someField; // Private member, prefix with _
}

这些只是我自己的观点。 :)

© www.soinside.com 2019 - 2024. All rights reserved.