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
2年間Monacaで自社サービスを運用して学んだこと全部言います
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nbfujiwara
October 03, 2017
Technology
7.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
2年間Monacaで自社サービスを運用して学んだこと全部言います
第二回Monaca UGで発表した資料
nbfujiwara
October 03, 2017
Other Decks in Technology
See All in Technology
Flow 不死:AI 時代 DevOps 的不變本質
cheng_wei_chen
2
550
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
2
1.1k
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
610
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
130
AWS Summit の片隅で、体育座りしながらコミュニティがにぎわう理由を考えた
k_adachi_01
2
150
脱SaaS!FDEを支えるプロビジョニングと分離設計
knih
0
300
ぼっちではじめた登壇が「51名」「241件」の発信に化けた
subroh0508
1
330
AI Agentをシステムに組み込む前にゆるく向き合ってみる
hayama17
0
170
AI時代のコスト管理を考えよう〜明日から使える実践AWSノウハウ~
yoshimi0227
0
940
AI時代における最適なQA組織の作り方
ymty
3
160
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
190
Multi-Agent並列開発を 安全に回すための技術 / Technology for Safely Multi-Agent Parallel Development
tooppoo
0
220
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
Between Models and Reality
mayunak
4
350
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Mobile First: as difficult as doing things right
swwweet
225
10k
Discover your Explorer Soul
emna__ayadi
2
1.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Being A Developer After 40
akosma
91
590k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
870
Transcript
ؒ.POBDBͰ ࣗࣾαʔϏεΛӡ༻ͯ͠ ֶΜͩ͜ͱશ෦ݴ͍·͢ .POBDB6( Page.1
౻ݪ ༟࢘ גࣜձࣾχδϘοΫε ϓϨΠϯάϚωʔδϟతͳࣄ 5ZQF 4DSJQU͕͖ લճ.POBDB6(ͷήʔϜσϞ͕ධʢͩͬͨͣʣ ϞφΧϓϨε IUUQTQSFTTNPOBDBJPNPOBDBVH ͔Βੋඇ͝ཡ͍ͩ͘͞
ʢࠓͷ༰ͱશવҧ͍·͢ʣ Page. 2 ࣗݾհ
8FCϒϥβ൛ϦϦʔε .POBDBΞϓϦ൛ϦϦʔε Page. 3 ʮϨγϙʂʯϦϦʔε
Page. 4 Ϩγϙͱ
ϒϥβ൛ͷத͔Β ࠷খݶͷΑ͘͏ϝΠϯػೳΛΞϓϦ൛ͱ࣮ͯ͠ Page. 5 ͡Ίͯͷ࣮Ҋ݅.POBDB։ൃ ϗʔϜ ͓Βͤ ձһԾొ ձһຊొ ձһใमਖ਼
ϩάΠϯ ରҰཡ ϨγʔτԠื ϙΠϯτ֬ೝ ৹ࠪ݁Ռ֬ೝ ϙΠϯτަ '"2 ͓͍߹Θͤ ར༻ن ϔϧϓ 4/4࿈ܞ ɾ ɾ ࣈ͚ͩΛΞϓϦ൛Ͱ࣮ ͦͷଞ8FCͰ
࣌ؒͷۭ͍͍ͯͨΤϯδχΞʹ 3&45"1*Λ࡞ͯ͠Β͓͍ͬͯͨ ͍ͭͰʹυΩϡϝϯτ ʢࣗՈͳΜͪΌͬͯ4XBHHFSʣ Page. 6 ͡Ίͯͷ࣮Ҋ݅.POBDB։ൃ
ؔऀશһू·ͬͯ ʮ͓͞ΘΓձʯΛෳճ࣮ࢪ Page. 7 σόοΨʔ͍͍͢ ͦͷͰҰؾʹย͚Δ 商品の表示は 一列?段組み? フェードイン・アウトの スピードはどれくらい?
ここのマージン どれくらい? もうちょい遅く、 いや遅すぎ、 あーそれそれ 備考が短い時 表示が微妙だね
Page. 8 ͦͷ݁Ռ
ϤΧολϤΧολ ʘ ?P? ʗ Page. 9 ͡Ίͯͷ࣮Ҋ݅.POBDB։ൃ
lΫϥυ*%&্Ͱ։ൃ l0OTFO 6*YK2VFSZ lը໘ʢPOTQBHFʣ୯ҐͰ)5.-ɾ+4ɾ$44 ͦΕͧΕ ϑΝΠϧͣͭʹʢಠཱੑॏࢹʣ l8FC։ൃͷϊϦͰ+4ϥΠϒϥϦΛར༻ l$ISPNF%FW5PPMT͕͑Δ͜ͱʹײಈ Page. 10
͋ͷ࣌ͷॳظ։ൃΛࢥ͍ग़ͯ͠
lΫϥυ*%& ˠ .POBDB -PDBM,JU lίʔυࣾ(JUཧ lόοΫΤϯυ"1*ͷଓઌΛ ։ൃαʔό ˠ ϩʔΧϧ7BHSBOU l(PPHMF"OBMZUJDTͰΠϕϯττϥοΫ
Page. 11 ϦϦʔεޙ͙͢ʹͬͨ͜ͱ
͋Γ͕͍ͨ͜ͱʹԿ͔57Ͱ์ө ˠΞΫηεߴෛՙͰαʔό͕མͪΔ NPOBDBΞϓϦΛ࡞Δલޙ Page. 12 <༨ஊ>ΞϓϦ൛Λ࡞ͬͯΑ͔ͬͨ
ΞϓϦ͕͋ͬͨΒɺ์өཌͱ͔Ϣʔβొ͕ ίϯελϯτʹ૿͑ͯ͘Εͨ Page. 13 <༨ஊ>ΞϓϦ൛Λ࡞ͬͯΑ͔ͬͨ アプリ後 アプリなかった時
ΘΓͱେ͖ΊͳվमΛͨ͘͠ͳΔ lϢʔβొΞϓϦͰʢػೳՃʣ lσβΠϯͷ৽ Page. 14 ޙ
l"OHVMBSͷ࠾༻ –0OTFO6*ϕʔε –)5.-தʹ OH ΛάΠάΠຒΊࠐΈ –ը໘୯Ґ+4Λ ͦͷ··$POUSPMMFSʹͯ͠ –K2VFSZΛάΠάΠফͭͭ͠ –ϩδοΫΛ.PEFMͱ4FSWJDFʹ͚ͳ͕Β l.POBDBGPS7JTVBM4UVEJPͰ։ൃ
–ͨͩͷΞαΠϯΤϯδχΞͷΈʢࠓར༻ͤͣʣ lՃ༷ͰᎍΊΔ࡞Γࣗ͠ମεϜʔζ Page. 15 Ψϥοͱ࡞Γม͑
Page. 16 σΟϨΫτϦߏ DPOGJH ͦͷ໊ͷ௨Γ MJCωοτ͔ΒरͬͨϥΠϒϥϦ NPEFM.PEFM4FSWJDF NZMJC ࣗࣾ+4ϥΠϒϥϦʢ54ʣ QBHF$POUSPMMFS
Page. 17 +4ϥΠϒϥϦ lQSFGJYGSFF – XFCLJU΄͛΄͛ͱ͔ॻ͘ͷ͕໘ͳͷͰ lNBTPOSZ – άϦουϨΠΞτ lJNBHFTMPBEFE
– ϩʔσΟϯάͷѻ͍Λָʹ l("-PDBM4UPSBHF – QIPOF(BQ༻("ϥούʔ lWBMJEBUF – ೖྗνΣοΫΛָʹ lODNC – /$.#ͷ"1*ΛݺͿͨΊ – ͜Ε.POBDBͷ+4$44ίϯϙʔωϯτ͔ΒՃ – QMVHJOՃͰ͏ͷʮXJOEPX/$.#NPOBDBIPHF ʯ ͬͪ͜ʮOFX/$.# ʯ
Page. 18 DPOGJHͰ var module = angular.module('recipoApp'); //module.constant('SYSTEM_ENVIRONMENT', 'local'); //module.constant('SYSTEM_ENVIRONMENT',
'development'); module.constant('SYSTEM_ENVIRONMENT', 'production'); switch (SYSTEM_ENVIRONMENT) { case 'local': config = { apiUrlBase:'https://local.recipo.jp/api/v2/', googleAnalyticsTrackingId: 'UA-xxxxxxxx-1', }; break; case 'development': config = { apiUrlBase:'https://dev.recipo.jp/api/v2/', googleAnalyticsTrackingId: 'UA-xxxxxxxx-1', ,,,, };
ετΞʹ্͛ͨΞϓϦ͕ ։ൃαʔό͍ͯ·ͨ͠ ʘ ?P? ʗ Page. 19 ࣦഊ͢ΔՄೳੑͷ͋Δͷࣦഊ͢Δ
։ൃڥ·ΘΓͷ Page. 20 ଓ͖·ͯ͠
جຊ-PDBM,JUΛ༻ –ଞϓϩδΣΫτϝϯόʔ࣍ୈͰΫϥυ*%&ଘ –Ͳ͏ͬͨΒซ༻Ͱ͖ΔΜͩΖ͏ʁ ͨͩͷసૹπʔϧͱͯ͠༻ ϓϨϏϡʔػೳ͋·ΓΘͣ –.POBDBσόοΨʔ –ΧελϜϏϧυ൛.POBDBσόοΨʔ –ΞυϗοΫϏϧυ Ͱݕূɻ͍͚ʹ׳Ε͕ඞཁ ʢ৽ϝϯόʔ͍ॴΛ໎͍͕ͪʣ
Ϋϥυ*%&Ͱेͱࢥ͍ͬͯͨ࣌͋Γ·ͨ͠ Ұ͏ͱ͏ΕΒΕͳ͍ Page. 21 Ϋϥυ*%& WT-PDBM,JU
ΤσΟλϑϦʔμϜ FEJUPSDPOGJH͚ͩઃஔ Page. 22 ΤσΟλ [*] charset = utf-8 indent_style
= space insert_final_newline = true trim_trailing_whitespace = true [*.{js,css}] end_of_line = crlf indent_size = 4
IUUQTRJJUBDPNTPJDIJSP@OJTIJ[BXBJUFNTEFDDCE Page. 23 $*࠷ߴ
HJU Ͱ NBTUFSʹQVTIͨ͠Β ͦͷ࣌ͰͷϏϧυΛϝϯόʔશһͷʹͯ͠ ΠΣʔʔʔΟΈ͍ͨͳ ݱࡏͰ.POBDB$*Λར༻ͯ͠ ετΞͷΞοϓϩʔυ·Ͱ͓·͔ͤ ಋೖલջٙతͰͨ͠ Ұ͏ͱ͏ΕΒΕͳ͍ Page.
24 $*࠷ߴ
DPSEPWBQMVHJOTQMBTITDSFFO DPSEPWBQMVHJODBNFSB DPSEPWBQMVHJOJOBQQCSPXTFS DPSEPWBQMVHJOXIJUFMJTU DPSEPWBQMVHJOGJMF DPSEPWBQMVHJOBQQSBUF DPSEPWBQMVHJODSPTTXBMLXFCWJFX ODNCQVTINPOBDBQMVHJO DPSEPWBQMVHJOOJGUZQVTIJDPO DPSEPWBQMVHJOSFQSP
Page. 25 Քಇத1MVHJO
1VTI௨ͷͨΊ͚ͩʹར༻ ϑϦʔͷൣғͰ͔ͳΓ͑Δ .POBDBϢʔβ༻ͷใଟ͠ Page. 26 /JGUZ༷
ҙநग़ͨ͠Ϣʔβͷ༻ঢ়گΛ ಈըͰอଘͯ͘͠ΕΔ αϙʔτ͕ $SPTTXBML͕ର֎Ͱ "OESPJEਅͬ҉ಈը͕ଟ͍ Page. 27 3FQSP༷
Page. 28 ͦͷଞͷ4%,ʢผΞϓϦʣ
Ͳ͏ͬͯ͜ͱͳ͍मਖ਼Ͱ ͳ͔ͥΞϓϦ͕ϏϧυͰ͖ͳ͘ͳΔ Page. 29 4%,ࣄ݅
$PSEPWB1MVHJOͷ63-ࢦఆΊΑ͏ Page. 30 4%,ࣄ݅ 1MVHJOຊՈͷ6QEBUF͕ىҼ ;*1 PS όʔδϣϯԘ௮͚ʹͨ͠ ผϦϙδτϦͷ63-ࢦఆ
Page. 31 4%,ࣄ݅ 4%,͕ೖΒͳ͍ ·ͨ ͳ͔ͥΞϓϦ͕མͪΔ ·ͨ ଞ4%,ͱͷ߹ٕͤͰෆ۩߹
Page. 32 4%,ࣄ݅ QMVHJOYNMͷ <framework src="com.google.android.gms:play- services-analytics:9.8.0" /> ίίΛٙ͏ʂ ʢશQMVHJOΛ௨ͯ͠ʣ
Page. 33 4%,ࣄ݅ ͦΕͰ ͜ͷઓ͍ऴΘΒͳ͍
lCVJMEHSBEMF Λमਖ਼ɾՃͨ͠ lNPOBDBͷ9$PEFόʔδϣϯ$PSEPWBόʔδϣϯΛ֬ ೝͯ͠ɺ4%,ଆͪΐͬͱݹ͍ͭΛͬͨ lQMVHJOYNMͰQMVHJOλάͷWFSTJPOΛʮʯ͔Β ʮʯʹม͑ͨ l΅ͦ೦ͳ͕ΒఘΊͨ΅ͦ lमਖ਼ඞਢɻͦͷ··͍͚ΕϥοΩʔ͙Β͍ͷؾ֓ Page. 34
4%,ࣄ݅&9
4%,ଘࡏ͢Δ͕ $PSEPWB1MVHJOଘࡏ͠ͳ͍߹ Page. 35 4%,
NPOBDBΛΘͳ͍બࢶ ߟྀͨ͠ํ͕͍͍ Page. 36 4%,
lଞͷ$PSEPWB1MVHJOΛࢀߟ lτϥΠΤϥʔ lϏϧυͪ࣌ؒʹ͑Δ l$PSEPWBٕज़ऀΛ୳͢ lωΠςΟϒΞϓϦٕज़ऀΛ୳͢ Page. 37 4%, 辛いが くぐり抜ければ
マッチョになれる
Page. 38 $SPTTXBMLʹ͍ͭͯ 標準WebView Crosswalk パフォーマンス 普通 早い (※いまいち実感しなかった り、誰かの端末で逆に重かっ
たり) 端末依存 たくさんある 大変 少ない 嬉しい apkのサイズ 小さい 無駄に大きい
Page. 39 $SPTTXBMLʹ͍ͭͯ 標準WebView Crosswalk パフォーマンス 普通 早い (※いまいち実感しなかった り、誰かの端末で逆に重かっ
たり) 端末依存 たくさんある 大変 少ない 嬉しい apkのサイズ 小さい 無駄に大きい inAppBrowser 怪しくない 怪しい!!
lηογϣϯपΓ͕ಛʹո͌͌͌͌͠ lʮϨγϙʂʯͷΑ͏ͳϒϥβ൛͋Γ͖ͷͷӨڹ ߹͍͕େ͖͍ lϒϥβ൛41දࣔͷͨΊʹɺґଘରԠผ్ͬͯ Δ lػೳʹΑͬͯΞϓϦ֎ϒϥβʹಀ͛ͨΓ l$PSEPWBόʔδϣϯӨڹ͢ΔͷͰɺະͩ݁ग़ͣ Page. 40 $SPTTXBMLYJO"QQ#SPXTFS
ݸਓతʹଟ͘ͷ߹ʮ$SPTTXBMLΛ࠾༻ʯ ͕ਖ਼ղͳؾ͕͢Δ ͰɺαʔϏεࣗମ͕8FCϒϥβ൛ ؤு͍ͬͯΔ߹ɺݕ౼Λଓ͚ͨํ͕Α͍ Page. 41 $SPTTXBMLYJO"QQ#SPXTFS
K2VFSZͰදݱ͢Δͱ Page. 42 ӡ༻ʹ͓͍ͯ $('.product_name').text(APIから取得した商品名); $('.product_name').html(APIから取得した商品名HTML); ॳͷίʔυ ૿͍͑ͯ͘ίʔυ
αʔόαΠυ͔Β7JFXΛૹΔؾ࣋ͪѱ͋͞Δ͕ ͜Εɺ.POBDBΞϓϦͷϝϦοτͰ͋Δؾ͕͢Δ ΉͪΌͪ͘ΌͰ͕͢ɺԠٸॲஔͰ TDSJQUλάಥͬࠐΜͩ͜ͱ͋Γ·͢ Page. 43 ӡ༻ʹ͓͍ͯ
l1VTI௨ͷূ໌ॻ͕ΕͯͨΓ͢Δ l$PSEPWBΞοϓσʔτ͕དྷΔͷ͕ා͔ͬͨΓ͢Δ ෆఆظʹωΠςΟϒΤϯδχΞͰͳ͍ͱݫ͍͠λΠϛϯά ͕͋Δ ͰɺωΠςΟϒͷ͕ࣝগͳ͍ϝϯόʔ͕୲ͩͬͨΓ ͢Δ Page. 44 ӡ༻ʹ͓͍ͯ
ʢ4FMFOJVNͰ&&ςετΛճ͢ͱ͜Ζ·ͰͬͨͷͰɺ/FYU4UFQʣ "QQJVNΛͬͯ&&ςετʹνϟϨϯδத Page. 45 ࠓޙͷల
-PXίετ .JEEMFΫΦϦςΟ ݟੵΓ࣌ʹ͓͚ΔҰબࢶ ʮϒϥβͳΒສɺ.POBDBͳΒສɺ ૉͷ"OESPJEJ04ͳΒສɺɺͲΕʹ͠·͢ʁʯ ϨγϙҎ߱ɺҊ݅Λ.POBDBͰ։ൃ σβΠφ্͕ΓͷϑϩϯτΤϯδχΞɺ৽ਓ͕ઓྗԽ͢Δͷ ͕ૣ͍ 1MVHJOͰࠔͬͨ࣌ɺࣗͰ$PSEPWB9$PEFͰΓͨ͘ͳΔ͕ɺ ͬͨΒNPOBDBͷҙຯͳ͘ͳΔͱࢥ͍ɺ౿ΈͱͲ·Δ
Page. 46 ฐࣾʹ͓͚Δ.POBDB
ܦݧΛੵΜͩ5FDIࢤΤϯδχΞʹਓؾ͕ͳ͍ ʢΓͳ͞ʹىҼʣ .POBDBࣗମͨͩͷπʔϧɻ׳Εෆ׳Εͦ͋͜Ε ֶͿඞཁͷ͋ΔͷͰͳ͍ +4ΛΨγΨγॻ͍ͯ དྷΔ͔͠Εͳ͍ϒϥβٯऻͷ࣌ʹඋ͓͑ͯ͘ Page. 47 ฐࣾʹ͓͚Δ.POBDB
͋Γ͕ͱ͏͍͟͝·ͨ͠ Page. 48 Ҏ্Ͱ͢