2009-10-02 13 views
10
  • Quando si utilizza mono una buona scelta rispetto all'utilizzo di .net per lo sviluppo di un sistema di produzione?
  • Il costo iniziale degli strumenti è pari a zero, ma in che modo il costo totale di sviluppo utilizzando mono è paragonabile all'utilizzo di .net?
  • Qual è lo sweetspot per l'adozione di mono.?

risposta

5

Mono può fare alcune cose del MS Net non possono o non:

  • eseguito su Linux, Mac e altri (tra cui iPhone ora)
  • collegamento statico le DLL quadro, per uno scenario di distribuzione a dipendenza zero.

D'altra parte, .Net fa alcune cose che Mono non fare o non ancora non facilmente:

  • più recente versione del framework
  • Fuori del supporto contenitore di Visual Studio
  • WPF, WCF, WF, ecc
  • ci sono alcune cose in mono che lavoro, ma la prestazione non è del tutto allo stesso livello come .Net
+0

Ci sono un certo numero di librerie disponibili in Mono che non vengono fornite con .NET. Il REPL è un buon esempio di questo. Anche lo spazio dei nomi Mono.SIMD (che può essere utilizzato in mono per migliorare drasticamente le prestazioni delle operazioni vettoriali) In definitiva le prestazioni sono paragonabili tra entrambe le piattaforme, dipende solo da ciò che si sta facendo. – overstood

15

Mono è .NET in esecuzione su piattaforme non Microsoft.

Utilizzare Mono se si sta cercando di creare un'applicazione .NET su una piattaforma non Microsoft. Attualmente, sto lavorando a un'applicazione ASP.NET MVC in esecuzione su OS X tramite Mono (voglio scegliere come target un server basato su Linux e tutto il mio sviluppo è in corso in OS X). Roba buona.

Se si sta mirando solo a Windows, quindi gli strumenti Microsoft gratuiti (Express Edition) sono in genere l'opzione migliore.

... dove è Miguel quando hai bisogno di lui.

+3

+1 per collegare il proprio account utente. Basta sfogliare le risposte di Miguel de Icaza per avere un'idea dello stato di ciò che mono può e non può fare. –

+0

Avevo l'impressione che Mono fosse ancora al sicuro su .Net 2.0. È sbagliato? In caso contrario, come stai ottenendo materiale ASP.Net MVC? –

+0

Mono è arrivato a lungo negli ultimi 2 anni circa. Non ha tutto, ma puoi controllare la roadmap per vedere dove si trovano in termini di parità delle funzionalità: http://www.mono-project.com/Roadmap MVC sembra essere almeno parzialmente dal 29 giugno di quest'anno . –

3

Il costo iniziale degli strumenti per un'app .NET è pari a zero. Cassa SharpDevelop.

Lo sweetspot di Mono è lo sviluppo di app per Linux utilizzando C# e un framework .NET-esque familiare.

+0

+1 per il commento ".NET-esque". Non è al 100% uguale a Microsoft .NET Framework, ma è piuttosto vicino. –

+2

Dimentica sharpdevelop, controlla Visual Studio Express. –

+0

+1 per VS Express! Non riesco a credere di essermi bloccato su quello quando ho postato questo ... – joshuapoehls

1

È interessante se è necessario sviluppare software che funziona in molte piattaforme (Linux, Mac, Windows) utilizzando l'ecosistema .net.

Secondo il loro sito ufficiale:

Mono è una piattaforma software progettato per consentire agli sviluppatori di creare facilmente multipiattaforma applicazioni. Si tratta di un'implementazione open source di .Net Framework di Microsoft basato su standard ECMA per C# e il Common Language Runtime . Riteniamo che abbracciando una piattaforma software standardizzata di successo, , siamo in grado di ridurre le barriere alla produzione di ottime applicazioni per Linux.

Loro official website ha un sacco di informazioni su IDE e altre informazioni utili sul progetto.

4

Mono facciamo funzionare le applicazioni .NET su Linux e Mac OS X, mentre l'implementazione principale di Microsoft è legata a Windows.

Quindi, nel caso di:

"? Che cosa è meglio per la scrittura di applicazioni cross platform"

La risposta è Mono, e non penso che sia nemmeno una risposta soggettiva.

Mono supporta un alito sorprendente di .NET fino a 3,5. Praticamente tutti i BCL sono dentro e puoi fare ASP.NET MVC, Linq e WinForms. La versione trunk di Mono supporta anche le funzionalità .NET 4.0, quindi non sono molto indietro.:)

Notevoli elementi che stanno dietro sono le varie tecnologie W *. Il WPF è praticamente inesistente. WF, è la qualità pre-alpha. WCF è di qualità beta e ancora incompleto, ma probabilmente il più sviluppato delle tecnologie W *.

Problemi correlati