Dovremmo compilare il nostro sito Web in una singola DLL o una DLL per pagina?


12

Stiamo sviluppando un nuovo progetto che deve essere distribuito su un gran numero di siti client. Il progetto contiene una GUI basata sul web come uno dei suoi "punti di accesso". La velocità dell'interfaccia web è una priorità per questo progetto, seconda solo alla sicurezza.

In passato, abbiamo sempre creato "siti Web" in Visual Studio, che, quando pubblicato, genera un file dll e un file aspx per ogni pagina all'interno del sistema. Tuttavia, sono consapevole che puoi effettivamente creare una "applicazione web" e farla compilare tutto in un'unica DLL.

Per me (basato su nessun dato reale, solo sensazione), compilare il sito come una singola dll sembra che sarebbe meglio sia per la sicurezza che per la velocità (anche se solo marginalmente).

Quali sono le considerazioni che dovremmo considerare e ci sono evidenti insidie ​​di cui dovremmo essere consapevoli quando si sceglie il metodo giusto per noi?

Risposte:


4

Se si tratta di un'applicazione di grandi dimensioni, dovrebbero esserci aree naturali di divisione nella logica aziendale (livelli software, se lo si desidera) che possono andare nelle proprie DLL.

Sarebbe bello se la funzionalità del sito Web principale potesse andare in una singola DLL. Facilita i problemi di spiegamento ed è comunque un'unità naturale. Una DLL per pagina sembra eccessivamente granulare.


scusate - avrei dovuto menzionare nella domanda che il sito Web è puramente un livello di presentazione; Tutti i BL E DL sono tenuti in assiemi separati, ma la seconda parte è un buon ragionamento :)
Sk93

3

applicare il concetto di "separazione delle preoccupazioni", se possibile, nel senso che la businesslogic potrebbe essere in DLL, un altro livello di accesso ai dati e l'interfaccia utente per un altro ...

questo potrebbe tornare utile se ti capita di perdere il codice sorgente ... quando decompilare la DLL potrebbe essere più facile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.