Domanda

Voglio passare a Mono da .Net (più Visual Studio a qualunque IDE in Mono). Sarà davvero difficile?

Quali sono i problemi che dovrei affrontare?

Grazie

È stato utile?

Soluzione

Come altri hanno sottolineato, presumo che ciò che intendevi fosse passare dal framework .Net a Mono. Detto questo, la quantità di difficoltà che dovrai affrontare dipende molto dal tipo di codice che stai cercando di spostare e da quali parti del framework usi. Ad esempio, se il tuo codice è disseminato di chiamate P / Invoke, avrai un momento difficile. Se è un semplice codice .Net probabilmente avrai relativamente navigazione fluida.

Avrai voglia di trascorrere un po 'di tempo con il Mono Migration Analyzer (MoMA). Incontrerai cose che non vengono catturate dallo strumento, ma catturerà molte delle basi e ti lascerà libero di affrontare cose più grandi.

Altri suggerimenti

Credo che Mono non abbia del tutto raggiunto tutte le librerie .Net 3.5 e quindi non ne abbia implementazioni parziali o parziali. Mono rimarrà sempre un po 'indietro rispetto a Microsoft, ma è un risultato fantastico e un lavoro brillante.

dai un'occhiata alla Mono Roadmap

Solo per chiarire, puoi usare visual-studio per compilare in Windows ed eseguire le tue app in Linux. Ci sono molte chiacchiere su questo o quello che non viene implementato in mono, ma sinceramente non ho trovato nulla che manca.

Ora, se vuoi eseguire il debug in Linux (e alla fine dovrai farlo), allora MonoDevelop è una buona opzione, ma ho avuto problemi ad avviare su RedHat, quindi dipende davvero dal tuo sistema Linux di destinazione .

Penso che tu stia facendo una confusione qui.

Visual Studio è un IDE, mentre Mono è un'implementazione del CLR .net.

Suppongo che ciò che vuoi davvero fare sia passare a SharpDevelop o un altro IDE.

Probabilmente è difficile come passare da Windows a Linux. È un ambiente diverso e il passaggio implica sempre un periodo in cui alcune cose si sentiranno leggermente fuori posto. Lo stesso vale per .Net - > Interruttore mono. La prima e più ovvia differenza sarà l'IDE. Per quanto MonoDevelop sia (o è diventato di recente) non è VS. Non ha tante funzionalità (soprattutto Windows Form o ASP Designer) e la qualità complessiva non è probabilmente così elevata, ma sicuramente è sufficiente per iniziare. Inoltre, non dovremmo dimenticare le cose che Mono ha e .Net non ha gradito il compilatore interattivo C # o la libertà di essere coinvolto nella creazione della piattaforma. Tutto considerato, il passaggio a Mono richiederà un certo sforzo, ma ne vale la pena.

Visual Studio è un IDE migliore rispetto a MonoDevelop, in cui automatizza molte cose facendo sembrare MD solo un editor (alcuni simili). Puoi anche usare VS e target Mono che è un ottimo opion. Con i sistemi operativi virtuali, è un'opzione abbastanza ben supportata su qualsiasi supporto del sistema operativo host di Mono.

Mono è vicino, ma sarà sempre un po 'indietro rispetto a .NET Framework. Mono ha anche le proprie API migliori di qualsiasi altra cosa nel core .NET. Ma fondamentalmente .NET == Mono a livello binario non esegue alcune API mancanti o extra.

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