BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Mono 3.0 リリース - C# 5 Async サポート,Eval API と SGen GC の改善

Mono 3.0 リリース - C# 5 Async サポート,Eval API と SGen GC の改善

原文(投稿日:2012/10/23)へのリンク

 

Miguel De Icaza 氏が Mono 3.0 のリリースを発表した。いくつかの改善と .NET 4.5 互換性を備える。

Mono 3.0 は,最新の安定リリースである 2.10 のアップデートにあたる。今年初めの 2.11x プレビューリリースにあった新機能もいくつか含んでいる。主な変更点は次のとおりだ。

  • C# Async コンパイラ
  • Microsoft の持つオープンソースソフトウェアを統合 - ASP.NET MVC4,ASP.NET WebPages,Entity Framework,Razor,System.Json
  • SGen Garbage Collector がデフォルト GC になった。マルチプロセッサをより活用することで,パフォーマンスとスケール性が向上している。SGen は Windows の他,MIPS にも移植されている。
  • Eval() API で式のみでなく,型全体をコンパイルできるようになった。コンパイラ・アズ・ア・サービスもグローバルコンパイラではなくなり,複数のスコープでインスタンス化が可能になっている。
  • ThreadLocal<T> や List<T>など,いくつかの型をランタイム最適化。
  • パフォーマンスチューニング用に,コンパイラに対してインラインコードを強制する新しい属性を追加。
  • MacOS 上で 64bit バイナリとしてコンパイル可能 (ただし提供されるのは 32bit バイナリのみ)。
  • USB 機器接続のパフォーマンスの向上したソフトウェアデバッガ
  • OS X 版 Mono に F# 3.0 をバンドル。
  • SQLite の実装で iOS の暗号 API がサポートされた。コンフィギュレーションによるスレッドモデルの変更も可能。

より詳細な変更内容は リリースノートで確認できる。

Miguel De Icaza 氏によれば,これらの改善点はすべて,MonoTouch と Mono For Android の両方に対して順次提供されるということだ。氏はさらに,Mono の開発に関してリリースの早期化を目指していると語り,マスタを可能な限り安定に保つため,重要な開発については別のブランチで実施後にマスターブランチにマージする方法を採用することを示唆した。

Mono を用いた開発で直面する一般的な問題のひとつに,クロスプラットフォーム UI に関する手段の欠如がある。これについて Mono チームでは今のところ,共通的なコア機能のセット上に各プラットフォーム用のネイティブなインターフェースを構築する,という方法を推奨している。氏が提案したのは,GTK#Qyoto で C# にバインドした Qt,あるいは新しいツールキットである Xwt などを活用することだ。

この記事の執筆時点で公開されているのは OSX バイナリのみである点にも注意が必要だ。その他のプラットフォーム用バイナリはコミュニティからはまだ提供されていないが,更新ソースを使用して自身でビルドすることは可能である。

 

この記事に星をつける

おすすめ度
スタイル

BT