Per quanto riguarda i nomi di file, preferisco che il nome del file di progetto corrisponda al nome dell'assembly di output perché rende molto più facile sapere cosa produce cosa. Fare un elenco di directory è molto più veloce della ricerca dei file csproj in un albero per quello che produce l'assembly a cui tengo.
Non mi preoccupo dei file di soluzione perché non influenzano il nostro ambiente di costruzione, quindi finisco per creare il mio per avere l'ambito esatto che voglio (e gli elementi specifici per soluzione, come i metadati di test, quello che voglio).
Per quanto riguarda la struttura delle cartelle, non mi preoccupo troppo se le cartelle che portano verso il basso i file di progetto corrispondono agli spazi dei nomi. Voglio che il mio codice sieda su disco in un modo che abbia più senso per il progetto. A volte questo significa che il codice di test e il codice prodotto si trovano nelle directory di pari livello, a volte significa che sono molto più distanti tra loro. A volte c'è uno spazio dei nomi a cui molti team hanno contribuito (non sostenendo che il design, solo una realtà) - ma quei team vogliono vivere nelle proprie cartelle per qualsiasi motivo.
Non dimenticare l'importanza delle strategie di controllo delle versioni nella progettazione generale del progetto. I confini dell'azienda e del prodotto possono essere succursali e pertanto non dovrebbero necessariamente essere rappresentati come directory su disco.
Non lasciare che questa sia una fonte di paralisi dell'analisi però. Fai una scelta ragionevole. Usa il controllo della versione. Puoi sempre cambiare dopo se hai torto.
fonte
2009-06-15 14:50:32