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
Rails歴==エンジニア歴の私の学び方 #omotesandorb #37 LT
Search
mikaji
August 02, 2018
Programming
0
91
Rails歴==エンジニア歴の私の学び方 #omotesandorb #37 LT
#omotesandorb #37 のLT資料です。Railsを書いて3年経ったので自分の学び方を振り返りました。Railsだけでなく何にでも応用できる考え方です。
mikaji
August 02, 2018
Tweet
Share
More Decks by mikaji
See All by mikaji
はじめてのユーザーインタビューでのしくじり、良かった話 #sdevtalks #3
mikaji
3
1.1k
「同じ開発はしない」 若手エンジニアLT@basic.inc
mikaji
0
120
「Railsを学び、現場に入るまで」 Rails Developers Meetup 2017 LT
mikaji
2
2.6k
Other Decks in Programming
See All in Programming
GoとPHPのインターフェイスの違い
shimabox
2
210
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
120
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
950
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
410
バッチを作らなきゃとなったときに考えること
irof
2
550
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1k
Ça bouge du côté des animations CSS !
goetter
2
160
TCAを用いたAmebaのリアーキテクチャ
dazy
0
220
CloudRun, Spanner に対する負荷試験の反省と オブザーバビリティによるアプローチ
oyasumipants
1
120
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
130
SwiftUI Viewの責務分離
elmetal
PRO
2
280
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Designing for humans not robots
tammielis
250
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Music & Morning Musume
bryan
46
6.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Visualization
eitanlees
146
15k
The Cult of Friendly URLs
andyhume
78
6.2k
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Transcript
Railsྺ==ΤϯδχΞྺ ͷࢲͷֶͼํ Thu, 02 Aug 2018 @mikaji #omotesandorb #37
ࣗݾհ • GitHub: @mikaji • Twitter: @mikaji_jp • ձࣾ: גࣜձࣾϦΫϧʔτϚʔέςΟϯάύʔτφʔζ
৽ଔ2 • Railsྺ: 3 (Rails3~5ܥ) • ॳ දࢀಓ.rb!!☺ • ࠷ۙYouTuberͬͯ·͢ https://www.youtube.com/c/mikaji
΅͘ͱ Ruby RailsͷؔΘΓΛ ͠·͢
͢͜ͱ • ະܦݧ͔ΒͲ͏ֶΜͰ͍͔ͬͨ • ࣮ମݧʹΑΔֶͼํͷྑ͔ͬͨɾѱ͔ͬͨ • ࠷ۙͷΩϟονΞοϓํ๏
ରऀ • WebΞϓϦΛॻ͍ͨ͜ͱ͕ͳ͍ਓ • RailsΞϓϦΛॻ͍ͨ͜ͱ͕ͳ͍ਓ • ݸਓͰܦݧ͋Δ͚ͲϓϩδΣΫτͰRailsΞϓ Ϧॻ͍ͯͳ͍ਓ
ֶੜ࣌ • ใֶΛઐ߈͍͕ͯͨ͠WebΞϓϦॻ͍ͨ͜ ͱͳ͍ • ݚڀࣨͰϚΠίϯ͍ͬͨ͡Γ౷ܭֶֶΜͩΓ • ॻ͍ͯͨݴޠ: C, C++,
Java, Scheme, Prolog, Haskell, etc… Rubyॻ͍ͨ͜ͱͳ͔ͬͨ
1. Θ͚͕Θ͔Βͳͯ͘ Rails TutorialΛ पճϓϨΠ͢Δ
Rails TutorialΛແ৺ͰΔ • MVCͷׂ͕Θ͔Βͳͯ͘Δ • ηογϣϯཧ͕Θ͔Βͳͯ͘Δ • ͱʹ͔͘ॻ͘͜ͱ͕େࣄ ΅͘3पͰ ྗਚ͖·ͨ͠
2. WebΛࢧ͑Δٕज़Λ ಡΉ
ಡΈ໊͍͢͠ஶ Ͱ͢
WebΛࢧ͑Δٕज़ͷྑ͍ͱ͜Ζ • HTTPͷΈ͕Θ͔Δ • Railsͱਂ͍ؔͷRESTͷ֓೦Λ͓͑͞ΒΕΔ • RailsͷϦιʔεઃܭͷΠϝʔδ͕͍ͭͯ͘Δ
3. RailsͬͯΔϓϩδΣ ΫτʹೖΔ
RailsͬͯΔϓϩδΣΫτʹೖΔ • MVCͷׂΛҙࣝ͢Δ • ActiveRecordʹ৮ΕΔ ϩάʹు͔ΕΔΫΤϦͷΈཱͯோΊΔͱ ߹ΘͤͯSQLຊ… • ଞਓͷίʔυͷॻ͖ํ͕Θ͔Δ ʢ͋ΔػೳΛ࡞Γ͍ͨͱ͖Ͳ͏࣮͍͔ͯ͘͠ʣ
4. ϝϯλʔΛݟ͚ͭΔ
ϝϯλʔ͕େͳཧ༝ • ࠓͷ͕ࣗཧղͰ͖͍ͯͳ͍ͱ͜Ζ͕Θ͔Δ ϨϏϡʔͰϘίϘίʹ͞ΕΔͷྑ͍ܦݧ • ઃܭʹ໎ͬͨͱ͖ٞͰ͖Δ • ϖΞϓϩͰ͖Δ ΅͘ͷܦݧ্ͬͱޮՌ͕͋Γ·ͨ͠
5. Railsͷ͖ͳͱ͜Ζ Λݟ͚ͭΔ
Railsͷ͖ͳͱ͜Ζ • ֤ϨΠϠͷׂ͖Ε͍ͳઃܭɺΠϯλϑΣʔεʹڵຯΛ࣋ͭΑ͏ʹ ͳͬͨ ⏩ͬͱΓ͍ͨʂ PofEAADDDͷཧղ͕૿͢ rails newͨ͠ͱ͖ʹੜ͞ΕΔͷҎ֎ͷύλʔϯΛΔ (FormObject, ServiceObject
…) ৄ͘͠#railsdmͰLTͨ͠ࢿྉΛ…ʂ • Ͳ͜Ͱྑ͍ͷͰ͖ͳ෦Λݟ͚ͭΔͱ͙ͬͱֶͼ͕ ਂ͘ͳΓ·͢
6. ࠷৽ͷRailsΛ͏
ใʹຖϙετ͞ΕΔ
࠷ۙͷΩϟονΞοϓํ๏ • ϠΪψϚ৽ฉΛಡΉ (#railsdmͰऔΓೖΕͨ) ຖslackʹྲྀͯ͠ࣄલͷ՝ʹ͍ͯ͠·͢ • RailsͷϦϙδτϦͷissue͑ΔͱϕλʔʢͰ͖ ͯͳ͍ʣ • ࠷ॳͬͯΔgemͷιʔείʔυோΊΔͰྑ͍
ͱࢥ͍·͢(OSSʹͭͳ͕Γ·͢)
·ͱΊ • ॳΊͱʹ͔͘ॻ͖·͠ΐ͏ • ଞਓΛר͖ࠐΈ·͠ΐ͏ʢϝϯλʔɺษڧձͰ ൃදʣ • ৗʹมԽʹରԠ͍͖ͯ͠·͠ΐ͏