C#でiPhone & Androidアプリ!
-
Upload
hiroshi-kikuchi -
Category
Technology
-
view
1.244 -
download
3
description
Transcript of C#でiPhone & Androidアプリ!
![Page 1: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/1.jpg)
C#でiPhone & Androidアプリ!Microsoft Student Partners菊池 紘 (@kikuchy)
![Page 2: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/2.jpg)
自己紹介Self introduction
![Page 3: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/3.jpg)
自己紹介菊池 紘( @kikuchy ) きくっちー or きくりん
Microsoft Student Partners フェロー 1 期 メンバー
電気通信大学 修士2年
持病 新しい言語とか SDK とか試してみたくなる病
好きなプログラミング言語 関数が第一級オブジェクトかそれに準ずる扱いになっている言語
ブログhttp://kikuchy.hatenablog.com/
![Page 4: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/4.jpg)
対象• iPhone / Android のアプリ開発を始めてみたい方• けれど Objective-C とか面倒くさそうと思っている方• 何か面白いプログラミング言語を探している方
![Page 5: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/5.jpg)
ところでIntroduction
![Page 6: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/6.jpg)
これをご存知でしょうか
![Page 7: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/7.jpg)
![Page 8: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/8.jpg)
おっと間違い
![Page 9: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/9.jpg)
C#
![Page 10: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/10.jpg)
C# とは• プログラミング言語の一つ• 初心者にもわかりやすい構文・熟練者にも便利な構文• ECMA と ISO で標準化された言語であるため、
誰でも処理系を作れる• 非常に広い使用用途
![Page 11: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/11.jpg)
C# の使い道
Windows Store Application
Windows Phone
動的なWeb サイト
従来のWindowsアプリケーション
http://windows.microsoft.com/ja-jp/windows-8/http://www.nokia.com/gb-en/phones/phone/lumia800/http://www.asp.net/http://www.getpaint.net/http://www.jp.playstation.com/psvita/hardware/pch1000za01.htmlhttp://ja.wikipedia.org/wiki/ ファイル :NewTux.svghttp://www.apple.com/jp/iphone/http://www.google.co.jp/nexus/7/
PlayStation Mobile
(U|L)nixアプリケーション
iOSアプリケーション
Androidアプリケーション
![Page 12: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/12.jpg)
Xamarin
![Page 13: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/13.jpg)
![Page 14: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/14.jpg)
Xamarin• Xamarin 社が提供する統合開発環境• C# で、 iOS アプリ・ Android アプリ・ Mac アプリを開発で
きる• 本来は
iOS, Mac アプリ開発には Objective-C を、Android アプリ開発には Java を使う必要がある
• C# の優れた言語機能を使って開発ができる ←重要
![Page 15: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/15.jpg)
C# の優れた言語機能
![Page 16: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/16.jpg)
Partial Class
![Page 17: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/17.jpg)
HogeClass_Net.cs
HogeClass_File.cs
http://surviveplus.net/products/windowsicons/?name=creatorseries
HogeClass・ネットワーク関連の機能・ローカルのファイル操作機能
![Page 18: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/18.jpg)
async / await
![Page 19: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/19.jpg)
→
同期処理のように書いて、非同期処理を実行できる
![Page 20: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/20.jpg)
C# の優れた所• partial class
( 1 つのクラスを複数のファイルに分けて書くことができる)
• async / await (非常に簡単に書ける非同期処理)• 型推論 (型名を指定しなくても良い)• プロパティ自動実装 ( getter ・ setter が一行で書ける)• LINQ ( SQL のようなクエリで、条件に合うオブジェクト
を探せる)
![Page 21: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/21.jpg)
( ^o^) C# ってすごい!!( ˘⊖˘) 。 o( 待てよ、綺麗事ばかり並べているけれど 本当に C# で iOS / Android アプリ書けるの? )|DEMO| ┗(☋ ` )┓ 三
![Page 22: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/22.jpg)
DemoXamarin Studio, Xamarin.iOS & Xamarin.Android
![Page 23: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/23.jpg)
C# でカワイイは iOS / Android アプリは作れ
る!!\\ \\٩( ‘ω’ )و // //
![Page 24: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/24.jpg)
気になる事• 一つのコードで iOS / Android 両対応できるのか?• 完全に Windows Phone などと同じ感覚で開発できるの
か?• iOS 開発をするには Mac が必要?
![Page 25: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/25.jpg)
一つのコードでiOS / Android 両対応できるのか?
![Page 26: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/26.jpg)
できません
![Page 27: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/27.jpg)
Write once, run anywhere は無理• Windows Store Application と Windows Phone アプリ
を一つのコードから作ることができないのと同じ。• 各プラットフォームのコードを C# で書けるだけ、という
感じではある。
• 各プラットフォームに合わせた UX を提供することを考えるべき。
• MVC の Model 部分のコードなど、一部は共有可能。
• どうしても Write once, run anywhere がしたいなら、Titanium Mobile を使う、という手があります。
![Page 28: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/28.jpg)
Model
Controller
View
Controller
View
Controller
View
![Page 29: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/29.jpg)
完全に Windows Phone などと同じ感覚で開発できるのか?
![Page 30: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/30.jpg)
それなりに
![Page 31: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/31.jpg)
Xamarin Studio を使ってみた所感• Android• Visual Studio を使って開発しているのとほとんど同じ感覚。• コード補完も優秀。 Visual Studio には劣るか?• ソリューションごとの設定画面も Visual Studio ライクでわかり
やすい。• UI エディタも Visual Studio のフォームエディタのような使い心
地。Eclipse を使うより楽な印象。
• iOS• コード補完は Xcode より優秀な印象。• UI 編集に Interface Builder を使わなくてはいけないので、
iOS アプリ関係の開発ツールの使い方は覚えなくてはいけない。
![Page 32: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/32.jpg)
iOS 開発をするには Mac が必要?
![Page 33: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/33.jpg)
必要です
![Page 34: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/34.jpg)
iOS アプリ開発に Mac が必要な理由• iOS 用のコンパイラが、 Apple が提供しているものしかな
いから。• Xcode や iOS エミュレーターなど開発ツールが Mac で動
くものしか提供されていないから。
• Android は Windows + Visual Studio でも開発できるそうです。(VS で開発するライセンスは有料 )
• Windows + Visual Studio でコードを書き、リモートの Mac でビルド、ということもできるようです。
![Page 35: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/35.jpg)
忘れちゃいけない事
![Page 36: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/36.jpg)
ユーザーの事を第一に考えて!
![Page 37: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/37.jpg)
それではみなさま、良き Web 開発ライフを!!
![Page 38: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/38.jpg)
アンケートのお願いEnquœeˆte
![Page 39: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/39.jpg)
求む、フィードバック• 現在、「どれだけ上手にプレゼンテーションができたか」
を調査中です。
• 以下の URL のアンケートに答えていただけますと幸いです。
http://bit.ly/130907csharp
![Page 40: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/40.jpg)
質問コーナーDiscussion
↓アンケートhttp://bit.ly/130907csharp
![Page 41: C#でiPhone & Androidアプリ!](https://reader035.fdocuments.net/reader035/viewer/2022062514/558c46afd8b42acf348b46db/html5/thumbnails/41.jpg)
Thank you !Facebook→「菊池紘」で検索Twitter → @kikuchy