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
AbemaTV モバイルアプリの開発体制と 開発プロセスの話
Search
Yuji Hato
October 21, 2017
Technology
0
270
AbemaTV モバイルアプリの開発体制と 開発プロセスの話
Yuji Hato
October 21, 2017
Tweet
Share
More Decks by Yuji Hato
See All by Yuji Hato
ABEMAにおける 生成AI活用の現在地 / The Current Status of Generative AI at ABEMA
dekatotoro
0
700
ABEMAモバイルアプリ開発のDevOps戦略
dekatotoro
1
670
Multiplatform Engineering Roadmap for the Future
dekatotoro
1
140
Introduction to RIBs
dekatotoro
5
1.4k
継続的な開発スタイル 「AbemaTV iOSアプリを週一で リリースしている話」
dekatotoro
6
4.1k
iOS Adaptive UI - 解像度の異なるデバイスや画面の向きに対応する 最適なレイアウトへ -
dekatotoro
0
460
動画アプリをなめらかに動かす技術 - iOS -
dekatotoro
0
400
5分で学ぶ差分更新とRxDataSources
dekatotoro
0
330
Apple TV - tvOS入門 -
dekatotoro
0
150
Other Decks in Technology
See All in Technology
AIエージェントの活用に重要な「MCP (Model Context Protocol)」とは何か
masayamoriofficial
0
220
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
170
LLMエージェント時代に適応した開発フロー
hiragram
1
470
そのコンポーネント、サーバー?クライアント?App Router開発のモヤモヤを可視化する補助輪
makotot
4
760
トヨタ生産方式(TPS)入門
recruitengineers
PRO
5
1.3k
ソフトウェア エンジニアとしての 姿勢と心構え
recruitengineers
PRO
22
11k
コスト削減の基本の「キ」~ コスト消費3大リソースへの対策 ~
smt7174
2
290
実運用で考える PGO
kworkdev
PRO
0
120
Goでマークダウンの独自記法を実装する
lag129
0
230
モダンフロントエンド 開発研修
recruitengineers
PRO
8
5.3k
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
770
Vault meets Kubernetes
mochizuki875
0
140
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Music & Morning Musume
bryan
46
6.8k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Producing Creativity
orderedlist
PRO
347
40k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Optimizing for Happiness
mojombo
379
70k
Scaling GitHub
holman
463
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to Think Like a Performance Engineer
csswizardry
26
1.8k
For a Future-Friendly Web
brad_frost
179
9.9k
Transcript
"CFNB57 ϞόΠϧΞϓϦͷ։ൃମ੍ͱ ։ൃϓϩηεͷ :VKJ)BUP "CFNB57%&7&-01&3$0/'&3&/$&
Yuji Hato CyberAgent, Inc. / AbemaTV, Inc. dekatotoro @dekatotoro Contributed
services "CPVUNF
"HFOEB ͬ͘͟Γ"CFNB57J04νʔϜͬͯ Ͳ͏ͬͯ։ൃ͍ͯ͠Δͷʁ ਓ͍ΔΒ͍͚͠ͲɺΈΜͳͪΌΜͱࣄͯ͠ͷʁ
։ൃମ੍
"CFNB57։ൃہਓʙ ։ൃମ੍
։ൃମ੍ 4FSWFS 8FC J04 "OESPJE %FTJHO %JSFDUPS 2" #PBSE
։ൃମ੍ 4FSWFS 8FC J04 "OESPJE %FTJHO %JSFDUPS 2" #PBSE
։ൃମ੍ J04 "OESPJE %JSFDUPS ϏσΦ άϩʔε ຊ࣭վળ ςϨϏσόΠε ͦͷଞҊ݅" #
$
J04νʔϜ
J04νʔϜ ໊
J04νʔϜ ໊
J04νʔϜ ϏσΦ άϩʔε ຊ࣭վળ ςϨϏσόΠε ͦͷଞҊ݅" # $
"CFNB57ରԠσόΠε 1$ J1IPOFJ1BE "OESPJEλϒϨοτ "QQMF57 "OESPJE57"NB[PO'JSF57 (PPHMF$BTU
"CFNB57ରԠσόΠε 1$ J1IPOFJ1BE "OESPJEλϒϨοτ "QQMF57 "OESPJE57"NB[PO'JSF57 (PPHMF$BTU J04νʔϜ
$PEFCBTF
$PEFCBTF JPTʜɹJ04ΞϓϦ UWPTʜɹUW04ΞϓϦ BQJʜ"1*पΓͷϞδϡʔϧ QSPUPCVGTXJGUʜɹQSPUPTXJGU DNETIFMGJPTʜɹTDSJQU܊ FUD NPDL UPPM TBNQMF
SFQPTJUPSJFT
JPT $PEFCBTF UWPT BQJ
JPT $PEFCBTF UWPT BQJ
JPT $PEFCBTF
JPT $PEFCBTF
UWPT $PEFCBTF
UWPT $PEFCBTF
BQJ $PEFCBTF
BQJ $PEFCBTF
ຖͷେྔͷίʔυͷม ߋ͕͞Ε͍ͯΔ
։ൃϑϩʔ
։ൃϑϩʔ εϓϦϯτ εϓϦϯτ εϓϦϯτ िؒ εΫϥϜ։ൃ
։ൃ 2" िؒ िؒ ։ൃ ։ൃ ։ൃ 2" 2" ਃ
ਃ ਃ ਃ 2" ։ൃϑϩʔ
։ൃ 2" िؒ िؒ ։ൃ ։ൃ ։ൃ 2" 2" ਃ
ਃ ਃ ਃ 2" ։ൃϑϩʔ
։ൃͱ2"ظؒͷॏෳ͕ͭΒ͍ ։ൃϑϩʔ
վળ ։ൃϑϩʔ
2" िؒ िؒ 2" 2" ਃ ਃ ਃ ਃ 2"
։ൃ ։ൃ ։ൃ ։ൃϑϩʔ
2" िؒ िؒ 2" 2" ਃ ਃ ਃ ਃ 2"
։ൃ ։ൃ ։ൃ ͍։ൃ ։ൃϑϩʔ
2" िؒ िؒ 2" 2" ਃ ਃ ਃ ਃ 2"
։ൃ ։ൃ ։ൃ ։ൃϑϩʔ ϑϥΠϯά։ൃ Ͱ͖Δਓ͚ͩ
λεΫ
λεΫ ϓϩσϡʔαʔϓϥϯφʔ͕Ҋ݅ΛཱҊ ϓϩσϡʔαʔϓϥϯφʔ͕αʔϏεͷཧঢ়ଶΛ ఆٛ͠ɺͦΕΛ࣮ݱͤ͞ΔͨΊͷػೳΛߟ͑Δ ϓϩσϡʔαʔϓϥϯφʔͱσΟϨΫλʔɺΤϯδχ ΞͰ༰͢Γ߹Θͤɻ࣮ݱՄೳੑΛݕ౼ͳͲɻ σΟϨΫλʔΤϯδχΞ͕ࡉ͔͍༷ʹམͱ͠ࠐΈҊ ݅Խ ύλʔϯ
λεΫ ΤϯδχΞ͕ίʔυ࣭ύϑΥʔϚϯεɺܧଓతͳ ։ൃͷͨΊͷࢪࡦΛચ͍ग़ͯ͠λεΫԽ ΤϯδχΞ͕ϞοΫΛ࡞ͬͯʮͲ͏͔͢ɺ͜Εʁʯ ΤϯδχΞ͕উखʹ࣮ͯ͠ʮ͜ΕೖΕ͍͍ͯͰ͢ ͔ʁʯ ύλʔϯ̎
λεΫͷݟੵΓ
λεΫͷݟੵΓ ετʔϦʔϙΠϯτ ɹʜܰඍͳͷ ɹʜεϓϦϯτ ɹʜ̍εϓϦϯτɺ·ͨͦΕҎ্
ετʔϦʔϙΠϯτ ɹʜܰඍͳͷ ɹʜεϓϦϯτ ͓͓ͬ͟ͺ λεΫͷݟੵΓ ɹʜ̍εϓϦϯτɺ·ͨͦΕҎ্
༏ઌఆٛ
༏ઌఆٛ ༏ઌஈ֊4 " #$ % εϓϦϯτظؒʹ։ൃྃςετϦϦʔεඞ ਢɻఆৗϦϦʔεʹؒʹ߹Θͳ͚ΕϦϦʔε ΛΒͤΔஅ͢Δ εϓϦϯτظؒʹ։ൃྃςετϦϦʔεඞ ਢͰͳ͍ɻ։ൃணख͢Δͷͷɺ։ൃకΊ
ʹؒʹ߹Θͳ͚Ε࣍ճϦϦʔεʹճ͢
ձٞମ
ձٞମ εϓϦϯτܭը εϓϦϯτϨϏϡʔ J04νʔϜఆྫʢिҰʣ ֤ࣗͷҊ݅͝ͱͷϛʔςΟϯά
πʔϧ
πʔϧ 4MBDL +*3" $POqVFODF FTB (JU)VC +FOLJOT FUD DNETIFMG #JUSJTF
πʔϧ 4MBDL +*3" $POqVFODF FTB (JU)VC +FOLJOT FUD DNETIFMG #JUSJTF
πʔϧ ϦϞʔτϦϙδτϦͷ࣮ߦՄೳ ϑΝΠϧΛϩʔΧϧϑΝΠϧͷ Α͏ʹ౷߹ͯ͠ѻ͑Δ IUUQTHJUIVCDPNUPTIJDNETIFMG 4XJGU
πʔϧ DNETIFMGJPTSFQPTJUPSZ
πʔϧ DNETIFMGJPTSFQPTJUPSZ
πʔϧ DNETIFMGJPTSFQPTJUPSZ
πʔϧ DNETIFMGJPTSFQPTJUPSZ
։ൃελΠϧ
1VMM3FRVFTUT $0/53*#65*/(NEൈਮ ։ൃελΠϧ
1VMM3FRVFTUT QVMMSFRVFTUൈਮ ׆ൃͳϨϏϡʔจԽ ։ൃελΠϧ
ίʔσΟϯάن $0/53*#65*/(NEൈਮ ։ൃελΠϧ
ςετ &YFDVUFEUFTUT XJUIGBJMVSFT VOFYQFDUFE JO TFDPOET ςετۃྗॻ͘ʂ
։ൃελΠϧ
िҰͷఆྫ(JU)VCɺ 4MBDL্Ͱͷ͔ٞΒਵ ࣌։ൃϧʔϧΛߋ৽ ։ൃελΠϧ J04ఆྫγʔτ
ϒϥϯνઓུ
ϒϥϯνઓུ جຊ(JU)VC'MPX ֤ࣗτϐοΫϒϥϯνΛNBTUFSRB͔ Β࡞ͬͯ࡞ۀ ։ൃ༻ͷNBTUFSϒϥϯνͱ2"༻ͷRBϒϥϯν
ϒϥϯνઓུ RB NBTUFS RB NFSHF NFSHF
ϒϥϯνઓུ NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ
RB εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF
NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ RB
εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF ϒϥϯνઓུ εϓϦϯτ
NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ RB
εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF ϒϥϯνઓུ ։ൃظؒத NBTUFS
NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ RB
εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF ϒϥϯνઓུ 2"ظؒத RB
NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ RB
εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF ϒϥϯνઓུ 2"ظؒதͷ NBTUFS։ൃ Ͱ͖Δਓ͚ͩ
NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ RB
εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF ϒϥϯνઓུ ਃޙ RBNBTUFSʹNFSHF ద࣌NFSHFͯ͠Δ
ϒϥϯνઓུ NBTUFS։ൃ NBTUFS։ൃ UBH ਃ RB NBTUFS RB2" RB2" εϓϦϯτ
RB εϓϦϯτ εϓϦϯτ UBH ਃ NFSHF NFSHF
#FUB৴
#FUB৴ CJUSJTF (JU)VC J5VOFT $POOFDU 5FTU'MJHIU $SBTIMZUJDT 5FTUFS %FTJHOFS 0UIFST
%FWFMPQFS IPPL EFMJWFSZ QVMMSFRVFTU
#FUB৴ CJUSJTF (JU)VC J5VOFT $POOFDU 5FTU'MJHIU $SBTIMZUJDT 5FTUFS %FTJHOFS 0UIFST
%FWFMPQFS IPPL EFMJWFSZ QVMMSFRVFTU QVMMSFRVFTU
#FUB৴ CJUSJTF (JU)VC J5VOFT $POOFDU 5FTU'MJHIU $SBTIMZUJDT 5FTUFS %FTJHOFS 0UIFST
%FWFMPQFS IPPL EFMJWFSZ QVMMSFRVFTU QVTI NFSHF
#FUB৴ CJUSJTF (JU)VC J5VOFT $POOFDU 5FTU'MJHIU $SBTIMZUJDT 5FTUFS %FTJHOFS 0UIFST
%FWFMPQFS IPPL EFMJWFSZ QVMMSFRVFTU ܧଓత EFMJWFSZ ରϒϥϯνҎԼ NBTUFS RB RBYYYY
#FUB৴ CJUSJTF (JU)VC J5VOFT $POOFDU 5FTU'MJHIU $SBTIMZUJDT 5FTUFS %FTJHOFS 0UIFST
%FWFMPQFS IPPL EFMJWFSZ QVMMSFRVFTU 2"ظؒத EFMJWFSZ
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
4MBDL௨
2"ޮԽ
2"ޮԽ 2"σόοά༻ʹ༷ʑͳσ όοάϝχϡʔΛ༻ҙ
$16 ϝϞϦ༻දࣔ 2"ޮԽ
ϦϞʔτɺϩʔΧϧ௨ͷγ ϛϡϨʔτ 2"ޮԽ
6TFS%FGBVMUT ,FZDIBJO %# ը૾Ωϟογϡͷআ 2"ޮԽ
िؒʹԿճىಈͨ͠ͳͲͷ αʔϏεϢʔβ۠εςʔλ εΛมߋ 2"ޮԽ
Ξχϝʔγϣϯͷมߋ 2"ޮԽ
࠶ੜಈըͷCJUSBUF SFTPMVUJPO TFHNFOUϑΝ Πϧͷసૹ࣌ؒͳͲ"71MBZFS ͔ΒऔಘͰ͖ΔใΛશͯಈ ը্ʹPWFSMBZ 2"ޮԽ
ϩάग़ྗ֬ೝ 2"νʔϜͰʮJ04 $POTPMFʯͱ͍͏πʔϧͰ࣮ ػΛͭͳ͍Ͱ֬ೝ 2"ޮԽ
ͦͷଞ
νʔϜϥϯνษڧձʢִिʣ ΧϯϑΝϨϯεొஃ
։ൃ෩ܠ
·ͱΊ
·ͱΊ ։ൃεϐʔυͱΞϓϦͷ҆ఆੑɺ ίʔυ࣭Λอͬͨܧଓతͳ։ൃ ʹऔΓΜͰ͍·͢
5IBOLZPV
8F`SFIJSJOH IUUQTBCFNBHO[SBT