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
87
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
「同じ開発はしない」 若手エンジニア
[email protected]
mikaji
0
110
「Railsを学び、現場に入るまで」 Rails Developers Meetup 2017 LT
mikaji
2
2.6k
Other Decks in Programming
See All in Programming
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
810
Google Sign-inの移行から始めるCredential Manager活用
clockvoid
0
310
Modern Angular with the NGRX Signal Store New Rules for Your Architecture @BASTA! 2024 in Mainz
manfredsteyer
PRO
0
140
エンジニア1年目で複雑なコードの改善に取り組んだ話
mtnmr
3
2k
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.7k
GraphQL あるいは React における自律的なデータ取得について
quramy
11
3k
実践!難読化ガイド
mitchan
0
200
マルチモジュールにおけるテスト最適化
fxwx23
0
210
Prompt Cachingは本当に効果的なのか検証してみた.pdf
ttnyt8701
0
530
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
9
2.4k
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
250
o1モデルのプロンプトエンジニアリングって?
ktc_wada
0
260
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
123
18k
Testing 201, or: Great Expectations
jmmastey
36
7k
In The Pink: A Labor of Love
frogandcode
139
22k
Bash Introduction
62gerente
608
210k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
166
48k
Automating Front-end Workflow
addyosmani
1365
200k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Atom: Resistance is Futile
akmur
261
25k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
Building Adaptive Systems
keathley
36
2.1k
Facilitating Awesome Meetings
lara
49
5.9k
Producing Creativity
orderedlist
PRO
340
39k
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ʹͭͳ͕Γ·͢)
·ͱΊ • ॳΊͱʹ͔͘ॻ͖·͠ΐ͏ • ଞਓΛר͖ࠐΈ·͠ΐ͏ʢϝϯλʔɺษڧձͰ ൃදʣ • ৗʹมԽʹରԠ͍͖ͯ͠·͠ΐ͏