Domanda

Sto iniziando un nuovo progetto web e sto considerando due framework di presentazione.Sto pensando ad ASP.NET MVC o Silverlight.Tenderei a Silverlight poiché sono uno sviluppatore .NET abbastanza esperto mentre ho solo una conoscenza di base dei controlli ASP.NET.

È stato utile?

Soluzione

Sarà principalmente un prodotto iteentale, quindi i browser non sono un problema.

Non hai ancora scritto un corretto descrizione della natura della tua richiesta.È difficile valutare quale tecnologia sia adatta senza prima conoscere sufficientemente bene il dominio a cui viene applicata l’applicazione e i problemi che è progettata per risolvere.

In generale, Microsoft sta posizionando questa gamma di tecnologie di presentazione sul "Raggiungere vs Ricco"continuo.Hai HTML e Javascript "semplici e vecchi" da un lato, accettabili dal maggior numero di macchine client disponibili, e il WPF completo e definitivo dall'altro lato dove può gestire un numero limitato di macchine.Hai menzionato che si tratta di un'app interna, quindi è possibile anche WPF tramite XBAP o ClickOnce.

Quindi la scala si allineerebbe in questo modo:(raggiungere) ASP.NET, AJAX, Silverlight, WPF (ricco).

Quindi la domanda è: quanto vuoi/necessario che sia ricco per gli utenti finché non danneggia la base di distribuzione?Francamente, se tutto ciò che ottieni sono moduli, dati tabulari e statistiche, i normali moduli Web ASP.NET vanno bene.Se desideri grafici ridimensionabili al volo e interattivi lato client con i servizi Web WCF back-end, Silverlight può farlo.Se desideri un rendering grafico ancora più potente di WPF tramite le opzioni di distribuzione remota è la tua scommessa.

Altri suggerimenti

Silverlight 3 con RIA sembra essere molto potente.Non programmavo da 6 anni dopo aver lavorato su VB6.Da circa un mese sto sviluppando un'applicazione web che utilizza SL3, WCF ed Entity Framework e mi sento molto a mio agio.

Il forum Silverlight e StackOverflow ovviamente sono molto attivi e per alcuni dei problemi che ho avuto sono riuscito a ottenere facilmente una soluzione.

L'unica cosa di cui non sono ancora sicuro sono le prestazioni.

Sia a livello personale che professionale, scrivo quotidianamente C# per app Windows Form e servizi Windows.Anche dopo anni, trovo che sia MOLTO più veloce creare un'app Web con PHP o Python piuttosto che farlo con .NET.Forse le cose sono cambiate con Silverlight, ma per me la curva di apprendimento su ASP.NET è ridicola rispetto al ritorno dell'investimento.

Modificare: Quanto sopra è stato scritto circa un anno prima di provare ASP.NET MVC.Trovo ASP.NET MVC meravigliosamente intuitivo e pulito.

Non dimenticare che Silverlight richiederà un plug-in da utilizzare e, per quanto ne so, non è stato aggiunto "nativamente" a IE, per non parlare del resto dei browser.Quindi potrebbero esserci tonnellate di problemi di manutenzione/supporto solo con questo.I file PDF sono ormai considerati "onnipresenti", ma ti imbatti ancora in uno o due utenti che non hanno Adobe Reader sul proprio computer e spesso si verifica in un brutto momento e quindi ti affretti a procurarti un programma di installazione.

A livello fondamentale, questo è ciò che mi ha impedito di utilizzare Silverlight per le mie app Web.Penso che la tecnologia alla base sia buona, ma considerando che al giorno d'oggi potresti ottenere pari visibilità/funzionalità con una bella combinazione Webforms/MVC/AJAX/jQuery (mescola e abbina a tuo piacimento), direi di restare con ASP.NET.

IMO potresti stare meglio con ASP.Net.Anche se avresti una leggera curva di apprendimento, svilupperesti su un modello collaudato, affidabile e scalabile piuttosto che su qualcosa che è in beta e che probabilmente cambierà prima dell'RTM.

Inoltre, con AJAX oggigiorno è possibile ottenere un'esperienza utente piuttosto fluida da ASP.Net.

Consiglierei ASP.NET, non è necessario alcun download aggiuntivo.

Ho usato Silverlight ma molte aziende non consentono agli utenti di installare nulla, inoltre gli utenti domestici non sono contenti di installare i plug-in del browser, Silverlight non è così conosciuto come Flash Player.

Per principianti e programmatori avanzati è possibile trovare tutorial video su.

http://www.asp.net/mvc

È difficile consigliarne uno rispetto all'altro senza sapere quale sia la tua applicazione.Qualunque cosa tu decida, assicurati di tenere a mente il tuo pubblico di destinazione;non tutti avranno Silverlight installato sui propri computer.

Personalmente, a meno che non stessi progettando un'app Web incredibilmente interattiva e bella, sceglierei ASP.NET (con o senza il framework MVC) se non altro per il fatto che esiste un tonnellata di materiale di riferimento mentre Silverlight è ancora un territorio relativamente nuovo.

Sarà principalmente un prodotto interno, quindi i browser non saranno un problema.Si tratta più del prezzo dello sviluppo.È più facile imparare il modello Silverlight o il modello ASP.NET?Mi aspetto che Silverlight sia basato su WebServices e quindi possa dividere chiaramente il codice della mia applicazione in una logica aziendale (servizio) e una presentazione (applicazione Silverlight).

Dato il tuo background in .NET ma un'esperienza limitata in Asp .net...Presumo che tu sia più un tipo da servizio / cliente.Ciò significa che il tuo Javascript è probabilmente altrettanto limitato...Se questo è il caso, sceglierei Silverlight.Ti faciliterà l'accesso a WPF, che potresti utilizzare in futuro.

Ma, cosa ancora più importante, lavorare con Silverlight 2.0 sembra più come creare un'applicazione desktop sandbox.Più di un'applicazione web.Ti sentirai più a tuo agio con Silverlight se la tua esperienza precedente riguarda le app client.

Se vuoi iniziare a creare siti Web/applicazioni, scegli ASP .NET MVC.

In ogni caso, la conoscenza dei tipici controlli ASP .NET non andrà lontano, poiché sono per WebForms.

Direi, a meno che tu non abbia bisogno di funzionalità di animazione e interazione simili a quelle di Flash, scegli ASP.NET.È più semplice da programmare e non richiede download aggiuntivi per gli utenti.

Penso che Silverlight sia necessario solo quando desideri creare applicazioni come Flash.Queste applicazioni sono combinate in un unico eseguibile che viene scaricato una volta sul computer client.Possono comunicare con il server se hanno bisogno di dati o funzionalità che risiedono sul server.L'utente finale deve installare il componente aggiuntivo dell'ambiente Silverlight per eseguire queste applicazioni.

Mentre se crei un'applicazione asp.net, il suo codice risiede ed viene eseguito sul server stesso e quindi un semplice browser Internet può eseguirlo.Ma lo svantaggio è che per le applicazioni interattive con l'utente è necessario effettuare chiamate separate tra il server e la macchina client quando il codice lo richiede.

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