10
votes

Quand mono est-il un bon choix sur .net?

  • Lorsque vous utilisez Mono un bon choix sur l'utilisation de .NET pour développer un système de production?
  • Le coût initial de l'outillage est zéro, mais comment le coût total du développement à l'aide de mono se compare-t-il à utiliser .NET?
  • Quel est le sweetspot pour l'adoption de mono?

0 commentaires

5 Réponses :


15
votes

mono est .NET en cours d'exécution sur des plates-formes non microsoft.

Utilisez Mono si vous souhaitez créer une application .NET sur une plate-forme non Microsoft. Actuellement, je travaille sur une application ASP.NET MVC en cours d'exécution sur OS X via mono (souhaitez cibler un serveur basé sur Linux et tout mon développement est effectué dans OS X). Bonnes choses.

Si vous ciblez uniquement Windows, les outils Microsoft (Express Editions) sont généralement la meilleure option.

... où est Miguel lorsque vous avez besoin de lui.


5 commentaires

+1 pour lier son compte d'utilisateur. Il suffit de parcourir les réponses de Miguel de Icaza pour avoir une idée de l'état de ce que Mono peut et ne peut pas faire.


J'étais sous l'impression que Mono était de retour à .net 2.0 encore. Est-ce faux? Sinon, comment obtenez-vous ASP.NET MVC Stuff?


Mono est venu un long chemin au cours des 2 dernières années environ. Il n'a pas tout, mais vous pouvez vérifier la feuille de route pour voir où elles sont en termes de parité des fonctionnalités: Mono-Project.com/roadmap MVC semble être au moins partiellement depuis le 29 juin de cette année.


Et au cas où vous ne le saviez pas et que vous n'aviez pas compris, le lien dans cette réponse vous indique le compte Stackoverflow pour le responsable du projet Mono.


@Joel - Merci d'avoir clarifié et félicite de votre récent MVP-Ness.



3
votes

Le coût initial de l'outillage pour une application .NET est également zéro. Checkout SharpDEvelop .

Le sweetspot pour mono est en train de développer des applications pour Linux utilisant C # et un cadre familier .Net-ESQ.


4 commentaires

+1 pour le commentaire ".net-esque". Ce n'est pas 100% de la même manière que le framework Microsoft .NET, mais c'est assez proche.


Oubliez SharpDEvelop, consultez Visual Studio Express.


+1 pour vs express! Je ne peux pas croire que je sauvais sur celui-ci quand j'ai posté ceci ...


... pas qu'il y ait quelque chose qui ne va pas avec SharpDEvelop, mais VS Express est également gratuit.



1
votes

C'est intéressant si vous devez développer un logiciel qui fonctionne dans de nombreux plafonds (Linux, Mac, Windows) à l'aide de l'écosystème .NET.

Selon leur site officiel:

mono est une plate-forme logicielle conçue permettre aux développeurs de créer facilement plate-forme transversale applications. C'est un Mise en œuvre open source de Microsoft .NET Framework basé sur les normes de l'ECMA pour C # et la Runtime de langue commune. Nous pensons que En embrassant un succès, Plate-forme logicielle standardisée, nous pouvons réduire les obstacles à la production grande Applications pour Linux.

Leur Site officiel a beaucoup d'informations sur les informations utiles de l'IDE et d'autres informations utiles sur le projet.


0 commentaires

4
votes

Mono Vous exécutez des applications .NET sur Linux et Mac OS X, tandis que Microsoft Main Mise en œuvre est liée à Windows.

donc dans le cas de:

"Qu'est-ce qui vaut mieux pour écrire des applications multiples plate-forme?"

La réponse est mono, et je ne pense pas que c'est même une réponse subjective.

Mono prend en charge une inspiration surprenante de .NET jusqu'à 3.5. Pratiquement tout le BCL est dans, et vous pouvez faire ASP.NET MVC, LINQ et WINFORMS. La version du coffre de Mono prend également en charge les fonctionnalités 4.0, de sorte qu'elles ne sont donc pas vraiment loin derrière. :)

Les choses notables qui sont derrière sont les différentes technologies W *. WPF est essentiellement inexistant. WF, est la qualité pré-alpha. WCF est la qualité bêta et toujours incomplète, mais probablement le plus développé des technologies W *.


0 commentaires

5
votes

Mono peut faire quelques choses que la MS.NET ne peut ou ne sera pas:

  • courir sur Linux, Mac et d'autres (y compris iPhone maintenant)
  • statique link the cadre DLLS, pour un scénario de déploiement de dépendance zéro.

    D'autre part, .NET fait certaines choses que mono ne fait pas ou ne fait pas encore ne pas faire facilement:

    • Dernière version du cadre
    • hors de la boîte Visual Studio Support
    • WPF, wcf, wf, etc
    • Il y a quelques choses à Mono que travaille , mais la performance n'est pas tout à fait au même niveau que .NET

1 commentaires

Il existe de nombreuses bibliothèques disponibles en mono qui ne sont pas expédiées avec .NET. Le replu est un bon exemple de cela. De plus, l'espace de noms mono.simd (qui peut être utilisé en mono pour améliorer considérablement les performances des opérations de vecteurs), finalement, les performances sont comparables entre les deux plates-formes, cela dépend simplement de ce que vous faites.