Convenzioni di denominazione: linee guida per l'uso di verbi / sostantivi e grammatica inglese

StackOverflow https://stackoverflow.com/questions/412839

  •  03-07-2019
  •  | 
  •  

Domanda

Qualcuno può indicarmi un sito o darmi un po 'di saggezza su come scegliere nomi per interfacce, classi e forse anche metodi e proprietà relativi a ciò che fa quell'oggetto o metodo?

Questo è specifico per lo sviluppo di Microsoft, quindi Java-esque "doGet" e così via non è realmente usato, tuttavia alcune regole generali che le barriere linguistiche incrociate devono (avrei pensato) esistano.

Un esempio potrebbe essere d'aiuto: ho 4 scelte di nomi per un'interfaccia:

IGroupedItem
IGroupableItem
IDataEntity
IGroupedEntity

Contengono tutti un aggettivo e il nome, o solo un nome. Guardando il framework .NET sembra che ci debba essere una sorta di set di regole per questo, per coerenza? A parte gli ovvi verbi per i metodi.

Modifica: Sebbene l'esempio sia un'interfaccia, non lo sto limitando a sole interfacce. La linea guida generale è che le classi sono sostantivi, metodi verbi, nomi di proprietà. Suppongo che ciò che intendo sia la scelta del sinonimo. Sta lanciando " Entity " ovunque sbagliato

È stato utile?

Soluzione

Guarda gli articoli MSDN per i nomi linee guida. In breve:

  • Usa nomi per nomi di classe e proprietà (è ovvio)
  • Per i nomi delle interfacce, inizia con I e usa nomi e / o aggettivi per descrivere il comportamento
  • Usa i verbi per i nomi dei metodi per descrivere l'azione

Per il tuo esempio - IGroupableItem.

Altri suggerimenti

Le interfacce sono cose che una classe è in grado di fare. Non quello che è , ma cosa può fare .

IGroupableItem

Altri nomi descrivono cosa sono o sono troppo vaghi per essere utili.

In particolare, " IDataEntity " è in gran parte insignificante. Dopotutto, tutto è un'entità dati.

MSDN ha un articolo solo su Linee guida per la denominazione dell'interfaccia che potrebbe aiutarti. Se vuoi le convenzioni di denominazione di cose diverse dalle interfacce, insieme a molte altre linee guida per la denominazione e la progettazione, puoi trovarle tutte anche su MSDN.

Questo è lo stesso materiale della risposta di Spodi, ma le di Linee guida per la progettazione di MSDN Gli sviluppatori di biblioteche sono per lo più eccellenti, coprono naming e molto altro , molto di più.

C'è un bell'articolo Far sembrare sbagliato il codice sbagliato di Joel Spolsky. Racconta una convenzione di denominazione non così popolare, ma molto utile.

Oltre alle linee guida MSDN, esiste un documento sugli standard di codifica C # da IDesign di Juval Lowy che è abbastanza utile (non so se / quanto differisce da MSDN).

Standard di codifica C #

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top