Cross platform o sviluppo web con .NET

5

Con iOS e Android che si espandono su dispositivi mobili che diventano sempre più pervasivi, ogni altro anno è l '"anno di Linux sul desktop" - che è piuttosto snarky, ma stanno arrivando -, OSX mantiene ancora il suo, il tempo in cui si potrebbe semplicemente dire "funziona su Windows, e se non stai usando Windows, beh, fa schifo a essere te stesso".

Sono uno sviluppatore .NET, con le applicazioni che sto sviluppando essendo abbastanza orientato al servizio, in modo da poter facilmente esporre la logica di backend a front-end diversi. Sono davvero pessimo con le interfacce utente, ma alla fine le applicazioni devono finire con un utente finale. E per presentare l'applicazione all'utente finale, ha bisogno di una GUI. Sembrava che XAML / WPF fosse la terra della generosità, dove non erano ancora lì, ma miravano a creare uno strato di presentazione multipiattaforma. Ultimamente, però, è stato molto silenzioso sul fronte del WPF. Silverlight è quasi morto. Spero quasi che la "cosa giusta" accada qui, con qualche magia nera, pixiedust e unicorni volanti che fanno piovere arcobaleno trasformando il mio codice + XAML in applicazioni HTML5 / CSS3, winforms, metro o qualsiasi altra forma che scelgo di costruire per. Questo potrebbe essere un po 'ottimistico.

Quindi a quali moduli di presentazione dovrei guardare? Mi piacerebbe continuare a utilizzare .NET come ecosistema principale. Dovrei semplicemente andare su asp.net + html5 e fare il front end a mano in html5 / js / css? C'è qualche quadro che sembra che manterrà la promessa di essere in grado di fare qualcosa in un linguaggio un po 'unificato?

    
posta Martijn 07.08.2012 - 10:22
fonte

3 risposte

3

Scegli lo sviluppo basato su HTML5, non solo funzionerà su dispositivi mobili, ma sarà anche multipiattaforma sui desktop.

per ottenere lo sviluppo web per dispositivi mobili multipiattaforma, vuoi Apache Cordova , non solo un modo per scrivere app utilizzando le GUI Web , ma ti dà anche accesso a varie API mobili, ben racchiuse nella libreria javascript. Per le app LoB, l'HTML è la soluzione perfetta in quanto non hai bisogno di tonnellate di energia per eseguirle. Per accedere ai servizi di back-end (prestando molta attenzione ai servizi WCF poiché i loro protocolli SOAP tendono a essere scarsamente interoperabili), quindi utilizzare jQuery direttamente o acquisire Restify ''s delle librerie client (o hey, dimentica obsoleto vecchio .NET ed esegui Node.js server, allora tu arrivare a fare tutto in quel linguaggio unificato, eccetto per le parti di scricchiolio della CPU che vorrai scrivere in C ++)

Naturalmente, se vuoi scrivere qualcosa con un sacco di prestazioni della GUI, ti consigliamo di andare nativo con C ++, sia con NDK che con un wrapper ogg-c.

    
risposta data 07.08.2012 - 12:14
fonte
2

Penso che dipenda davvero dal tipo di software che stai scrivendo.

È qualcosa che puoi sfruttare utilizzando le API native del dispositivo mobile (come multitouch, rotazione, bussola, ecc.) o non importa?

La tua applicazione deve essere online per funzionare o dovrebbe funzionare offline?

Oggi ci sono alcuni grandi strumenti HTML / CSS / JS con cui lavorare e, dal momento che il browser è diventato l'interfaccia utente ubiquitaria, e con la progressione di Atwood's Law , puoi creare belle interfacce con relativamente facile.

Dai un'occhiata a jQuery , Interfaccia utente di jQuery , KnockOut JS e molti altri come flot puoi utilizzare per creare applicazioni sia online che offline con.

Per alcuni dispositivi mobili, come iPhone o telefoni Android, puoi creare semplici applicazioni in cui puoi caricare un URL remoto o locale utilizzando il browser nativo.

Se l'applicazione funziona solo on-line, il bastone con la tecnologia si sa, ma imparare qualche dio dannazione javascript, dal momento che è il linguaggio assembly per il web .

PS: Su un lato nota, Scott Hanselman ha una grande lista delle librerie JavaScript fresco     

risposta data 07.08.2012 - 14:38
fonte
-1

Utilizza Html5 / CSS3 come sviluppo nativo per dispositivi mobili / web . Ciò ti consentirà di ottenere lo stesso risultato su dispositivi mobili e desktop.

Come sviluppatore .NET potresti avere familiarità con lo sviluppo di framework ASP.NET, quindi suggerirei di utilizzare ASP.NET MVC 4 per lo sviluppo mobile multipiattaforma con viste / pagine in HTML5 / CSS3. Ci sono un buon numero di strumenti e framework mobili che fanno parte di questa comunità di sviluppo.

Potresti cercare altri dettagli @ Novità per lo sviluppo mobile in ASP.NET MVC 4 .

C'è anche la possibilità di usare Silverlight, ma non l'ho ancora esplorato. Ecco un riferimento per guardare - Silverlight per telefoni cellulari

    
risposta data 07.08.2012 - 10:48
fonte

Leggi altre domande sui tag