Recentemente abbiamo fatto visita a un appaltatore che ha messo in dubbio la nostra metodologia di strutturazione dei progetti. Si noti che mi riferisco in modo specifico alla struttura delle directory. Ha suggerito di utilizzare le linee guida di Microsoft. Ho pensato che sarei stato in grado di Google "Linee guida Microsoft struttura della directory di progetto .NET" e trovare qualcosa di utile, tuttavia questo ha dimostrato di non essere il caso. Allo stato attuale facciamo qualcosa del genere:
[Company.System.Feature]
|-doc
|Sandcastle project
|-lib
|Nuget packages
|-src
|-Project1 e.g. web
|-Project2 e.g. business logic
|-UnittestProject1
|-Specs
La cartella doc contiene una soluzione Sandcastle come quella descritta qui: https://www.codeproject.com/Articles/15176/Sandcastle-Help-File-Builder (vedi: percorsi assoluti e relativi). Pertanto la cartella doc contiene una cartella della Guida, che contiene il file della guida generato. La cartella lib contiene tutti i pacchetti Nuget.
Esistono linee guida Microsoft che suggeriscono come strutturare una soluzione? Ho cercato qui: /programming/789389/project-structure-for-c-sharp-development-effort/789554?noredirect=1#comment86756309_789554 tra gli altri posti. La maggior parte degli articoli e delle domande che ho letto sembrano essere stati creati 2007-2009. Credo che Nuget sia stato introdotto nel 2010. Ci sono delle linee guida Microsoft? Ho letto di qualcosa chiamato Tree Surgeon, tuttavia questo non sembra più esistere: https://archive.codeplex.com/?p=treesurgeon .
Sto usando TFS; Cruise Control e DDD è ciò che fa la differenza.
packages
nessuno, per progetti in stile dotnetcore e VS2017. Ora vivono nelle obj
directory dei progetti .