SlideShare ist ein Scribd-Unternehmen logo
1 von 91
Downloaden Sie, um offline zu lesen
そろそろ使ってみませんか?
JavaScriptだけで
スマフォアプリを作る
Titanium Mobile
Shingo Mori
ConnectionWorks Inc.
ようこそ!
森 真 吾
@sngmr
ConnectionWorks Inc.
エンジニアです
Windowsインフラ構築
大規模バッチ処理運用
障害管理(お客さんにあやまる課)
.NETによる開発
Webシステム開発
スマートフォンアプリ開発
…etc
こんなことやってきました
Ti Nagoya 主催
Titanium ユーザー会
FxUG名古屋 主催(してた)
各技術コミュニティでの発表
技術本の執筆
講演・講師
St.Patricks Day Parade Nagoya 実行委員(してた)
...etc
こんなこともやってます
はじめましょう
今日の流れ
1. スマートフォンを取り巻く世の中の流れ
2. What? -- なにがある? --
3. How? -- どのようにやる? --
4. Dive into Titanium!!!
5. More Deeper!!!
6. Live Coding!
スマートフォンを取り巻く
世の中の流れ
スマートフォンの普及率
出典:Our Mobile Planet Japan by Google
出典:Our Mobile Planet Japan by Google
・・・・
今さら感漂うので
割愛!!
スマートフォンへの
リーチは必須!!
What?
Web
HTML5
アプリ
モバイル向けWebは必要
• 検索エンジン経由
• コーポレートサイト
• 広告など
• その他一般的なWeb
• HTML5 / CSS3
• どんどん使いましょう
→ やることの基本はPC版のWebサイトとほぼ同じ
HTML5 Webアプリは?
• アプリに似た動作
• プラットフォーム依存無
• PUSH通知が使えない
• カメラなども使えない
• まだ少し早い・・かな
• パフォーマンス問題
• 将来的には期待してる
→ 特にアプリ代替としてのHTML5アプリはまだ厳しい
モバイルアプリケーション!
• ストアに並ぶ
• カメラなども使える
• PUSH通知ができる
• UI/UXの表現に優れる
• (まだ)自慢できる
• ただしインストールの
ハードルは意外と高い
モバイルアプリは
モバイルコンテンツ
の大本命!!
Connect!!
提供:株式会社デンソー
提供:株式会社デンソー
Wearable!!
From http://google.com/glass
MBaaS
Mobile Backend as a Service
Key Features of Titanium Cloud Services
こんなに魅力的な
スマートフォンアプリ
開発・・・
How?
Titanium Mobile
Objective-C Java
どっちも
覚えなきゃ
いけないの?
JavaScript
with
開発元
• アメリカ・シリコンバレーに本社
• 歴史
• 2006 創業
• 2007 Series A $6.2M
• 2009 Titanium リリース
• 2010 Series B $9M
• 2011 Series C $15M
• 2012 Series C-1 $16M
使われてるの?
Zipcar
Zaim
サイボウズLive
モトクロ男子
More...
http://www.sawadaru.com/blog/?p=562
どんな機能が使える?
機能は(だいたい)全部使えます
Native User Experience
Native performance + Native UI
(tables, animations, gestures, etc).
Location-based Services
Augmented reality, geo-location,
compass, native maps
Social Sharing
Authenticated access to Facebook,
Twitter, Yahoo YQL. Native email/
address book.
Data
Access online / device data,
embedded SQL database, filesystem,
web services
Multimedia
Camera, video camera, streaming /
device audio/video
Analytics
Integrated user, session, and
custom analytics. Interactive web-
based analysis tools. Geo-analytics.
Native UI も使えます
ライバル
PhoneGap
• HTML5/CSS3で開発 → Webから入りやすい
• カメラやPUSH通知なども利用ができる
Others...
弱点
Titanium Mobile の弱点
• リアルタイム処理が要求されるもの
• 代表的なのはゲーム
• Platino Game Engine によって変わるか?
• UI デザイナーがない
• すべてコードで表現しなければならない
• プラットフォーム固有の新機能への対応がどうしても
(少し)遅れる
おいくら?
基本無料です
サーバーなんて
できない...
Titanium Cloud
Key Features of Titanium Cloud Services
おいくら?
無料枠有り
こんなに素晴らしい
Titanium Mobile
の世界...
Dive into
Titanium!!
技術レベル++
Architecture
Titanium のアーキテクチャ
iOS
JavaScript Engine
Titanium APIs Ti Modules
JavaScript Code
Android OS
JavaScript Engine
Titanium APIs Ti Modules
Native iOS app Native Android app
Bridge API Bridge API
誤解
•JavaScriptが、Nativeの
Objective-C や Java に変換される
•HTMLとCSSで実装する
Write Once
Run Anywhere..
やめた方がいい
• プラットフォームにより、固有のお作法(ユーザーが
自然と感じる振る舞い)がある
• 無理やり合わせることはできるが、ユーザーは混乱す
る
• UI部分はそれぞれのプラットフォームに合わせて作る
Plugged In
Titanium のアーキテクチャ
iOS
JavaScript Engine
Titanium APIs Ti Modules
JavaScript Code
Android OS
JavaScript Engine
Titanium APIs Ti Modules
Native iOS app Native Android app
Bridge API Bridge API
Titanium モジュール
• Titanium Mobile が提供していない機能は使えない
が・・・
• 足りない機能をNativeコードで記述し、「モジュー
ル」という形で読み込むことができる
• Open Market Placeで購入可能
• GitHubなどに多数公開されている
開発方法
Install Native SDKs
Titanium Studio
- Eclipse Based IDE
- Single Environment
Titanium CLI
with
- Command Line Interface (Node.js)...etc
More
Deeper!!
技術レベル + +
Alloy
Alloy Concept
from @ryugoo_
Before Alloy...
その気になれば
1ファイルにすべて
完結できた
Alloy View
Alloy Controller
Alloy Model
Live Coding!!
https://github.com/sngmr/WcanAlloyDemo1
Question?
ありがとう
ございました

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

