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
Titanium ならここまでできる !! Serverside non-programing...
Search
astronaughts
August 13, 2012
Technology
1
380
Titanium ならここまでできる !! Serverside non-programing で作る お手軽 Social Application
「サンプルアプリでデモ」の部分の内容はありません。
astronaughts
August 13, 2012
Tweet
Share
More Decks by astronaughts
See All by astronaughts
Sublime Text の プラグイン開発の方法
astronaughts
0
520
Package と Theme の作り方と PackageControl 登録までの道のり
astronaughts
0
360
Sublime Text を 俺色に染める方法
astronaughts
2
910
GRUNT のあんなこといいなできたらいいな
astronaughts
14
2.3k
Re:Development of ChatWork Apps
astronaughts
1
2.1k
Rapid Prototyping by TiShadow
astronaughts
4
2.8k
Sublime Text 2 for PHP Development
astronaughts
0
250
Fathm Like ScrollableView Implementaion for TItanium mobile
astronaughts
3
3.8k
Other Decks in Technology
See All in Technology
M5製品で作るポン置きセルラー対応カメラ
sayacom
0
160
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
510
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
400
自動テストのコストと向き合ってみた
qa
0
190
Findy Team+のSOC2取得までの道のり
rvirus0817
0
370
組織観点からIAM Identity CenterとIAMの設計を考える
nrinetcom
PRO
1
190
バイブコーディングと継続的デプロイメント
nwiizo
2
440
LLM時代にデータエンジニアの役割はどう変わるか?
ikkimiyazaki
4
860
20250929_QaaS_vol20
mura_shin
0
130
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
2
280
社内報はAIにやらせよう / Let AI handle the company newsletter
saka2jp
6
790
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
950
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
224
10k
Code Review Best Practice
trishagee
72
19k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
KATA
mclloyd
32
15k
Statistics for Hackers
jakevdp
799
220k
RailsConf 2023
tenderlove
30
1.2k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Transcript
Ti.Developers.meeting vol.5 in Kyoto @astronaughts TitaniumͳΒ͜͜·ͰͰ͖Δ Serverside non-programingͰ࡞Δ ͓खܰSocial Application
20128݄13݄༵
Profile Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Profile ͏͑ͷ·͞ͻΖ astronaughts t i am Developer Ti.Developers.meeting vol.5 in
Kyoto 20128݄13݄༵
Profile ͏͑ͷ·͞ͻΖ ࣄͰओʹ WebService ͷ։ൃʢPython / Djangoʣ Titanium ࠓͷͱ͜Ζझຯɺࣾ Project
Ͱ͍͍ͨ Titanium ྺ 1 ऑ Titanium ͰϦϦʔεͨ͠ΞϓϦ 0 Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Titanium ͰϦϦʔεͨ͠ΞϓϦ 0 Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
0 Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
(´ɾωɾ`) Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Agenda Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Agenda - ACS Ͱ Sreverside non-programming Ͱ։ൃ - SingOn ͷ۩ମతͳ։ൃखॱ
- ACS ͬͯͯݱ࣌ͷϝϦοτʗσϝϦοτ - ͓·͚ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Agenda - ACS Ͱ Sreverside non-programming Ͱ։ൃ - αϯϓϧΞϓϦͰσϞ -
ACS ͬͯͯݱ࣌ͷϝϦοτʗσϝϦοτ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ͱʁ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ͱʁ Appcelerator ͕ఏڙ͢Δ Titanium ͷͨΊͷ BaaS Titanium SDK 2.0
͔Βొ API ͕ॆ࣮͍ͯͯ͠ Titanium Ҏ֎͔Βར༻Մೳ Web ্Ͱσʔλͷཧ͕ग़དྷΔ ͔͠ҰఆྔͷΞΫηεͳΒແྉɻஅવ͓ಘʂ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
BaaS ͱʁ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
BaaS ͱʁ ຊདྷɺϞόΠϧΞϓϦ։ൃʹඞཁͩͬͨόοΫΤϯυ෦Λ ఏڙͯ͘͠ΕΔ৽͍͠αʔϏε - Ϣʔβʔཧ - σʔλετΞ - ֤छιʔγϟϧαʔϏεͱͷ࿈ܞ
- ϩέʔγϣϯ࿈ܞ ఏڙ͞ΕΔओͳػೳ ͭ·ΓίϨΛར༻͢ΕαʔόʔαΠυͷ։ൃෆཁʂʁ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS Ͱग़དྷΔ͜ͱ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
۩ମతʹɾɾɾ http://www.appcelerator.com/cloud Ti.Developers.meeting vol.5 in Kyoto ACS Ͱग़དྷΔ͜ͱ 20128݄13݄༵
API ͷछྨ Ti.Developers.meeting vol.5 in Kyoto ACS Ͱग़དྷΔ͜ͱ - Ϣʔβʔ
- ࣸਅσʔλ - Push σʔλ - ϝʔϧςϯϓϨʔτ - ΧελϜΦϒδΣΫτʢJSONʣ - Key - Value Tier 1 APIs - Ґஔใ - Statusɹ - Postɹ - ... ͦͷଞ͍Ζ͍Ζ Tier 2 APIs ଟ͍ͷͰলུɺTier 1 APIs Ͱ͍͍ͩͨ OK ͪΌ͏ʁ 20128݄13݄༵
ؾʹͳΔແྉ Ti.Developers.meeting vol.5 in Kyoto ACS Ͱग़དྷΔ͜ͱ ͍ͮΕ͔Λ͑Δͱ STOP ...
ʢʈpʈʣ 250,000 Tier 1 APIs calls 250,000 Tier 2 APIs calls 5 GB strage Quotas are per month 20128݄13݄༵
͑ͦ͏ͳ߹ɺՃͰΛߪೖͰ͖Δ Ti.Developers.meeting vol.5 in Kyoto ACS Ͱग़དྷΔ͜ͱ ίϨͳΒ͓খݣ͍ͰͳΜͱ͔ͳΔʂʘʢʈ0ʈʣʗ + 1,000,000
Tier 1 APIs calls / $10 + 500,000 Tier 2 APIs calls / $10 + 20 GB strage / $5 Quotas are per month 20128݄13݄༵
ACS ΛͬͯΈΔ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ΛͬͯΈΔ Ti.Developers.meeting vol.5 in Kyoto Titanium Studio ͔Β৽ن Project
࡞࣌ ͜ͷը໘Ͱ༗ޮʗແޮΛઃఆͰ͖Δ ͜Ε͚ͩ ޙී௨ʹ։ൃ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ Cloud = require('ti.cloud');
// ϞδϡʔϧΛಡΈࠐΉ ϞδϡʔϧͷಡΈࠐΈ ࣮ ACS ༗ޮԽͨ࣌͠Ͱɺ tiapp.xml ʹ ti.cloud ͕ࣗಈతʹಡΈࠐ·Ε͍ͯΔ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ Cloud.Users.login(function(res){ ɹɹ... });ɹ
Cloud.Users.logout(function(res){ ɹɹ... });ɹ API ͷར༻ ... ϩάΠϯʗϩάΞτ ACS ͷ֤ API ΞΫηε͢Δʹ·ͣϩάΠϯ͢Δඞཁ͕͋Δ ※ Ұ෦ೝূͳͯ͘ΞΫηεՄೳͳͷ͋Δ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ var params =
{ɹ ɹɹclassname: ‘favorite_players’, ɹɹwhere: { user_id: ‘4ff3e0e10020441805003a61’ }, };ɹ Cloud.Objects.query(params, function(res){ɹ ɹɹif (res.success) ɹɹɹɹTi.API.info(res.favorite_players); }); API ͷར༻ ... ΧελϜΦϒδΣΫτͷऔಘ 20128݄13݄༵
Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ { success: 1, error:
0, meta: { code: 200, method_name: 'queryCustomObjects', page: 2, per_page: 10, status: 'ok', total_pages: 2, total_results: 12, }, favorite_players: [ { id: '4feaf1e70020447dd304cfd0', name: 'Randy W Bass', number: 44, created_at: '2012-06-27T11:43:35+0000', updated_at: '2012-06-27T11:43:35+0000', user: { ... }, }, API ͷར༻ ... ΧελϜΦϒδΣΫτͷऔಘ݁Ռ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ Cloud.Objects.query Ͱ where
Ҏ֎ʹࢦఆͰ͖Δ݅ - ݁Ռͷιʔτ ... order order: ‘created_at’ // ࡞ॱ - ϖʔδ ... page page: 2 // 2 ϖʔδΛऔಘ - 1 ϖʔδ͋ͨΓͷऔಘ݅ ... per_page per_page: 15 // 1 ϖʔδ͋ͨΓσʔλΛ 15 ݅ͣͭऔಘ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ var params =
{ɹ ɹɹclassname: ‘favorite_players’, ɹɹfields: { name: ‘Randy W Bass’, number: 44 }, };ɹ Cloud.Objects.create(params, function(res){ɹ ɹɹif (res.success) ɹɹɹɹTi.API.info(res.favorite_players); }); API ͷར༻ ... ΧελϜΦϒδΣΫτͷ৽نొ 20128݄13݄༵
ιʔεϨϕϧͷղઆ Ti.Developers.meeting vol.5 in Kyoto ACS ΛͬͯΈΔ API ͷར༻ ...
ΧελϜΦϒδΣΫτͷߋ৽ɺআ var params = { classname: ‘favorite_players’, fields: { name: ‘Randy W Bass’, number: 44 }, }; Cloud.Objects.update(params, function(res){ ... }); var params = { classname: ‘favorite_players’, id: '4feaf1e70020447dd304cfd0', }; Cloud.Objects.delete(params, function(res){ ... }); 20128݄13݄༵
ACS ͷσʔλཧ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Web ϕʔε GUI ... Appcelerator ͷαΠτ্ Ti.Developers.meeting vol.5 in Kyoto
ACS ͷσʔλཧ ͳ͍͠ΐ— 20128݄13݄༵
͚ͬ͜͏͔ͬ͠Γͨ͠࡞ΓͰɺϩάͳͲͷӾཡͰ͖Δ Ti.Developers.meeting vol.5 in Kyoto ACS ͷσʔλཧ 20128݄13݄༵
ͩɺ͕ͩɺΊͪΌͪ͘Όॏ͍ͧ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ·ͱΊ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Ti.Developers.meeting vol.5 in Kyoto ACS ·ͱΊ Titanium SDK 2.0 ͔Βར༻Ͱ͖Δ
BaaS ແྉ͕༻ҙ͞Ε͍ͯͯؾܰʹ͑Δ ෳࡶͳઃఆෆཁɺ΄΅σϑΥϧτͰར༻Մೳ API ΞΫηεΑ͋͘Δ Ajax ͬΆ͍ॻ͖ํ Web ϕʔεͷ GUI ͰσʔλཧͰ͖Δ 20128݄13݄༵
Agenda - ACS Ͱ Sreverside non-programming Ͱ։ൃ - αϯϓϧΞϓϦͰσϞ -
ACS ͬͯͯݱ࣌ͷϝϦοτʗσϝϦοτ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
Agenda - ACS Ͱ Sreverside non-programming Ͱ։ൃ - αϯϓϧΞϓϦͰσϞ -
ACS ͬͯͯݱ࣌ͷϝϦοτʗσϝϦοτ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ͷϝϦοτ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ͷϝϦοτ - ։ൃʗӡ༻ίετͷݮɺωΠςΟϒଆʹઐ೦Ͱ͖Δ - API ઃܭҙ֎ͱ͔ͬ͠Γ͍ͯ͠Δ αʔόʔαΠυͷ։ൃ͕ෆཁ Ti.Developers.meeting vol.5
in Kyoto - ͱΓ͋͑ͣແྉͰ͑Δͷͱͯ͋Γ͕͍ͨ - ΦϓγϣϯΛՃ͓ͯ͠ࡒʹ༏͍͠ අ༻ͱͯ͠Ϧʔζφϒϧ - RESTful ͳ API ͱͯ͠ɺOAuth ʹରԠ Titanium Ҏ֎͔Β༻Մೳ 20128݄13݄༵
ACS ͷσϝϦοτ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵
ACS ͷσϝϦοτ - ίϯιʔϧૢ࡞ͱ͔ࠓͷͱ͜ΖෆՄʁ - ϩάͷࢀর ... ͋ͱɺμϯϓͰ͖ͳ͍ ... ͔͠ॏ͍
... σʔλͷཧ͕ web ্ͷΈ Ti.Developers.meeting vol.5 in Kyoto - A ͕ B ͷ࣌ʹ C Λߋ৽ͱ͍͏Α͏ͳ͜ͱαʔόʔͰग़དྷͳ͍ - σʔλͷΓऔΓͷઃܭγϯϓϧʹͳΒ͟ΔΛಘͳ͍ ͪΖΜαʔόʔଆͰͷσʔλૢ࡞ෆՄ ↑ɹAPI Λར༻ͯࣗ͠લͰ࡞ΕԿͱ͔ͳΔʂʢ 20128݄13݄༵
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ Ti.Developers.meeting vol.5 in Kyoto 20128݄13݄༵