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開発できるようになるために必要な5つのこと
Search
ckazu
January 31, 2012
Programming
0
19
ずぶの素人がRails開発できるようになるために必要な5つのこと
https://fr.slideshare.net/ckazu/rails5-f405
ckazu
January 31, 2012
Tweet
Share
More Decks by ckazu
See All by ckazu
2024 コーディング研修
ckazu
2
1.3k
磯野家で学ぶ Prolog
ckazu
0
17
Introduction fasttext
ckazu
0
6
Query selecterの話
ckazu
0
9
仮想電子工作のすすめ
ckazu
0
12
ウェブエンジニアのための色の話
ckazu
0
8
これさえ読めば知ったかできるかもしれない人工知能の歴史と機械学習の今
ckazu
0
5
Shinjuku.html5.lunch #11
ckazu
0
14
typo の傾向と対策
ckazu
0
12
Other Decks in Programming
See All in Programming
testcontainers のススメ
sgash708
1
120
DevFest Tokyo 2025 - Flutter のアプリアーキテクチャ現在地点
wasabeef
5
910
たのしいparse.y
ydah
3
120
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
280
Symfony Mapper Component
soyuka
2
730
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.7k
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
fs2-io を試してたらバグを見つけて直した話
chencmd
0
230
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
6
1.1k
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
190
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
550
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
460
33k
How STYLIGHT went responsive
nonsquared
95
5.2k
Being A Developer After 40
akosma
87
590k
Automating Front-end Workflow
addyosmani
1366
200k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Invisible Side of Design
smashingmag
298
50k
Navigating Team Friction
lara
183
15k
Adopting Sorbet at Scale
ufuk
73
9.1k
Embracing the Ebb and Flow
colly
84
4.5k
Statistics for Hackers
jakevdp
796
220k
Six Lessons from altMBA
skipperchong
27
3.5k
Transcript
ͣͿͷૉਓ͕ Rails ։ൃͰ͖ΔΑ͏ʹͳΔͨΊʹ ඞཁͳ̑ͭͷ͜ͱ 2012-01-31
[email protected]
(a.k.a. @ckazu)
about me •Aiming inc. •౦ژ։ൃG •Rails ʹΑΔαΠτ։ൃ •Rails + JS(coffee,
etc) ʹΑΔ ϒϥβήʔϜ։ൃ •Rails, Ruby ΛۀͰ͍࢝Ίͯ17ϲ݄
ࠓͷ༰ •ݸਓతͳମݧஊ
Ruby •ೖࣾલ •ਅ໘ʹͬͨͷ C ݴޠ͘Β͍ •Ruby •ࡶଟͳॲཧΛ͢ΔεΫϦϓτ •cgi •Ruby on
Rails •΄΅ະܦݧ
ඞཁʹͳͬͨΒҾ͘
ຊ΅Ζ΅ΖʹͳΔ͚Ͳ ʹ͍͍ͯͳ͍
ೖࣾ •αΠτ։ൃνʔϜ •ϝϯόʔ3ਓ •Rails(ruby) Α͍ͬͯ͘Δ •1ϲ݄·Ͱ Python •ࣗ
ೖࣾʙ2िؒ
•ඪ४ϝιουΛ ͯ͢Ѳ͢Δ
ϨγϐϒοΫཔΈ͔Βͷ٫ inject, map ڪාࠀ
2िؒʙ •ίʔυΛॻ͖࢝ΊΔ •ϖΞϓϩάϥϛϯά •TDD
TDD ͷน
TDD ͷน •ٙ •ίʔυΛॻ͍ͨ΄͏͕ૣ͍ͩΖ͏ •stub? mock? •rspec •ͦͦςετͷॻ͖ํ͕ɽɽɽ
TDD ͷน •Ͳ͏ͬͯΓӽ͑Δ͔ʁ •rspec ΛѲ͢Δ •ϖΞϓϩάϥϛϯά •ͦͦɼ͜Ε͔Β࣮͠Α͏ͱ ͢Δ͜ͱΛཧղ͍ͯ͠Δ͔
1ϲ݄ʙ •ϖΞϓϩͷ͓͔͛͋ͬͯ গͮͭ͠ίϛοτ
Git ͷน
Git ͷน •ࠓ·ͰҰਓͰ Git Λ͍ͬͯͨ •rebase ͬͯͳΜͧʁ •merge ͨ͜͠ͱͳ͍ •ৗʹ
master ϒϥϯν
Git ͷน •Θ͔Εͳ͔ͬͨ •Ή͠Ζɼ ྺ࢙Λվ͟ΜͰ͖ΔૉΒ͠͞ •ͱΓ͋͑ͣίϛοτ
ʙ4ϲ݄ •ϓϩδΣΫτͷྃ •TDD Ͱɼ Ұ௨Γ Rails Ͱ Web ΞϓϦέʔ γϣϯ͕࡞ΕΔΑ͏ʹ
4ϲ݄ʙ •৽نϓϩδΣΫτͷ࢝·Γ •ௐࠪܥͷλεΫ •ϥΠϒϥϦ •ϑϨʔϜϫʔΫ
GitHub •ίʔυ͕શͯ͑Δ •ίʔυϦʔσΟϯά
ϝλͷน
ϝλͷน •ίʔυϦʔσΟϯά •நԽ͞Ε͍͗ͯͯ͢ ͍·͍ͪΑ͔͘Βͳ͍
ͱΓ͋͑ͣશ෦ಡΜͩ͠ ͪΌΜͱಈ͍ͨ͠ ·͍͍͔͋
ϝλͷน Γӽ͑ΒΕͣɽɽɽ
4ϲ݄ʙ •͍Ζ͍Ζ͋Γͳ͕Β͜ͳ͢
6ϲ݄ʙ •ϨϏϡʔͷࢦఠ •ʮ͜͜એݴతʹ͔͚Δͣʯ
None
6ϲ݄ʙ •௨ۈதͷిंɼब৸લʹ ͻͨ͢ΒΑΉ
6ϲ݄ʙ •௨ۈதͷిंɼब৸લʹ ͻͨ͢ΒΑΉ
6ϲ݄ʙ •௨ۈதͷిंɼब৸લʹ ͻͨ͢ΒΑΉ
̏ճಡΜͩ
7ϲ݄ʙ •ϝλʹॻ͔Εͨίʔυ͕ ಡΊΔΑ͏ʹͳͬͨ
7ϲ݄ʙ •Ͱɼ •࣮ࡍʹɼॻ͚ͳ͍
7ϲ݄ʙ •Ͱɼ •࣮ࡍʹɼॻ͚ͳ͍
ϝλͷน
7ϲ݄ʙ •ͳͥॻ͚ͳ͍ͷ͔ •ϝλʹͳ͍ͬͯͳ͍ •ͱࢥ͍ͬͯͨɽɽɽ
8ϲ݄ʙ •ͳΜ͔͍͢͝ਓ͕ࣾʹདྷͨ •ϖΞϓϩ
9ϲ݄ʙ •ͳΜ͔͍͢͝ਓͱϖΞϓϩ •ίϛοτ͕ࡉ͔͍ •͜·ΊʹϦϑΝΫλ
9ϲ݄ʙ •ඞͣ͠ɼ ࠷ॳ͔Βϝλʹॻ͘Θ͚Ͱͳ͍ •ϦϑΝΫλॏཁʁ
9ϲ݄ʙ •͜·ΊʹϦϑΝΫλ͢Ε ࠷ॳ͔Βؾ͕͔ͭͳͯ͘ ϦϑΝΫλͷஈ֊Ͱ ϝλతʹ͔͚Δͱؾ͕ͭ͘
None
9ϲ݄ʙ •௨ۈதͷిंɼब৸લʹ ࣗͰങͬͨ ϝλϓϩάϥϛϯάRubyΛ ͻͨ͢ΒΑΉʢ4ճʣ
12ϲ݄ʙ •ؾ͕͍ͭͨΒɼ͍͖ͳΓ define_method ͱ͔ॻ͍ͯͨ
ॳ৺ऀͰ Ұ͘Β͍͍ͬͯΕ ࠇຐज़ࢣʹೖͰ͖Δ
·ͱΊ •ͣͿͷૉਓ͕ Rails ։ൃͰ͖ΔΑ͏ʹͳΔ ͷʹඞཁͳ̑ͭͷ͜ͱ •ॳظͷཏతֶश •ϖΞϓϩ •ʢ͍ͭ͜͠ʣϨϏϡʔ •ίʔυϦʔσΟϯά •దͳ࣌ظʹదͳຊΛಡΉ
ऴ