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
Architecture_for_mobile_development.pdf
Search
itome
March 14, 2019
Technology
0
240
Architecture_for_mobile_development.pdf
itome
March 14, 2019
Tweet
Share
More Decks by itome
See All by itome
Android accessibility and automated check tools
itome
1
4.4k
Accessibility in CATS
itome
4
2.2k
Introduce_Owl.pdf
itome
0
77
Introducing Android Accessibility Test with Accessibility Testing Framework
itome
1
550
Introduction of accessibility for mobile development
itome
0
220
Android_Accessibility_Suite.pdf
itome
0
130
Introducing Owl
itome
0
980
Migrate to Koin
itome
2
290
Use MVI Architecture in Kotlin × Android
itome
1
1.3k
Other Decks in Technology
See All in Technology
Algyan イベント振り返り
linyixian
0
200
日本におけるデータエンジニアリングのこれまでとこれから
foursue
14
3.9k
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
840
生産性向上チームの紹介
cybozuinsideout
PRO
1
830
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.7k
オーナーシップを持つ領域を明確にする
konifar
13
3k
長期運用プロジェクトでのMySQLからTiDB移行の検証
colopl
2
800
最近たまに見かけるTiDBってなんだ? - Findy
pingcap0315
2
730
4年前、あるじゃん老害エンジニアLT合戦に登壇、米国西海岸コンピュータ歴史博物館体験記の続編
toshi_atsumi
0
220
Databricks における 『MLOps』
databricksjapan
2
160
データベース02: データベースの概念
trycycle
0
130
本当のAWS基礎
toru_kubota
0
320
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
658
120k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
18
1.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
115
18k
The Power of CSS Pseudo Elements
geoffreycrofte
59
5k
GraphQLとの向き合い方2022年版
quramy
31
12k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Rebuilding a faster, lazier Slack
samanthasiow
72
8.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
258
12k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Visualization
eitanlees
135
14k
Agile that works and the tools we love
rasmusluckow
324
20k
How STYLIGHT went responsive
nonsquared
92
4.8k
Transcript
ϞόΠϧ։ൃͷͨΊͷ ΞʔΩςΫνϟೖ @AbemaTV Hack
2 About me ௩ຊࢤ https://twitter.com/itometeam https://github.com/itome https://medium.com/@itometeam 0.5min
ΞʔΩςΫνϟͬͯͳʹʁ 5min
4 ΞʔΩςΫνϟͬͯͳʹʁ 5min ΞʔΩςΫνϟ(ઃܭ)ʹͨ͘͞Μͷҙຯ͕͋Δ ɾCPUͳͲϋʔυΣΞͷ੍ޚͷํࣜͱͯ͠ͷΞʔΩςΫνϟ ɾωοτϫʔΫͷΞʔΩςΫνϟ ɾιϑτΣΞͷΞʔΩςΫνϟ ɾ…etc ←ࠓ͜͜ʹ͍ͭͯ͠·͢
5 ΞʔΩςΫνϟͬͯͳʹʁ 5min ͦͷ·͑ʹ
6 ΞʔΩςΫνϟͬͯͳʹʁ 5min ͦͦΞʔΩςΫνϟͬͯ Ͳ͏ͯ͠ඞཁͳΜͩΖ͏ʁ
ΞʔΩςΫνϟ͕ਁಁ͢Δલͷ ιϑτΣΞ։ൃ 3min
8 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ͱͱϓϩάϥϛϯάʹଟ͘ͷϕετɾ ϓϥΫςΟεʢεϜʔζͳ։ൃɾอकɾӡ༻ ͷͨΊʹकΔ͖ϧʔϧʣ͕͋Δ
9 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ྫ͑ɿ ׂ౷࣏ʢDivide and Conquerʣ ͦͷ··Ͱղܾ͢Δ͜ͱ͕͍͠ʮେ͖ͳʯɺ ͍͔ͭ͘ͷʮখ͞ͳʯʹׂͯ͠ɺݸผʹղܾ͢Δ
10 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ྫ͑ɿ ಉܕݪཧʢIsomorphism Principleʣ ʮܗʹͩ͜ΘΔʯͱ͍͏ݪཧɺຊ࣭తʹಉ͜͡ͱιʔείʔυͰ ಉ͡Α͏ʹѻ͏͜ͱͰʮҟʯΛཱͪ͘͢͢Δɻ
11 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ྫ͑ɿ ઢܗݪཧʢLinearity Principleʣ ॲཧͷྲྀΕΛઢʹ͢Δݪଇɻ͋Δػೳ͍͔ͭ͘ͷখ͞ͳػೳΛ ઢతʹॏͶ߹Θ࣮ͤͯݱ͢Δͷ͕Α͍ɻ
12 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ྫ͑ɿ ୯Ұݪଇ มߋ͢Δཧ༝͕ಉ͡ͷूΊɺมߋ͢Δཧ༝͕ҧ͏ͷ ͚Δݪଇɻ1ͭͷϞδϡʔϧɺΫϥεؔʹมߋ͢Δཧ༝͕ ̎ͭҎ্͍͚͋ͬͯͳ͍ɻ
13 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ଞʹɿ DRYݪଇ KISSݪଇ ڽूɾ݁߹ݪଇ ։์ɾดݪଇ ݁ՌͷہॴԽ ܁Γฦ͠ͷ࠷খԽ
ϩδοΫͱσʔλͷҰମԽ ରশੑݪଇ ϙϦϞʔϑΟζϜ ใͷӅṭ ΧϓηϧԽ શੑɾॆੑɾϓϦϛςΟϒ ؔ৺ͷ ϙϦγʔͱ࣮ͷ ࢀরͷҰੑ ςετ༰қੑ ୯७ݪཧ ໌ূݪཧ ڻ͖࠷খͷݪଇ ੑ ࢀরಁաੑ ݆ͷݪଇ ϘʔΠεΧτϧʔϧ GOFσβΠϯύλʔϯ σϧϝϧͷ๏ଇ SOLIDݪଇ ҆ఆੑͷݪଇ ֊ݪཧ ґଘੑٯసͷݪଇ ૬ޓӡ༻ੑ ࠶ར༻ ΠϯλʔϑΣ ަੑ ܖʹΑ ޚతϓ Ӫ δϣ
14 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ୯ҰػೳͷΞϓϦέʔγϣϯɺঢ়ଶͷগͳ͍ΞϓϦέʔγϣϯͰ͋Ε ͜ΕΒͷݪଇʹै͏͜ͱͰมߋʹڧ͍ΫϦʔϯͳίʔυ͕ॻ͚Δ
15 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ͔࣌͠͠ྲྀΕɻɻɻ
16 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ΞϓϦέʔγϣϯΑΓଟػೳʹ ΞϓϦέʔγϣϯͷঢ়ଶΑΓෳࡶʹ ɾϝοηʔδػೳ ɾ௨ػೳ ɾࣸਅɺಈըࡱӨ ɾܾࡁػೳ ɾϝσΟΞͷ࠶ੜ
ɾݸਓؒૹۚ ɾը૾ิਖ਼ ɾϩάΠϯ͍ͯ͠Δʁ ɾܾࡁใొ͞Ε͍ͯΔʁ ɾ௨ڐՄ͍ͯ͠Δʁ ɾ֎෦αʔϏε࿈ܞ͍ͯ͠Δʁ
17 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ։ൃͷෳࡶԽʹΑ͍ͬͯΖΜͳ͕ग़ͯ͘Δ ɾͨΓతͳ࣮ͰϕετɾϓϥΫςΟε͔Β֎Εͯ͠·͏͜ͱ͕ଟ͍ ɾνʔϜ։ൃͰɺϝϯόʔͷٕज़ྗʹΑͬͯίʔυͷ࣭ʹ͕ࠩग़Δ ɾٕज़ྗʹ͕ࠩͳͯ͘ɺϓϩδΣΫτશମͰॻ͖ํ͕౷ҰͰ͖ͳ͍
18 ΞʔΩςΫνϟ͕ਁಁ͢ΔલͷιϑτΣΞ։ൃ 3min ϓϩδΣΫτશମͰઃܭΛ౷Ұ͠Α͏ʂ ͞Βʹͦͷઃܭʹै͏͚ͩͰɺϕετϓϥΫςΟεͳ։ൃ ͕Ͱ͖ΔΑ͏ʹϧʔϧΛܾΊΑ͏ʂ MVCɺFluxͳͲͷΞʔΩςΫνϟ͕ొ
19 ΞʔΩςΫνϟͬͯͳʹʁ 5min ؓٳ
20 ΞʔΩςΫνϟͬͯͳʹʁ 5min ΞʔΩςΫνϟͱ طଘͷϕετɾϓϥΫςΟεʹଇͬͨɺ ϓϩδΣΫτશମͷ࣮ύλʔϯͷ͜ͱ
21 ΞʔΩςΫνϟͬͯͳʹʁ 5min ౷Ұ͞ΕͨΞʔΩςΫνϟΛಋೖ͢Δ͜ͱͰ ɾΞʔΩςΫνϟͷϧʔϧʹैͬͯ։ൃΛ͢Εɺ ɹطଘͷϕετɾϓϥΫςΟεΛҙࣝ͠ͳͯ͘ʢ͋Δ͍Βͳͯ͘ʣ ɹมߋʹڧ͍ΫϦʔϯͳίʔυΛॻ͚ΔΑ͏ʹͳΔ ɾ։ൃνʔϜͷ୭͕ॻ͍ͨίʔυͰɺ ɹଞͷਓ͕؆୯ʹಡΊΔɺ·ͨमਖ਼ΛͰ͖ΔΑ͏ʹͳΔ
దͳΞʔΩςΫνϟબఆͷίπ 3min
23 దͳΞʔΩςΫνϟબఆͷίπ 3min ɾͲͷΞʔΩςΫνϟΛબͿ͔ʹਖ਼ղɾෆਖ਼ղͳ͍ ɾجຊతʹͲΜͳΞʔΩςΫνϟͰɺ ɹͲΜͳΞϓϦέʔγϣϯ։ൃ͕Ͱ͖Δɻ
24 దͳΞʔΩςΫνϟબఆͷίπ 3min ΞʔΩςΫνϟΛߟ͑Δͱ͖ʹߟྀ͢Δ͜ͱ ɾΞϓϦέʔγϣϯͷෳࡶ͞ ɾ։ൃνʔϜͷਓɾٕज़ྗ ɾσϑΝΫτελϯμʔυͳ࣮
25 దͳΞʔΩςΫνϟબఆͷίπ 3min ΞʔΩςΫνϟΛߟ͑Δͱ͖ʹߟྀ͢Δ͜ͱ ɾΞϓϦέʔγϣϯͷෳࡶ͞ ɾ։ൃνʔϜͷਓɾٕज़ྗ ɾσϑΝΫτελϯμʔυͳ࣮
26 దͳΞʔΩςΫνϟબఆͷίπ 3min ɾΞϓϦέʔγϣϯͷෳࡶ͞ γϯϓϧͳΞϓϦ։ൃͰ͋Εɺίʔυ͕ʹͳΓ͍͢Flux ͳͲͷΞʔΩςΫνϟΑΓɺMVCMVVMͷ΄͏͕ૣ͘։ൃ͕Ͱ͖Δ ҰํɺFluxReduxɺMVIͷΑ͏ͳΞʔΩςΫνϟίʔυͷ੍͕ ڧ͍ͨΊɺେنͳ։ൃͰഁͮ͠Β͍ ͨͩ͠ɺίʔυৗʹෳࡶԽ͍ͯ͘͠ͷͳͷͰɺݟۃΊ͕ඞཁ
27 దͳΞʔΩςΫνϟબఆͷίπ 3min ΞʔΩςΫνϟΛߟ͑Δͱ͖ʹߟྀ͢Δ͜ͱ ɾΞϓϦέʔγϣϯͷෳࡶ͞ ɾ։ൃνʔϜͷਓɾٕज़ྗ ɾσϑΝΫτελϯμʔυͳ࣮
28 దͳΞʔΩςΫνϟબఆͷίπ 3min ɾ։ൃνʔϜͷਓɾٕज़ྗ ։ൃϝϯόʔ͕ଟ͍͚ΕɺΞʔΩςΫνϟʹΑΔ੍͕ڧ͍ํ͕Α͍ ΞʔΩςΫνϟͷ֓೦ࣗମ͕͍͠߹ɺϝϯόʔશһ͕ͦΕΛशಘ͢Δ ίετ։ൃͷʹؚ·ΕΔɻ ։ൃϝϯόʔͷେ෦͕׳Ε͍ͯΔΞʔΩςΫνϟ͕͋ΕɺͦΕΛ ·ͣݕ౼͢Δ
29 దͳΞʔΩςΫνϟબఆͷίπ 3min ΞʔΩςΫνϟΛߟ͑Δͱ͖ʹߟྀ͢Δ͜ͱ ɾΞϓϦέʔγϣϯͷෳࡶ͞ ɾ։ൃνʔϜͷਓɾٕज़ྗ ɾσϑΝΫτελϯμʔυͳ࣮
30 దͳΞʔΩςΫνϟબఆͷίπ 3min ɾσϑΝΫτελϯμʔυͳ࣮ Ͱ͖Δ͚ͩελϯμʔυͳΞʔΩςΫνϟΛબΜͩํ͕ɺϥΠϒϥϦ͕ ॆ࣮͍ͯͨ͠ΓɺυΩϡϝϯτStack OverflowͷճͳͲͷࣝʹ ΞΫηε͍ͨ͢͠ΊΑ͍ AndroidͰ͋ΕMVVM͕ެࣜʹαϙʔτ͞Ε͍ͯΔɻiOSʹެࣜͷ ࣮ͳ͍͕ɺClean
ArchitectureFluxʹΑΔ࣮ྫ͕ଟ͍
31 దͳΞʔΩςΫνϟબఆͷίπ 3min Ҏ্ͷΑ͏ͳߟྀ͖͢ΛΫϦΞͰ͖͍ͯΕɺ جຊతʹԿΛબΜͰͳ͍
32 దͳΞʔΩςΫνϟબఆͷίπ 3min ͨͩ͠ɺෳͷઃܭΛࠞͥͳ͍Α͏ʹ͢Δ A͞Μ B͞Μ Flux͕͖ͳͷͰɺࣗͷϩάΠϯը໘ FluxΛ࠾༻͠·͢ʂ MVCʹ׳Ε͍ͯΔͷͰɺͷ୲͍ͯ͠Δ ϓϩϑΟʔϧը໘MVCΛͱʹઃܭ͠·͢ʂ
33 దͳΞʔΩςΫνϟબఆͷίπ 3min ͨͩ͠ɺෳͷઃܭΛࠞͥͳ͍Α͏ʹ͢Δ A͞Μ B͞Μ B͞Μͷίʔυ͕ಡΊͳ͍ɻɻɻ A͞Μͷίʔυ͕ಡΊͳ͍ɻɻɻ C͞Μ A͞Μͷ୲ՕॴͱB͞Μͷ୲Օॴʹ
ಉ͡Α͏ͳमਖ਼Λ͍ͨ͠ͷʹ ઃܭ͕શ͘ҧ͍ͬͯ͠ɻɻɻ
͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min
35 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
36 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
37 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC Model View Controller ΞϓϦέʔγϣϯͷϩδοΫΛ୲͢Δ ը໘ͷඳըΛ୲͢Δ Model
- ViewͷؒʹཱͬͯͦΕͧΕͷೖग़ྗΛ நԽ͢Δ ex) View͔Βड͚औͬͨΫϦοΫΠϕϯτΛ ɹʮσʔλΛऔಘ͍ͨ͠ʯͱ͍͏ϦΫΤετͱͯ͠ ɹ ModelʹૹΔ
38 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ϝϦοτ σϝϦοτ ModelʹϩδοΫͷॲཧΛͤΔ ͜ͱͰɺView͕ංେԽͮ͠Β͘ͳΔ Controller͕ؒʹཱͭ͜ͱʹΑͬͯ ModelͱView͕ૄ݁߹ʹͳΔ
֤෦ΛͲ͏࣮͢Δ͔݁ہ ͦΕͧΕͷ࣮ऀʹҕͶΒΕ͍ͯΔ Ͳ͜ʹॻ͚͍͍͔ܾΊΒΕ͍ͯͳ͍ ͜ͱ͕ଟ͍
39 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
40 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVVM ModelɾView ViewModel MVCͱಉ͡ Viewͷঢ়ଶཧɺߋ৽Λߦ͏ Viewͷঢ়ଶͱViewModelͷঢ়ଶৗʹ ಈዲ͞Ε͍ͯͯɺViewModelͷߋ৽͙͢ʹ
Viewʹө͞ΕɺΫϦοΫͳͲͷViewͷΠϕϯτ ViewModelܦ༝ͰModelʹ͑ΒΕΔ
41 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVVM https://qiita.com/rmakiyama/items/779cf6407f70b40e4ee7 ΑΓ
42 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVVM ϝϦοτ σϝϦοτ ViewModelͷঢ়ଶΛߋ৽͢Δ͚ͩͰ ࣗಈతʹView͕ߋ৽͞ΕΔͨΊɺ Viewͷঢ়ଶཧ͕Θ͔Γ͍͢ ViewModel
- Viewͷঢ়ଶΛSync ͤ͞ΔΈ͕ඞཁ (RxʹΑΔঢ়ଶมߋ௨ͳͲ) ViewModel͕ංେ͍͢͠
43 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
44 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾClean Architecture https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html ΑΓ
45 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾClean Architecture MVCͳͲͷΞʔΩςΫνϟΛ ϨΠϠʔ͝ͱͷΛ໌֬Խͯ͠ ࠶ઃܭͨ͠ͷ σʔλͷྲྀΕৗʹ ʮ֎ˠˠ֎ʯͱͳΔΑ͏ʹ
ઃܭ͞Ε͓ͯΓɺUseCase͕ σʔλͷྲྀΕͷؒʹཱͬͯ ϩδοΫΛׂ͢Δ
46 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾClean Architecture ϝϦοτ σϝϦοτ ֤ϨΠϠʔͷ͕໌֬ͳͨΊɺ ԿΛͲ͜ʹॻ͔͕࣮͘ऀʹΑͬͯ มΘΔ͜ͱ͕গͳ͍
DDD(υϝΠϯۦಈઃܭ)Λͱʹ ͍ͯ͠ΔͨΊɺClean Architecture Ͱྑ͍ίʔυΛॻ͘ʹDDDͷࣝ ͕ඞཁʹͳΔ UseCase͕ॲཧΛࡉ͔͘ ׂ͢ΔͨΊɺϩδοΫͷ࠶ར༻ੑ͕ ߴ·Δ
47 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
48 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾFlux https://facebook.github.io/flux/ ΑΓ
49 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾFlux ୯ํσʔλϑϩʔͷදతͳ ΞʔΩςΫνϟ ΞϓϦέʔγϣϯͷঢ়ଶStoreͷΈʹ Αͬͯཧ͞ΕɺͦΕҎ֎Storeͷঢ়ଶΛ ߋ৽͢ΔͨΊͷϞδϡʔϧ ঢ়ଶͷߋ৽ඞͣ
View → Action → Dispatcher → Store ͷॱʹσʔλ͕ྲྀΕΔ͜ͱͰߦΘΕΔ
50 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾFlux ϝϦοτ σϝϦοτ ঢ়ଶ͕Storeʹू͞ΕΔͨΊ ཧ͕͍͢͠ ಉظతͳঢ়ଶߋ৽Λجຊʹ ͍ͯ͠ΔͨΊɺ௨৴ͳͲͷඇಉظ
ॲཧͱͷ࿈ܞʹ͕ඞཁ ΞʔΩςΫνϟϨϕϧͰςετ༰қੑ ͕ߟ͑ΒΕ͍ͯΔ ঢ়ଶͷߋ৽͕Actionͱ݁ͼͭͨ͘Ί ͲͷΑ͏ͳঢ়ଶߋ৽͕͋Δ͔Λ Ұཡ͍͢͠
51 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVC ɾMVVM ɾClean Architecture ɾFlux ɾMVI ࠓհ͢ΔΞʔΩςΫνϟ
52 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVI
53 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVI Fluxͱಉ༷ʹ୯ํσʔλϑϩʔͷ ΞʔΩςΫνϟ Intent, Action, Result, Stateͱ͍͏
σʔλͱɺಁաతͳؔͷΈͰ࣮ ͢Δ
54 ͍Ζ͍ΖͳΞʔΩςΫνϟͷհ 6min ɾMVI ϝϦοτ σϝϦοτ ঢ়ଶߋ৽ͷϩδοΫͷࢀরಁաੑ ͕୲อ͞Ε͍ͯΔͨΊɺςετ͕ ॻ͖͍͢ FluxΑΓ֤Ϟδϡʔϧͷׂ͕
ࡉԽ͞Ε͍ͯΔͨΊɺ ࣮ऀʹΑΔίʔυͷϒϨ͕গͳ͍ ϘΠϥʔϓϨʔτ͕ଟ͘ɺ؆୯ͳ࣮Λ ͢Δ͚ͩͰଟ͘ͷίʔυΛॻ͘ඞཁ͕ ͋Δ
·ͱΊ 2min
56 ·ͱΊ 2min ΞʔΩςΫνϟʹۜͷؙͳ͍ దͳΞʔΩςΫνϟʹଇͬͯ։ൃΛߦ͏͜ͱͰɺ ϓϩάϥϛϯάͷϕετϓϥΫςΟεΛϓϩδΣΫτશମͰकΔ͜ͱ͕Ͱ͖Δ ΞʔΩςΫνϟͷઃܭطଘͷΞʔΩςΫνϟͷબʹ ϕετϓϥΫςΟεΛΔ͜ͱ͕େ
57 ·ͱΊ 2min ͋Γ͕ͱ͏͍͟͝·ͨ͠ @AbemaTV Hack https://twitter.com/itometeam https://github.com/itome https://medium.com/@itometeam