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
AndroidエンジニアがRailsにチャレンジしてる理由
Search
きりみん
June 26, 2020
Programming
1
1.5k
AndroidエンジニアがRailsにチャレンジしてる理由
きりみん
June 26, 2020
Tweet
Share
More Decks by きりみん
See All by きりみん
What are AtCoder and competitive programming
kirimin
0
9.9k
バーチャル男声幼女プログラマーとして活動した1年間の振り返り
kirimin
0
1k
アプリエンジニアでも神絵師になりたい!
kirimin
4
5.4k
Watashi ni Kotlin ga maiorita
kirimin
0
510
NEMのAPIとモザイクであそぼう
kirimin
0
370
はじめようきれいなコード
kirimin
8
3k
Material Components for Android触ってみる
kirimin
7
1.9k
[社内LT]あたらしいMaterial Design
kirimin
1
1.7k
Hello-kirimin-chan
kirimin
0
130
Other Decks in Programming
See All in Programming
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.6k
AHC041解説
terryu16
0
590
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
110
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
730
Rails アプリ地図考 Flush Cut
makicamel
1
110
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
41
15k
Software Architecture
hschwentner
6
2.1k
Amazon Bedrock Multi Agentsを試してきた
tm2
1
280
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
110
昭和の職場からアジャイルの世界へ
kumagoro95
1
350
ペアーズでの、Langfuseを中心とした評価ドリブンなリリースサイクルのご紹介
fukubaka0825
2
300
DROBEの生成AI活用事例 with AWS
ippey
0
130
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Done Done
chrislema
182
16k
Building Applications with DynamoDB
mza
93
6.2k
GitHub's CSS Performance
jonrohan
1030
460k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Transcript
AndroidΤϯδχΞ͕ RailsʹνϟϨϯδͯ͠Δཧ༝ ઓ͍͜Ε͔Βͩฤ @kirimin 2020/06/26
ࣗݾհ • ͖ΓΈΜ͞ΜͱݺΕ͍ͯΔਓͰ͢ɻ • ϑϦʔϥϯεͰ4݄͔ΒۀҕୗͰೖΓ·ͨ͠ • ৽ଔҎདྷ8͘Β͍ͣͬͱ΄΅Android͖ͬͯ·ͨ͠ • αʔόʔαΠυ΄΅ૉਓͰ͕͢AndroidλεΫ͜ͳ͠ͳ͕Βαʔ όʔαΠυ৮ΒͤͯΒ͏ͱ͍͏ਆܖΛ͍͖ͯͨͩ͠·ͨ͠
εΩϧηοτ • Android։ൃେখ༷ʑͳ৫Ͱ͍Ζ͍Ζ͖ͬͯ·ͨ͠ • ٕज़ΤϯτϦॻ͍ͨΓLTͨ͠Γొஃͨ͠Γͯ͠AndroidίϛϡχςΟͰΘΓͱϫΠϫΠ ͬͯ·ͨ͠ • େଔ͡Όͳ͍͚ͲҰԠجຊతͳCSͷࣝ͋Δ • ίʔυઃܭͱ͔νʔϜ։ൃؔ࿈ͳͲͷ༗໊ͳٕज़ॻҰ௨ΓಡΜͰΔ
• ϞμϯϑϩϯτΤϯυͪΐͬͱͰ͖Δ • ΠϯϑϥɺωοτϫʔΫɺDB·ΘΓऑ͍ • ࠷ۙڝϓϩ͕झຯͰଟগΞϧΰϦζϜܭࢉྔʹৄ͘͠ͳͬͨ
ͳͥόοΫΤϯυΛΓ͍ͨͷ͔
AndroidΤϯδχΞதͷةػ • 20લ • ࣄ࢝Ίͨ࣌ظͱεϚϗ։ൃ͕ීٴͨ࣌͠ظ͕߹͍ͬͯͨͷͰए͍ ࠒ৽͘͠ग़ͯ͘ΔͷΛΩϟονΞοϓ͢ΕධՁ͞Εͨ • ϞόΠϧ։ൃʹߜͬͯษڧ͢Δ͜ͱ͕ͨ͘͞Μ͋ͬͨ • ϞόΠϧ։ൃʹٕज़తͳ՝ײ͕ͨ͘͞Μ͋ͬͨ
• ·ͩ·ͩए͍͠ಘҙͳ͜ͱΛͬͯධՁ͞Ε͔ͨͬͨ
AndroidΤϯδχΞதͷةػ • 20ޙ(͜ͷ) • ϞόΠϧͷ։ൃڥ͕ރΕ͖ͯͯେ͖ͳٕज़తτϐοΫ͕গͳ͘ͳͬͨ • ΞϓϦ։ൃʹٕज़తͳ՝Λ͋·Γײ͡ͳ͘ͳͬͨ(ΦʔόʔΤϯδχΞϦϯάͷؔ৺ͷԼɺ͍ͩ ͍ͨͷ՝࣮Ҏ֎) • ϞόΠϧ։ൃ͚ͩͰʹٕͭ͘ज़ͷ෯ʹݶք͕͋Δ
• ΠϯϑϥωοτϫʔΫͳͲ͋·Γ৮Βͳ͍ • ෳࡶͳϩδοΫେ͖ͳσʔλΛॲཧ͢ΔΑ͏ͳίʔυ͋·Γॻ͔ͳ͍ • ϞόΠϧͰDBΛૢ࡞͢Δ͜ͱ͋·Γͳ͍ • ͜ͷٕज़తʹ͍ͯ͠ͳ͍ؾ͕͖ͯͨ͠
͜ͷ··ͣͬͱ ϞόΠϧ։ൃ͚͍ͩͬͯ͘ͷ͔ʁ
Ұͷਓੜͬͱ͍Ζ͍Ζͳ͜ͱΛΓ͍ͨ • Γ߹͍ʹ૬ஊ͢ΔͱʮࠓͷڧΈΛ׆͔ͨ͠ํ͕ಘͰʯͱ͍͏ҙݟ ͕ଟ͔ͬͨ • ͔ͨ͠ʹAndroidʹͬͱಛԽ͍ͯ͘͠ಓϞόΠϧʹৄ͍͠EMٕ ज़ސΈ͍ͨͳΩϟϦΞ͋Δ • ͔ͬ͠͠ͱٕज़ྖҬʹͱΒΘΕͣ໘നͦ͏ͳ৬छϓϩμΫτʹ ઓͰ͖ΔΑ͏ʹͳΓ͍ͨ
• ·ͩ·ͩࢥ͍ඳ͘ཧͷΤϯδχΞ૾ʹରͯࣗ͠ʹຬ͍ͯ͠ͳ͍
ࢹΛ͛ΔͨΊʹ ·ͣόοΫΤϯυͷ ܦݧΛੵΈ͍ͨʂ
ͬͯ͜ͳ͔ͬͨޙչ • ۀ΄΅ະܦݧͰࣄͤͯ͘͞ΕΔҊ݅ͳΜͯ΄ͱΜͲͳ͍ • ಛʹϑϦʔϥϯεଈઓྗ͕ٻΊΒΕΔ͠ҭͯͯΒ͏ͷͰͳ͍ • ࠓ·ͰʹͬͱΞϐʔϧ͢ΕAndroidҎ֎ΕΔػձ͕͋ͬͨͷ ʹΒͳ͔ͬͨ͜ͱͷޙչ • ؾ͍͕ͮͨ࣌Ұ൪ૣ͍࣌
• ͱ͍͏Θ͚Ͱ༗Γ͍͜ͱʹRailsΛ৮ΒͤͯΒ͍ͬͯ·͢
ࣄલʹͬͨ͜ͱ • N༧උߍͱ͍͏αʔϏεͷWebΞϓϦίʔεΛधཁ • ϓϩάϥϛϯάೖऀ͚͚ͩͲ͔ͳΓ࣮ફతͰηΩϡϦςΟͷղઆͳͲ͔ͬ͠Γͨ͠༰ • ࠷ऴతʹnode.jsΛͬͯௐ͞ΜΈ͍ͨͳΞϓϦΛ࡞Δ • ࣗྗͰWebΞϓϦΛ࡞ͬͯΈΔ •
KotlinͷܰྔϑϨʔϜϫʔΫKtorΛͬͯϩάΠϯػೳ͖ͭܝࣔ൘Λ࣮ • ϑϩϯτReactͰόοΫΤϯυAPIαʔόʔͱͯ͠։ൃ • Ruby on Rails5श࣮ફΨΠυಡྃ
࣮ફͰײͨ͜͡ͱ • όοΫΤϯυݸਓنͱେ͖ͳαʔϏεͰඞཁͳ͕ࣝશવҧ͏ • ϞόΠϧͷ߹େنαʔϏεͰݸਓ։ൃͰٕज़ελοΫࣗମมΘΒͳ͍ • AWSɺDockerɺΫϥυΠϯϑϥपΓͷ͕ࣝશવΓͳ͍ʂ • ϩʔΧϧͰͷڥߏங͢Βෆ׳Εɺࣄલʹগ͠ݸਓͰͬͯͨͷ͕ٹ͍ͩͬͨ •
RailsڭຊͱݱϨϕϧͰઃܭॻ͖ํ͕શવҧ͏ • ಈతܕ͚ݴޠͷίʔυಡΈղ͘ͷΉ͔͍ͣ͠ʂʂʂʂʂ • ੲษڧͨ͠SQLͷࣝ΄ͱΜͲԱ͑ͯͳ͍…
ϝϯλʔͷ͋Γ͕ͨ͞ • ͻͨ͢ΒίʔυΛͬͨΓάάͬͨΓͯ͠ΜͰ͍Δ͜ͱ͕ϖΞϓϩ ͳͲͰࢦೆͯ͠Β͑ΔͱҰؾʹղܾ͢Δ • ಠֶ͢Δʹਖ਼ղΛڭ͑ͯΒ͑Δͱ͕͔Γ͕͔ͭΈ͍͢ • ͱʹ͔࣮͘ફೖ͞ΕΔ͜ͱͰಠֶͰಘΒΕͳ͍࣮ͷײ֮ࣗ৴ ͕ಘΒΕΔ
ࠓޙ • ͍͏ͯ·ͩҰͭҊ݅Γͬͯͳ͍ • ͘ઓྗʹͳΓ͍ͨ • ࠓޙͱΑΖ͓͘͠Ͷ͕͍͠·͢