Se ho classi parziali in C#, quali dovrebbero essere i nomi dei file?Convenzione di denominazione per i nomi di file delle classi parziali?
La classe è denominata partial class Logic
e esisterebbe da due o forse tre file separati.
Se ho classi parziali in C#, quali dovrebbero essere i nomi dei file?Convenzione di denominazione per i nomi di file delle classi parziali?
La classe è denominata partial class Logic
e esisterebbe da due o forse tre file separati.
Per una classe chiamata Logic
, probabilmente andrei per Logic.something.cs
(dove "qualcosa" è diverso per ogni file). Questo sarebbe nello stesso stile delle classi parziali generate da Visual Studio (ad esempio i file per i moduli)
In effetti, ciò differenzierebbe _perché_ è una classe parziale, e il "perché" è la parte importante delle convenzioni di denominazione. L'esempio classico con classi parziali è che una parte viene generata e l'altra è manuale. Quindi 'Logic.generated.cs' e' Logic.cs' sarebbero abbastanza intuitivi. – David
Mi piace questa idea, la rende facilmente identificabile dal Designer! – Jonathan
Credo che si possa scegliere il nome dei file come si desidera, a patto che le classi parziali siano posto nello stesso spazio dei nomi!
Tutto quello che vuoi, ma:
Come commento sul tuo primo argomento: non sono ancora così bravo con le classi, quindi per organizzarlo mi piacerebbe dividerlo in più file :) –
@SimonVerbeke abbastanza giusto. Ma qualcosa da tenere a mente. – Ray
un altro motivo è che sto lavorando con Unity3D, e i suoi script richiedono che qualsiasi logica che si desidera eseguire venga inserita in alcuni metodi predeterminati. Volevo separarli: 'Update()' in un file, 'OnGUI()' in un altro, ... È anche un progetto piuttosto piccolo con un sacco di codice che non torna da nessun'altra parte. –
userei solo classi parziali se sto generazione di codice (CodeSmith, MyGeneration, File modello (TT)). Microsoft ha fatto un buon lavoro nel fare ciò con proxy e set di dati generati, ecc. Poiché il codice verrà generato di nuovo in futuro, consente di separare la logica che si desidera includere ma non si desidera sovrascriverla.
standard basa su Microsoft NET Standards http://10rem.net/articles/net-naming-conventions-and-programming-standards---best-practices
Pascal caso, nessuna sottolineatura o leader "C" o "cls".
Le classi possono iniziare con un "I" solo se la lettera che segue l'I non è maiuscola, altrimenti sembra un'interfaccia.
Le classi non devono avere lo stesso nome dello spazio dei nomi in cui risiedono. Qualsiasi acronimo di tre o più lettere dovrebbe essere un caso pasquale, non tutti i maiuscoletti. Cerca di evitare le abbreviazioni e cerca di usare sempre i nomi. Perché: questa convenzione è coerente con .NET Framework ed è di facile lettura.
Gli esempi includono
Ecco un link di MS su convenzioni di denominazione http://msdn.microsoft.com/en-us/library/xzf533w0(v=vs.71).aspx
http://stackoverflow.com/questions/1478610/naming-conventions-for-partial-class-files –
sembra che è stato tutto per niente:/Unity3D non può gestire classi parziali. pensa che siano due classi separate. –
Si noti che a partire dalla versione 4.1.5 di Unity le classi sembrano funzionare correttamente. – yoyo