2011-12-30 23 views
13

Si tengo clases parciales en C#, ¿cuáles deberían ser los nombres de archivo?Convención de nomenclatura para nombres de archivo de clases parciales?

La clase se llama partial class Logic y existiría de dos o quizás tres archivos separados.

+6

http://stackoverflow.com/questions/1478610/naming-conventions-for-partial-class-files –

+0

parece que fue todo para nada:/Unity3D no puede manejar clases parciales. cree que son dos clases separadas. –

+0

Tenga en cuenta que a partir de Unity versión 4.1.5 las clases parciales parecen funcionar bien. – yoyo

Respuesta

22

Para una clase llamada Logic, probablemente vaya para Logic.something.cs (donde "algo" es diferente para cada archivo). Esto sería en el mismo estilo que las clases parciales que genera Visual Studio (por ejemplo, los archivos .designer.cs para formularios)

+2

De hecho, esto diferenciaría _por qué_ es una clase parcial, y el "por qué" es la parte importante de las convenciones de nomenclatura. El ejemplo clásico con clases parciales es que una parte se genera y la otra es manual. Entonces 'Logic.generated.cs' y' Logic.cs' serían bastante intuitivos. – David

+0

Me gusta esta idea, ¡hace que sea fácilmente identificable por el Diseñador! – Jonathan

0

Creo que puede elegir el nombre de los archivos como desee, siempre que las clases parciales sean colocado en el mismo espacio de nombres!

0

Lo que usted quiera, pero:

  • No utilice las clases parciales. Si tu clase es tan grande, mejor dividirla en clases separadas de alguna manera.
  • Si insiste en clases parciales, partirlos lógicamente, lo que podría tener Logic_Boolean.cs, etc.
+0

Como comentario sobre su primer argumento: todavía no soy tan bueno con las clases, por lo que para mantenerlo organizado me gustaría dividirlo en varios archivos :) –

+0

@SimonVerbeke es suficiente. Pero algo a tener en cuenta. – Ray

+0

otra razón es que estoy trabajando con Unity3D, y sus scripts requieren que cualquier lógica que desee ejecutar se coloca en algunos métodos predeterminados. Quería separarlos: 'Update()' en un archivo, 'OnGUI()' en otro, ... También es un proyecto bastante pequeño con un montón de código que no regresa a ningún otro lado. –

2

Yo sólo uso las clases parciales si estoy generando código (CodeSmith, MyGeneration, archivos de plantilla (TT)). Microsoft ha hecho un buen trabajo al hacer esto con proxies y conjuntos de datos generados, etc. Como el código se generará nuevamente en el futuro, le permite separar la lógica que desea incluir pero no desea sobrescribir.

estándar basado en las normas biblioteca .NET de Microsoft http://10rem.net/articles/net-naming-conventions-and-programming-standards---best-practices

Pascal caso, no subrayados o líder de "C" o "cls".

Las clases pueden comenzar con una "I" solo si la letra que sigue a la I no está en mayúscula, de lo contrario, parece una interfaz.

Las clases no deben tener el mismo nombre que el espacio de nombre en el que residen. Cualquier acrónimo de tres o más letras debe ser en mayúscula, no en mayúsculas. Trate de evitar las abreviaturas y trate de usar siempre los sustantivos. Por qué: esta convención es consistente con .NET Framework y es fácil de leer.

ejemplos incluyen

  • Widget
  • InstanceManager
  • XmlDocument
  • MainForm
  • DocumentForm
  • HeaderControl
  • CustomerListDataSet

Aquí es un enlace de MS en las convenciones de nombres http://msdn.microsoft.com/en-us/library/xzf533w0(v=vs.71).aspx

Cuestiones relacionadas