Domanda

.NET è diventata una tecnologia popolare tra sviluppatori di software e clienti. Stavo pensando se sarebbe stata una saggia decisione sviluppare un prodotto basato su Windows Form in .NET che può essere scaricato da migliaia di clienti in tutto il mondo. Il vero problema potrebbe essere l'installazione del framework che è cresciuta notevolmente con le versioni .NET.

v2.0 aveva un'installazione decente da 22 MB, ma l'ultima v3.5 supera i 150 MB e può rivelarsi un fattore decisivo per i clienti. Ho sentito parlare di alcuni strumenti che eseguono un tipo di "statico" collegamento per assembly .NET (ad esempio ILMerge) e può essere utilizzato per creare piccoli eseguibili autonomi ma la domanda è: questi strumenti possono essere utilizzati nell'ambiente di produzione? lo strumento ILMerge era uno strumento di ricerca e penso che non sia mai arrivato all'installazione VS.

Ho un prodotto da sviluppare che necessita di un'interfaccia utente molto bella che può essere realizzata usando il supporto WPF. Ma non sono sicuro se i clienti vorrebbero scaricare un framework da 150 MB (non sono sicuro di quanto sia grande la v3.0) per un'applicazione da 4 MB. Se sviluppo in .NET 2.0, perdo il supporto per WPF. XP, Vista, Windows 7 sono dotati di un framework .NET preinstallato?

- AGGIORNATO IN BASE AI COMMENTI -

L'applicazione verrà scaricata da un sito Web e non avrà un supporto distribuibile.

  1. Usa .NET 2.0 - Questo non mi permette di usare WPF, quindi perderò le cose fantasiose a meno che non utilizzi uno strumento di skinning di terze parti.
  2. Utilizza il profilo client per ridurre l'installazione - L'installazione scenderà a circa 30 Meg e manterrò il supporto WPF / WCF insieme alle nuove funzionalità del framework.
  3. OS supportati

      Win 98, ME, 2000 - Full install of Runtime required
      Win XP SP2, SP3, 2003 (I think these have .NET 2.0)
      Vista, 2008 - All version have atleast v3.0
      Windows 7 - v3.5
    
È stato utile?

Soluzione

Sono disponibili varie versioni di .NET framework preinstallato con Vista e Windows 7 :

  • XP - Niente
  • Vista - .NET 3.0
  • Windows 7 - .NET 3.5

Se sei davvero preoccupato per le dimensioni del download, dai un'occhiata al profilo del client. Questa è una versione ridotta del framework che include solo i bit più importanti per lo sviluppo di applicazioni client. Credo che abbia una dimensione di ~ 30 MB. Il supporto per esso era irregolare in 3.5. Ha funzionato solo su XP a 32 bit e solo se non sono state installate altre versioni di framework , ma sembra essere molto meglio in 4.0. Ora funziona su tutte le piattaforme che supportano il framework .NET completo anche se dispongono già di un'altra versione del framework e sono disponibili in forma ridistribuibile nonché con un programma di installazione Web Vedi qui

Andando oltre i dettagli tecnici, devi considerare il tuo mercato di riferimento. Mercati diversi hanno linee di base e requisiti diversi. Ricorda che puoi sempre raggruppare il programma di installazione .NET con la tua applicazione tutto su un CD se stai distribuendo fisicamente il supporto. Direi che nella maggior parte dei casi non dovrebbe essere un problema (in particolare se scegli come target il profilo del cliente), mi preoccuperei solo se stavi prendendo di mira uno specifico settore di mercato di piccole dimensioni che aveva requisiti molto rigidi su quale software era consentito .

Altri suggerimenti

Se sei preoccupato per le dimensioni dell'installazione, dovrei scegliere come target il framework .Net 2.0 sul framework .Net 3.5 - se stai semplicemente facendo un'applicazione di base per Windows Form (no WCF, WPF o Linq ecc ...) quindi il framework .Net 2.0 ha il 90% delle funzionalità di .Net 3.0 o 3.5 e presenta anche una percentuale molto più alta di macchine (80% secondo questo blog)

In VS2008 ho modificato i miei modelli di progetto per renderlo predefinito.

Esiste anche Anteprima profilo client .NET Framework che dovrebbe ridurre la dimensione del download di .NET Framework a 28 MB. Include WPF.

Può certamente essere una preoccupazione per gli utenti con connessioni di rete lente. Una soluzione è limitare lo sviluppo per non utilizzare le funzionalità più recenti (è quello che faccio) e fornire un collegamento al runtime .NET 2.0 nella pagina Web delle istruzioni di installazione dell'applicazione. Funzionerà perfettamente con Windows Form (anche se non sarà possibile utilizzare WPF e alcune delle funzionalità linguistiche più recenti).

Non penso che sia un fattore decisivo, il più delle volte. Vista ha già installato .NET 3.0, credo. Inoltre, Java è sulla stessa barca (richiede un JRE) e non conosco alcun software che abbia veramente sofferto del "sovraccarico". di scaricare una piattaforma runtime come Java o .NET.

Credo fermamente che sia meglio pensare a queste piattaforme come standard di fatto ; Al giorno d'oggi molte applicazioni li richiedono; è probabile che la maggior parte dei tuoi potenziali utenti li abbia già installati.

Ok, lasciami fare questa stupida domanda. Perché ti sei limitato a un client desktop autonomo anziché a un'applicazione Web? Puoi fare le cose fantasiose usando Silverlight. Uno dei client con cui ho lavorato, ha un client autonomo sul mercato ma alla fine vuole spostarlo sul Web poiché ha bisogno anche degli utenti Mac.

Rendi i client così meravigliosi scaricare un framework da 1 GB :).

Ora seriamente, dato che XP e tutte le versioni precedenti hanno .NET preinstallato, di cosa ti preoccupi?

Per ora potresti semplicemente scegliere come target .NET 2.0 (a meno che non ti impegni su WPF) e, dopo il 3,5 acquisito abbastanza popolarità, passa.

Se non è richiesta l'installazione off-line di .NET, allora il programma di installazione online può essere utilizzato e la dimensione effettiva del download sarà inferiore a 60 mega (a seconda di quanto è già installato).

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