非エンジニアでも安心!ノンコーディングでもココまでできる!LINE × Azure Logic Apps
非エンジニアでも安心!ノンコーディングでもココまでできる!LINE × Azure Logic Apps非エンジニアでも安心!ノンコーディングでもココまでできる!LINE × Azure Logic Apps
非エンジニアでも安心!ノンコーディングでもココまでできる!LINE × Azure Logic Apps
 
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったことあなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
 
iOSでライブラリを提供する際に気をつけたいこと
iOSでライブラリを提供する際に気をつけたいことiOSでライブラリを提供する際に気をつけたいこと
iOSでライブラリを提供する際に気をつけたいこと
 
ノンコーディングで LINE Bot 開発! Azure Logic Apps × Azure Cognitive Services ×LINE メッセー...
ノンコーディングで LINE Bot 開発! Azure Logic Apps × Azure Cognitive Services ×LINE メッセー...ノンコーディングで LINE Bot 開発! Azure Logic Apps × Azure Cognitive Services ×LINE メッセー...
ノンコーディングで LINE Bot 開発! Azure Logic Apps × Azure Cognitive Services ×LINE メッセー...
 
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layoutマルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
 
IoT Technologies
IoT TechnologiesIoT Technologies
IoT Technologies
 
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いマイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
 
IoTの原点
IoTの原点IoTの原点
IoTの原点
 
Designer's Design Talk「デザインの基礎」
Designer's Design Talk「デザインの基礎」Designer's Design Talk「デザインの基礎」
Designer's Design Talk「デザインの基礎」
 
Jslug勉強会 awsと比較するネットワーク
Jslug勉強会 awsと比較するネットワークJslug勉強会 awsと比較するネットワーク
Jslug勉強会 awsと比較するネットワーク
 
タイムカード打刻チャットボット「ごえもん」誕生話 
タイムカード打刻チャットボット「ごえもん」誕生話 タイムカード打刻チャットボット「ごえもん」誕生話 
タイムカード打刻チャットボット「ごえもん」誕生話 
 
Rosecar
RosecarRosecar
Rosecar
 
Windows10 IoT CoreとBLE
Windows10 IoT CoreとBLEWindows10 IoT CoreとBLE
Windows10 IoT CoreとBLE
 
Soracom ug
Soracom ugSoracom ug
Soracom ug
 
iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側iQONを支えるクローラーの裏側
iQONを支えるクローラーの裏側
 
