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
90
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
120
「Railsを学び、現場に入るまで」 Rails Developers Meetup 2017 LT
mikaji
2
2.6k
Other Decks in Programming
See All in Programming
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
760
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
48
17k
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
350
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
560
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
150
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Lottieアニメーションをカスタマイズしてみた
tahia910
0
130
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
210
PHP ステートレス VS ステートフル 状態管理と並行性 / php-stateless-stateful
ytake
0
100
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
130
Featured
See All Featured
Designing for humans not robots
tammielis
250
25k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
How to Ace a Technical Interview
jacobian
276
23k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Faster Mobile Websites
deanohume
306
31k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
GraphQLとの向き合い方2022年版
quramy
44
13k
We Have a Design System, Now What?
morganepeng
51
7.4k
Six Lessons from altMBA
skipperchong
27
3.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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ʹͭͳ͕Γ·͢)
·ͱΊ • ॳΊͱʹ͔͘ॻ͖·͠ΐ͏ • ଞਓΛר͖ࠐΈ·͠ΐ͏ʢϝϯλʔɺษڧձͰ ൃදʣ • ৗʹมԽʹରԠ͍͖ͯ͠·͠ΐ͏