Windows以外の環境でC#アプリケーション開発

11,666 views

Published on

 Windows以外の環境でC#のアプリケーションを開発したり、動かすことに関するいくつかの話題を取り上げる。

Published in: Technology

Windows以外の環境でC#アプリケーション開発

  1. 1. Windows以外の環境で C#アプリケーション開発 2013/06/22 つくばC#勉強会 情報メディア創成学類 HALTMAN
  2. 2. 自己紹介 ▸ 本名 今西麻人 (@c_plus_c) ▸ 所属 筑波大学 情報メディア創成学類 3年生 ▸ C#歴 1年ぐらいのゆるふわ勢 ▸ 主にやってること ● ゲーム開発 ● CG制作 ● 言語とかツール適当にかじったりとか ▸ その他 ● 明石高専 電気情報工学科からの編入 ● 最近アルバイトが決まりました。
  3. 3. 一般人からみたC# ▸ Windows専用の言語 ▸ Windowsでしか使えない ▸ あんなものJavaと一緒でしょ? ▸ アレ使う奴はMicrosoftの犬 よってC#を学ぶ価値はなし!
  4. 4. 完ご清聴ありがとうございました   
  5. 5.   / ̄ ̄ ̄ ̄ ̄ ミ    /   ,――――-ミ   /  /  /   \ |   |  /   ,(・) (・) |    (6       つ  |    |      ___  |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   |      /__/ /  < なわけねぇだろ!  /|         /\   \________   
  6. 6. ▸ Windows専用の言語 ▸ Windowsでしか使えない →Windows以外でも使えます  CLIとともにすでに標準化されています。 ● ECMA-334 (Community Promise適用済み) ● ECMA-335 (Community Promise適用済み) ● ISO/IEC 23270:2006 ● ISO/IEC 23271:2003 ● JIS X 3015 ● JIS X 3016
  7. 7. ではどうやって開発環境を用意するか Windows以外で動作する C#の処理系がある! ▸ →Monoとかが非常に有名です
  8. 8. Monoとは  .NET Frameworkのオープンソース実装(Ecma標準)  C#、VB、CLIに対応したコンパイラが用意されている  Mac OS XとUNIX系 OSではランタイム上でプログラムを動 かす  現在は米Xamarin社がプロジェクトを管理中  GPL・LGPL・MIT・Microsoft Permissive License・Apache2 に準拠しており商用開発には不向き
  9. 9. 商用アプリ 何とかして 作れないの?   
  10. 10. 作れます それもネイティブアプリとして
  11. 11.  商用利用可能なネイティブ開発ツール  Xamarin社から以下のプラットフォームに対応した ネイティブ開発ツールが提供されている ● Mac(Mac OS Xからのみ利用可能) ● Android ● iOS  WindowsとMac OS Xから利用可能  基本的にはIDEと組み合わせて使う  有償、無償プランがある(後者は容量制限あり)  商用アプリ開発にも対応したライセンスにて提供 !?
  12. 12.  WindowsからiOSアプリを作る…!?  実際にはMac環境とWindows環境両方が必要 主な開発手順(ざっくり) 1.WindowsとMac OS Xにそれぞれ開発に必要なツール をインストールする 2.WindowsとMac OS Xそれぞれのマシンをネットワーク で繋ぐ(仮想環境でも可能) 3.Windows上にてVisual Studioから作業できる  よく分からんけど、Visual Studioの機能とか環境をフル に活かした開発ができるのが利点らしいです(公式情報)
  13. 13. IDE   
  14. 14. UNIX系OSの場合 - MonoDevelop  Monoプロジェクトからリリースされた開発環境  Monoと連携する  フリーオープンソースソフトウェア
  15. 15.  Windows, Mac OS Xの場合 - Xamarin Studio  米Xamarin社が開発したWindows、Mac OS X用のIDE  Windows・Mac OS X向けMonoDevelopの後継版  フリーではあるがソースは非公開  MonoとかXamarin.Macとかと連携可能
  16. 16.  その他使える  ライブラリとか  
  17. 17. GUI実装ライブラリ  GTK# ● GTK+、GNOMEライブラリのC#+.NET Framework向 けラッピング ● LGPLに準拠 ● MonoDevelopとXamarin Studioに標準で付いている ● Glade#やSteticなどのGUIデザイナがある  Qyoto ● QtのC#+.NET Framework向けラッピング ● LGPLに準拠 ● 本家のQtでサポートされている機能は殆ど使用出来る
  18. 18. ゲーム開発用ライブラリ  MonoGame ● Microsoft XNA 4 Frameworkのオープンソース実装プ ロジェクト ● Microsoft Public Licenseに準拠 ● iOS, Android, Mac, Windows, Linux, Windows phoneなど多くのプラットフォームで動くゲームが作成 可能
  19. 19. メディア処理ライブラリ  OpenCVSharp ● OpenCVのC#+.NET Framework向けラッピング ● LGPLライセンスに準拠 ● Mac, Windows, Linuxなどで動作する  OpenTK ● OpenGL, OpenAL, OpenCLのC#+.NET Framework 向けラッピング ● MITライセンスに準拠 ● Mac, Windows, Linuxなどで動作する
  20. 20. まとめ  Windows以外の環境でもC#を使った開発はできる  商用、ネイティブ、組み込み開発だと金がかかる ● アプリの容量制限を解くには、$299払う必要があるらしい  しかし、Monoを使って非商用の開発をする分には無料  開発環境やライブラリも案外充実しているため、割と不自由 はしない。
  21. 21.  今度こそ 完ご清聴ありがとうございました   

×