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
B2Cモバイル開発のいまとこれから #forcedotcomjp
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Naoya Ito
September 06, 2013
Technology
8.1k
54
Share
B2Cモバイル開発のいまとこれから #forcedotcomjp
Salesforce Developer Conference Tokyo 2013 での発表資料
Naoya Ito
September 06, 2013
More Decks by Naoya Ito
See All by Naoya Ito
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
8
2.9k
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
21
7.6k
Functional TypeScript
naoya
18
6.7k
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
76
37k
シェルの履歴とイクンリメンタル検索を使う
naoya
16
6.6k
20230227-engineer-type-talk.pdf
naoya
91
85k
関数型プログラミングと型システムのメンタルモデル
naoya
63
110k
TypeScript による GraphQL バックエンド開発
naoya
29
37k
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
naoya
67
25k
Other Decks in Technology
See All in Technology
QA組織のAI戦略とAIテスト設計システムAITASの実践
sansantech
PRO
1
300
【Oracle Cloud ウェビナー】データ主権はクラウドで守れるのか?NTTデータ様のOracle Alloyで実現するソブリン対応クラウドの最適解
oracle4engineer
PRO
3
130
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
270
Bref でサービスを運用している話
sgash708
0
220
Oracle Cloud Infrastructure:2026年3月度サービス・アップデート
oracle4engineer
PRO
0
270
スクラムを支える内部品質の話
iij_pr
0
130
20260326_AIDD事例紹介_ULSC.pdf
findy_eventslides
0
310
Babylon.js Japan Activities (2026/4)
limes2018
0
110
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
140
GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
flatt_security
12
7.1k
AI時代のシステム開発者の仕事_20260328
sengtor
0
320
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
2
17k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
160
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
990
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
500
My Coaching Mixtape
mlcsv
0
91
4 Signs Your Business is Dying
shpigford
187
22k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Transcript
#$͔ΒΈͨ ϞόΠϧΞϓϦέʔγϣϯ։ൃͷ ͍·ͱ͜Ε͔Β /BPZB*UP JOBPZB!HNBJMDPN
NAOYA ITO
None
None
None
ࡢࠓͷϞόΠϧࣄ
h"p://www.kpcb.com/insights/2013-‐internet-‐trends
h"p://www.kpcb.com/insights/2013-‐internet-‐trends
ྫ͑ɺ&$ • ϞόΠϧ͕ݗҾ – ஹԯԁ – ஹԯԁ • ͏͕ͪϞόΠϧ ܦࡁ࢈ۀলൃද "NB[PODPKQ
ʮࠓޙϞόΠϧͰΓ͍ͨʯ
ਓʑ͕ϞόΠϧͰࢥ͍ු͔ΔϞϊ 1BUI 5XJUUFS
None
ʰ͍ͭʹΤϯυϢʔβʔͷٯऻ͕࢝·ͬͨrاۀγεςϜʹ͓͚ΔίϯγϡʔϚʔΠϊϕʔ γϣϯ/PUIJOHWFOUVSFE OPUIJOHHBJOFEʱ h"p://takora"a.hatenablog.com/entry/20120329/1333033813
None
None
ϞόΠϧ։ൃैདྷͷ։ൃͱҧ͏
h"ps://speakerdeck.com/vitalyg/designing-‐for-‐mobile-‐commerce
ϞόΠϧΞϓϦ։ൃͷ 69ͷ։ൃ ˞एׯͬͯ·͕࣮͢ײͱͯ͠
69։ൃΛ͏·͘ਐΊΔʹ ࢼߦࡨޡͷճΛ૿͢
ࢼߦࡨޡͷճΛ࠷େԽ • #$ͷ։ൃϓϩηεͦͷ࠷దԽͷ݁Ռ – ϦʔϯɺΞδϟΠϧ։ൃɺ$*ɺ$%ɺ %FW0QTŋŋŋ
ͳͥϦϦʔεසΛ্͛Δͷ͔ h"p://www.gaku.net/ukki/なぜリリース頻度を上げるのか
None
None
5IF$POTVNFSJ[BUJPO0G*5
ϞόΠϧΞϓϦ։ൃͷ࣮ࡍ
ελʔτΞοϓॳظ͔Β6*։ൃ ʹྗΛೖΕ͍ͯΔ 1BUI 4NBSU/FXT
ͳͥͳΒ • ͦͦ69͕Α͘ͳ͍ͱϢʔβʔʹͬ ͯΒ͑ͳ͍͔Β • 6*ͷ࣮ίετ͕ߴ͍ͷͰɺॳظʹίϯ ηϓτΛ͔ͬ͠ΓݻΊ͍ͨ
ࢴͰֆΛॻ͘ 『はてブiPhone・Androidアプリの開発プロセス – ninjinkun's diary』 h"p://ninjinkun.hatenablog.com/entry/20110213/1297586340
ϖʔύʔϓϩτλΠϐϯά
101 ϖʔύʔϓϩτλΠϐϯά༻ΞϓϦ
'MJOUPɺ'JMF4RVBSFFUD
6*࡞ʹ͋ͨͬͯ • 6*ίϯϙʔωϯτͷύλʔ ϯΛ͓ͬͯ͘͜ͱ͕େ – Ͳ͏ͬͯ 㱺ޙड़ • ΨΠυϥΠϯඞಡ – J04ώϡʔϚϯΠϯλʔϑΣΠ
εΨΠυϥΠϯ – %FTJHOc"OESPJE %FWFMPQFST ʰεϚʔτϑΥϯͷͨΊͷ6*σβΠϯʱ ా࢘
6*,JU'SBNFXPSL
6*,JUͷ੍ • ૉʹै͏ͱJ04Β͍͠69ʹ্͕ΔΑ ͏ʹͳ͍ͬͯΔ – ྫը໘ભҠ"1*ͳͲࢥ͍ͬͯΔΑΓͣͬͱબ ࢶ͕গͳ͍ • pushViewController:animated: •
presentViewController:animated:completion : – ྫ: ϘλϯΛஔ͚Δॴܾ·͍ͬͯΔ
ͭ·Γŋŋŋ • ࣮Λߦ͍ͬͯΔϓϩάϥϚɺJ04ͷ6* ͕Ͳ͏͋Δ͖͔ΛΑ͍ͬͯ͘Δ • ϑϨʔϜϫʔΫͷཧղͳ͠ʹ6*ઃܭΛߦ ͏ͷԕճΓ
ۙͷ#$։ൃͷ • ʮϑϩϯτΤϯυ։ൃऀʯ – ϑϩϯτΤϯυ։ൃऀσβΠφͰ͋Δ͜ͱ h"p://www.theguardian.com/help/insideguardian/2009/sep/28/blogpost
1VMM3FRVFTU։ൃͱ6* ը໘ઃܭͷऀʹ։ൃϦςϥγ͕͋Ε (JUIVCͰͷίϥϘϨʔγϣϯ͕Մೳ
J04"OESPJE։ൃͷམͱ݀͠ ʮ"OESPJE൛J04൛ͱಉ͡σ βΠϯͰΑΖ͘͠ʂʯ
J04 • ը໘ભҠΞϓϦͷதͰجຊ݁͢Δ • ଞΞϓϦͱͷ࿈ܞ࠷ݶ
"OESPJE • ෦ભҠͱଞΞϓϦͷભҠ͕֓೦্ಉҰ • Σϒϒϥβͷߟ͑ํʹ͍ۙ – όοΫΩʔԿͷͨΊʹ͋Δʁ
6*ͷࠜຊͷࢥ͕ҧ͏ • J04ͱ"OESPJEͦΕͧΕ։ൃ͢Δํ ͕݁Ռతʹۙಓ • ϫϯιʔεɾΫϩεϓϥοτϑΥʔϜࠔ ͳಓ – ͨͩ͠ɺ6*ϑϨʔϜϫʔΫΛΘͳ͍։ൃ ྫ֎ ྫωΠςΟϒήʔϜ
)5.-Ͱ͍ͭΔͷ ࠓͰŋŋŋͳ͍
• 8FCϖʔδతͳͷ0, – ैདྷͷ8FC։ൃͱ΄΅มΘΒͳ͍ • ωΠςΟϒΞϓϦͷΑ͏ͳ )5.-ΞϓϦࠔͳಓ – &NCFEEFE8FC7JFXTͳͲ͍Ζ͍ΖΞϓϩʔν͋Δͷ ͷɺָܾͯ͠Ͱͳ͍
ϞόΠϧ։ൃͱ044 $PDPB1PETੵۃతʹར༻
$PDPB1PET • 3VCZͷHFNɺ1FSMͷ$1"/ • #VOEMFSͷΑ͏ͳґଘཧɺόʔδϣϯݻఆͷΈ # Podfile platform :ios,
'6.1' pod 'JSONKit' pod 'AFNetworking', '~> 1.3'
(JUIVCͱ044
$PDPB$POUSPMT
ΫϥυͱϞόΠϧ • *BB41BB4ɺ.#BB4ɺ4BB4 – ੵۃతʹ͍ͬͯ͘ – ੵۃతʹ͍ɺ։ൃαΠΫϧΛΊΔ • "1*ϑΝʔετ – όοΫΤϯυϑϩϯτΤϯυͷ୲ – ۀϩδοΫ"1*ͰΫϥυଆͰɻ6*Λ ΞϓϦͰ
όοΫΤϯυ*BB41BBT #$ͷ৽ن։ൃͰͨΓલ )FSPLV "84
ͳͥΫϥυʁ • ΠϯϑϥͷೲظΛॖΊ͍ͨ • %FW0QT͍ͨ͠ – #$ϞόΠϧ։ൃʹ͓͍ͯͪ͜Βͷཁ – ΠϯϑϥΛࣗಈԽ͠ɺࢼߦࡨޡճΛ૿͢
ϞόΠϧ#BB4 1BSTFDPN
.#BB4ͷఏڙ͢Δͷ • Ϣʔβొɾཧɾೝূ • ϝοηʔδϯά ϓογϡ௨ • ΫϥυετϨʔδ –
ϑΝΠϧετϨʔδ – ΦϒδΣΫτετϨʔδ • Ϋϥυ্Ͱͷܭࢉॲཧ • ՝ۚ *O"QQ1VSDITF • ར༻ੳ • ҐஔใɺιʔγϟϧͳͲͷίϯςΩετ
1BSTFJ044%, ίʔυ3VCZ.PUJPO # Push Notification を有効に # ParseのKVS
に deviceToken ó user_id のマッピングを保持 PFInstallation.currentInstallation.tap do |i| i.setDeviceTokenFromData deviceToken i.setObject @user_id, forKey:"owner" i.saveInBackground end
1BSTF3&45"1* # REST API で、push通知を端末に送るよう Parse に指令 curl -‐X
POST \ -‐H "X-‐Parse-‐Application-‐Id: "..." \ -‐H "X-‐Parse-‐REST-‐API-‐Key: "..." \ -‐H "Content-‐Type: application/json" \ -‐d '{ "data": { "where": { "owner": "naoya" } "alert": "Hello, World!" } }' \ https://api.parse.com/1/push ϓογϡ௨ʹ·ͭΘΔ໘ͳՕॴΫϥυଆͰͬͯ͘ ΕΔ ྫ"1/αʔόͱͷଓҡ࣋
"NB[PO4/4 • "84ͷϓογϡ௨αʔϏε • .#BB4΄Ͳͷػೳॊೈ͞ͳ͍͕ͱʹ ͔͍҆͘ – 64%ສ"1*ϦΫΤετ – .#BB4ΦϒδΣΫτετϨʔδ4%,ͱ ͷ࿈ܞ͕ڧΈ •
ࠓޙ"84͕#BB4తׂ୲͏
ϞόΠϧ#BB4ͷ࣮ࡍ • શͯΛ#BB4͕͏Θ͚Ͱͳ͍ – *BB41BB4ͱ͍͚ͳ͕Βɺ#BB4͕ಘҙ ͱ͢Δͱ͜ΖΛ୲ͤ͞Δͷ͕٢ 『モバイルBaaSの概観と最新動向 (2013/6/7)』 by Shnichi Tomita
h"p://www.slideshare.net/shinichitomita/mobile-‐baaslatest
)FMJPTCZ)FSPLV
։ൃΛॿ͚Δ4BB4 • ͲΜͲΜ͍ͬͯ͘ – 5FTU'MJHIUςετΞϓϦͷνʔϜͷ – #VH4FOTFΫϥογϡϨϙʔτ – /FX3FMJDϞχλϦϯά –
5SBWJT$*ܧଓతΠϯςάϨʔγϣϯ #VH4FOTF
ָͰ͖Δͱ͜ΖָΛ͢Δ ָͨͩ͠͠Ͳ͜ΖΛؒҧΘͳ͍
ʮ"OESPJE൛J04൛ͱಉ͡σ βΠϯͰΑΖ͘͠ʂʯ
·ͱΊ • #$ΞϓϦ։ൃͷϓϥΫςΟεΛհ • ैདྷ։ൃΑΓ69։ൃʹϦιʔεΛׂ͘ • ։ൃϓϩηεΠϯϑϥͷѻ͍Λચ࿅ͤ͞Δ͜ͱ ͰࢼߦࡨޡճΛ૿͢ – ݁Ռɺ6*։ൃͷϦιʔε֬อٴͼධՁ͕ॊೈʹͳΔ
• 044ΫϥυΛ࠷େݶ׆༻ • ͨͩ͠ɺָΛ͢ΔՕॴਖ਼͘͠ݟۃΊΔ – ΞϓϦૉʹɺී௨ͷΓํͰ࡞Δ – ʮָͦ͏͔ͩΒʯͱ͍͏ཧ༝͚ͩͰϫϯιʔε )5.-ࣗಈੜͳͲ͍ٻΊͳ͍ – पลڥʮڊਓͷݞͷ্ʯʹΔ