自社でつくれる生産性向上ツール 必要だと思ったらすぐに作れるビジネスアプリ
自社でつくれる生産性向上ツール 必要だと思ったらすぐに作れるビジネスアプリ自社でつくれる生産性向上ツール 必要だと思ったらすぐに作れるビジネスアプリ
自社でつくれる生産性向上ツール 必要だと思ったらすぐに作れるビジネスアプリ
 
WindowsMLを使ったUWPアプリの作り方
WindowsMLを使ったUWPアプリの作り方WindowsMLを使ったUWPアプリの作り方
WindowsMLを使ったUWPアプリの作り方
 
Microsoft Flow 改め、Power Automateはじめました。
Microsoft Flow 改め、Power Automateはじめました。Microsoft Flow 改め、Power Automateはじめました。
Microsoft Flow 改め、Power Automateはじめました。
 
Cmujp21_node-webkit
Cmujp21_node-webkitCmujp21_node-webkit
Cmujp21_node-webkit
 
Data APIで広がるWebサイトのオモテとウラ
Data APIで広がるWebサイトのオモテとウラData APIで広がるWebサイトのオモテとウラ
Data APIで広がるWebサイトのオモテとウラ
 

Ähnlich wie WCAN Autumn 2013 Titaniumのおはなし

Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
Atsushi Harada
 
Titanium mobileで遊んでみた
Titanium mobileで遊んでみたTitanium mobileで遊んでみた
Titanium mobileで遊んでみた
Yutaka Tsumori
 

Ähnlich wie WCAN Autumn 2013 Titaniumのおはなし (20)

Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
 
WebRTCでアプリやIoT機器にリアルタイム・コミュニケーションを追加しよう
WebRTCでアプリやIoT機器にリアルタイム・コミュニケーションを追加しようWebRTCでアプリやIoT機器にリアルタイム・コミュニケーションを追加しよう
WebRTCでアプリやIoT機器にリアルタイム・コミュニケーションを追加しよう
 
WebRTC Rockstars Asian Tour 2017 (JP)
WebRTC Rockstars Asian Tour 2017 (JP)WebRTC Rockstars Asian Tour 2017 (JP)
WebRTC Rockstars Asian Tour 2017 (JP)
 
「あなたの身近にもIoT」地域IoTサミット2016in天草 161111
「あなたの身近にもIoT」地域IoTサミット2016in天草 161111「あなたの身近にもIoT」地域IoTサミット2016in天草 161111
「あなたの身近にもIoT」地域IoTサミット2016in天草 161111
 
[社内向け]Titanium勉強会
[社内向け]Titanium勉強会[社内向け]Titanium勉強会
[社内向け]Titanium勉強会
 
座談会資料(趣旨説明資料) 20161117
座談会資料(趣旨説明資料) 20161117座談会資料(趣旨説明資料) 20161117
座談会資料(趣旨説明資料) 20161117
 
Titanium mobileで遊んでみた
Titanium mobileで遊んでみたTitanium mobileで遊んでみた
Titanium mobileで遊んでみた
 
02172016 web rtc_conf_komasshu
02172016 web rtc_conf_komasshu02172016 web rtc_conf_komasshu
02172016 web rtc_conf_komasshu
 
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
関西Itコミュニティ集まれ!デブサミ名物コミュニティlt大会(発表版)
 
知っているつもりで実は知らない 拾う技術捨てる技術
知っているつもりで実は知らない 拾う技術捨てる技術知っているつもりで実は知らない 拾う技術捨てる技術
知っているつもりで実は知らない 拾う技術捨てる技術
 
究極のゲーム用通信プロトコルを探せ!
究極のゲーム用通信プロトコルを探せ!究極のゲーム用通信プロトコルを探せ!
究極のゲーム用通信プロトコルを探せ!
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
 
片岡Io tltシリーズネタ 2016/10/29
片岡Io tltシリーズネタ 2016/10/29片岡Io tltシリーズネタ 2016/10/29
片岡Io tltシリーズネタ 2016/10/29
 
座談会資料(趣旨説明資料) 20161022
座談会資料(趣旨説明資料) 20161022座談会資料(趣旨説明資料) 20161022
座談会資料(趣旨説明資料) 20161022
 
ちょっとした冬休み準備をしよう
ちょっとした冬休み準備をしよう ちょっとした冬休み準備をしよう
ちょっとした冬休み準備をしよう
 
