Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Alloy - Introduction of Titanium MVC Framework
Search
Ryutaro Miyashita
October 31, 2012
Technology
1.4k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Alloy - Introduction of Titanium MVC Framework
Titanium Mobile "MokuMoku" Meetup #2 Lighting Talk (2012/10/31)
Ryutaro Miyashita
October 31, 2012
More Decks by Ryutaro Miyashita
See All by Ryutaro Miyashita
Java で書かれた Android アプリを Kotlin で書き直すまでの話 / Talk of rewrite Android app for Java to Kotlin
ryugoo
0
1.9k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
0
470
チーム開発と Android アプリの構成
ryugoo
5
1.3k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.8k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.8k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
800
Transition at RxJava 1.x to 2.x
ryugoo
0
580
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
570
Android エンジニアになって 2 年の学び
ryugoo
1
2.8k
Other Decks in Technology
See All in Technology
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
1
1k
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
140
Guerilla InnerSource in enterprises, during the AI hype
onenashev
PRO
0
150
Sigmaユーザーのための有用リソース一挙公開 & Sigmaで使えるMCP #sigma_ucj /useful-resources-for-sigma-computing-users-and-mcps-with-sigma
shinyaa31
0
150
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
220
AI時代におけるプロダクト横断勉強会の設計
zozotech
PRO
0
170
Beyond the Hype: Practical AI for Your Oracle Database with MCP
thatjeffsmith
1
280
SQL文一行も書けない人事がCortexもろもろを使って人事業務を楽にしてみる
ponponmikankan
0
110
GuardDuty 検知対応を DevOps Agent で効率化しようとしている話 / GuardDuty Investigations with DevOps Agent
masahirokawahara
1
330
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
0
100
module Synths; end
asonas
1
120
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
4
890
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
250
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
The Curse of the Amulet
leimatthew05
2
14k
Building Adaptive Systems
keathley
44
3.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Accessibility Awareness
sabderemane
1
200
For a Future-Friendly Web
brad_frost
183
10k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Darren the Foodie - Storyboard
khoart
PRO
3
3.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Being A Developer After 40
akosma
91
590k
Transcript
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP "MMPZ "MMPZ Titanium MVC Framework Introduction of
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP éĕđ éĕđ Ryutaro Miyashita ryugoo_ ryutaro.miyashita
imthinker.net 5JUBOJVN.PCJMFϢʔβʔձॻه
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ˇɬ ˇɬ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP Üĕćð Üĕćð JavaScript.call(Titanium API) Called “Titanium Classic”
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ÜĕÔĒ ÜĕÔĒ Alloy(JavaScript.call(Titanium API)) JavaScript.call(Titanium API) +
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ËĖÍ ËĖÍ ϩδοΫͱݟͨͱσʔλॲཧͷ ίʔυ͕ΰνϟΰνϟͯͯ͠ΠϠΠϠ ϕετϓϥΫςΟεͷܹ͍͠ҠΓมΘΓ 5JJODMVEFͩͬͨΓ$PNNPO+4ͩͬͨΓʜ+44 ͋Γ·͚ͨͬ͠ ͏;;ɻ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP "QQDFMFSBUPS 0DJBM.7$ 'SBNFXPSL "QQDFMFSBUPS 0DJBM.7$ 'SBNFXPSL ËĖÍ ËĖÍ
ϩδοΫ $ JavaScript ݟͨ 7 XML + TSS σʔλॲཧ . Backbone.js େৎ"QQDFMFSBUPSͷ.7$ϑϨʔϜϫʔΫͩΑ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ʔèԨŒŤ¦ ʔèԨŒŤ¦ ڞ௨ཁૉ·ͱΊͨΓ*%$MBTTׂΓͯͨΓ "Window": { backgroundColor: "#FFFFFF" }
<Alloy> <Window> <Label id="a" /> </Window> </Alloy> ݟͨ9.-Ͱ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ŬķłĮIJŲŇŬ¦Ũ¦ ŬķłĮIJŲŇŬ¦Ũ¦ ݟ͍ͨͬͨ͡ΓɺΠϕϯτॲཧ͠·͢ $.index.on("open", function (e) { $.a.title
= "Window is open!"; }); τοϓϨϕϧ6* ˣ Πϕϯτϋϯυϥ ˣ *% ˢ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ņ¦ľ͎ՓšņŪ ņ¦ľ͎ՓšņŪ σʔλϕʔεͱ͔1SPQFSUJFTͷ͓ࣄ var app = Alloy.createModel("user"); app.set({
username: "Foobar", password: "Hoge" }); app.get("username"); // -> Foobar app.save(); VTFSϞσϧΛΦʔϓϯ ˢ ˡϞσϧʹσʔλΛηοτ ˡอଘ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP "QQT%FNP "QQT%FNP վΊͯ(JU)VCͰίʔυΛެ։༧ఆͰ͢
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP òÏ˶Ï òÏ˶Ï Titanium Studio 3.0 (for User)ɹ
৽نϓϩδΣΫτͷςϯϓϨʔτ͔Β Node.js + npm (for ਓபPro)ɹ TVEPOQNJOTUBMMHUJUBOJVN TVEPOQNJOTUBMMHBMMPZ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ͜Μͳײ͡
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ˶ÑĔ ˶ÑĔ ˕ TSS͕ͱͬͯศར(´∀ʆ) ˚ ͪΐͬͱ͚ͩ໘͍͘͞(´Дʆ) ʷ Backbone.jsͷࣝඞཁ(‘A`)
ίʔσΟϯάϧʔϧͷ౷ҰԽͱ͍͏ϙΠϯτ ݸਓͷײͰ͢ɻޮՌΛอূ͢ΔͷͰ͋Γ·ͤΜɻ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP íćēø íćēø औѻʹ׳Ε͕ඞཁͰ͢ ׳ΕΔͱͦͦ͜͜ΩϨΠͳߏʹͳΓ·͢ Adobe Flex Ϣʔβऔ͖͍͔ͬͭ͢ ࠓ·Ͱͷํ๏͕ඇਪનʹͳΔΘ͚Ͱ͋Γ·ͤΜ
͔ͩΒօͰਓபʹͳΖ͏ ใڞ༗ϑΟʔυόοΫ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP ͰӰøòÜ ͰӰøòÜ (JU)VCͷ3FBENFඞಡ ϦϙδτϦʹςετ͋ΔΑ IUUQTHJUIVCDPNBQQDFMFSBUPSBMMPZ 2VJDL4UBSUඞಡ IUUQQSPKFDUTBQQDFMFSBUPSDPNBMMPZEPDT"MMPZCPPUTUSBQ #BDLCPOFKT
#BDLCPOF&WFOU#BDLCPOF.PEFM IUUQCBDLCPOFKTPSH ެࣜυΩϡϝϯτΛΕͪΌ͍͚ͳ͍ IUUQEPDTBQQDFMFSBUPSDPNUJUBOJVNBQJ"MMPZ
5JUBOJVN4UVEZ.FFUJOH5PLZP 5JUBOJVN4UVEZ.FFUJOH5PLZP $0%&4530/( $0%&4530/(