Domanda

per VS 2005 esiste un numero massimo di progetti che possono causare problemi di prestazioni. Ora abbiamo fino a 25 progetti e in crescita. Dovremmo creare riferimenti binari o suddividere la nostra logica applicativa in troppi progetti diversi. Sembra iniziare ultimamente ad essere un grosso problema di prestazioni.

È stato utile?

Soluzione

Avere troppi file DLL può costarti in fase di esecuzione, quindi ti consiglio di provare a minimizzare la quantità di progetti. Anche la creazione di diverse soluzioni è un'opzione, ma cerca di rendere le soluzioni indipendenti l'una dall'altra in modo da non dover eseguire il debug e implementare nuove funzionalità su più soluzioni, il che può essere ingombrante.

Dai un'occhiata a questo articolo: Anti-pattern del progetto: molti progetti in un file di soluzione di Visual Studio .

Altri suggerimenti

Esiste una catena di dipendenza attraverso tutti e 25 i progetti? Se alcuni progetti non dipendono da altri, inseriscili nella loro soluzione.

Non compilare l'intera soluzione se non è necessario e di solito non lo è. Di solito puoi fare clic con il tasto destro sul progetto che hai appena modificato e compilare solo quello. VS capirà quali progetti dipendenti devono essere ricompilati.

Utilizza " start senza debug " a meno che tu non abbia intenzione di raggiungere un punto di rottura.

Alcune DLL sono stabili e non sono cambiate da molto tempo? Non devono nemmeno essere nella tua soluzione.

Non cercare l'intera soluzione a meno che non sia necessario.

Il vero limite è la mente umana. Quanti file in un progetto si possono gestire? Inoltre, a meno che non si utilizzi ndepends per tracciare le dipendenze, l'inserimento in molte classi in un progetto può portare a troppe classi a seconda delle altre classi, rendendo le modifiche più difficili e rischiose.

Normalmente proviamo a mantenere la quantità di progetti all'interno di una soluzione inferiore a 10. Dopo 10, inizi ad avere un tempo di compilazione lento e lento "ricarica del progetto". tempo.

Ma il problema principale qui è perché hai 26 progetti? Un semplice sito Web può contenere solo 1 progetto, pur mantenendo il livello dati, il livello aziendale e il livello presentazione all'interno dello stesso progetto.

Se stai dividendo i progetti solo per questa roba a 3 livelli, ti suggerisco di rivedere questo. ad esempio, abbiamo 3 progetti per il livello 3. Il motivo per cui abbiamo 3 livelli in assembly separato è che stiamo uscendo da altri software per utilizzare il livello dati più avanti nel nostro progetto. Mantenere il nostro livello aziendale al di fuori del progetto di presentazione principale ci consente di testare facilmente il nostro livello aziendale mantenendo dipendenze inutili al di fuori del livello presentato.

Quindi, nel complesso, tieni i progetti sotto i 10 anni e rivedi se riesci a unire alcuni progetti insieme. Ti farà risparmiare tempo in fase di compilazione E in fase di compilazione. Sarà anche più facile gestire quelle DLL.

Direi che al momento della creazione ti costa non runtime. E meno è più veloce, ma forse non sempre li costruisci tutti. In tal caso, è necessario ridurre l'importo. altrimenti li dividono in diverse soluzioni. Quindi solo il server di build dovrà costruirli tutti e una build giornaliera ha tutta la notte per essere costruita ;-)

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