座談会(趣旨説明資料) 20160417
座談会(趣旨説明資料) 20160417座談会(趣旨説明資料) 20160417
座談会(趣旨説明資料) 20160417
 
What's material design
What's material designWhat's material design
What's material design
 
iPhoneでなんちゃってWebRTC
iPhoneでなんちゃってWebRTCiPhoneでなんちゃってWebRTC
iPhoneでなんちゃってWebRTC
 
TitaniumとNode.jsは兄弟
TitaniumとNode.jsは兄弟TitaniumとNode.jsは兄弟
TitaniumとNode.jsは兄弟
 
Web屋という仕事のこれから Web動向からWeb屋に必要な技術を考えてみる
Web屋という仕事のこれから Web動向からWeb屋に必要な技術を考えてみるWeb屋という仕事のこれから Web動向からWeb屋に必要な技術を考えてみる
Web屋という仕事のこれから Web動向からWeb屋に必要な技術を考えてみる
 

Mehr von Mori Shingo

大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
Mori Shingo
 
Python東海GAEやってみた
Python東海GAEやってみたPython東海GAEやってみた
Python東海GAEやってみた
Mori Shingo
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
Mori Shingo
 
2011年12月10日 Ti.Developers.Meeting大阪 LT資料
2011年12月10日 Ti.Developers.Meeting大阪 LT資料2011年12月10日 Ti.Developers.Meeting大阪 LT資料
2011年12月10日 Ti.Developers.Meeting大阪 LT資料
Mori Shingo
 
2011年10月27日 Titanium meetup Tokyo #14 LT資料
2011年10月27日 Titanium meetup Tokyo #14 LT資料2011年10月27日 Titanium meetup Tokyo #14 LT資料
2011年10月27日 Titanium meetup Tokyo #14 LT資料
Mori Shingo
 
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
Mori Shingo
 
2011 12-10 Titanium Developer Meeting 大阪 LT
2011 12-10 Titanium Developer Meeting 大阪 LT2011 12-10 Titanium Developer Meeting 大阪 LT
2011 12-10 Titanium Developer Meeting 大阪 LT
Mori Shingo
 
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
Mori Shingo
 

Mehr von Mori Shingo (13)

大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
 
Python東海GAEやってみた
Python東海GAEやってみたPython東海GAEやってみた
Python東海GAEやってみた
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
Titanium Nagoya Chatroom vol.2 はじめの一歩
Titanium Nagoya Chatroom vol.2 はじめの一歩Titanium Nagoya Chatroom vol.2 はじめの一歩
Titanium Nagoya Chatroom vol.2 はじめの一歩
 
2012年1月30日 現代戦闘機入門 at GeekBar
2012年1月30日 現代戦闘機入門 at GeekBar2012年1月30日 現代戦闘機入門 at GeekBar
2012年1月30日 現代戦闘機入門 at GeekBar
 
2011年12月10日 Ti.Developers.Meeting大阪 LT資料
2011年12月10日 Ti.Developers.Meeting大阪 LT資料2011年12月10日 Ti.Developers.Meeting大阪 LT資料
2011年12月10日 Ti.Developers.Meeting大阪 LT資料
 
2011年10月27日 Titanium meetup Tokyo #14 LT資料
2011年10月27日 Titanium meetup Tokyo #14 LT資料2011年10月27日 Titanium meetup Tokyo #14 LT資料
2011年10月27日 Titanium meetup Tokyo #14 LT資料
 
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
2011年10月22日 iPhoneDeveloper勉強会 名古屋 #2 LT資料
 
Ti勉強会名古屋 配布用
Ti勉強会名古屋 配布用Ti勉強会名古屋 配布用
Ti勉強会名古屋 配布用
 
2011 12-10 Titanium Developer Meeting 大阪 LT
2011 12-10 Titanium Developer Meeting 大阪 LT2011 12-10 Titanium Developer Meeting 大阪 LT
2011 12-10 Titanium Developer Meeting 大阪 LT
 
Html5とう勉強会lt アニメーション無し.pptx
Html5とう勉強会lt アニメーション無し.pptxHtml5とう勉強会lt アニメーション無し.pptx
Html5とう勉強会lt アニメーション無し.pptx
 
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
2010-10-2 FxUG 名古屋勉強会 HTML5で遊んでみよう
 

WCAN Autumn 2013 Titaniumのおはなし