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
Enjoy Agile Development
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ogom
March 05, 2016
Programming
620
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Enjoy Agile Development
楽速開発
||
楽しく、そして速く開発する。
ogom
March 05, 2016
More Decks by ogom
See All by ogom
PicoRuby から始めるたのしい電子工作
ogom
0
2.2k
GraphQL Better Errors
ogom
0
400
Osaka RubyKaigi 02
ogom
0
390
Osaka RubyKaigi 01
ogom
0
250
Contributing to GitLab with OSS Gate
ogom
0
650
DojoCon Japan 2017
ogom
0
170
GDStudy Engage
ogom
1
830
Using Immutable.js with React Redux
ogom
0
190
CoderDojo と オープンソース
ogom
2
540
Other Decks in Programming
See All in Programming
What We Talk About When We Talk About XP
m_seki
2
280
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
120
Flow は今どうなっているか
mizdra
PRO
0
870
業務時間外もAIに働いてもらう話
colorful12
3
9.9k
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
Press start. Python's next generation.
willingc
PRO
3
300
My Marp Sample
sinoue0108
0
140
Deep dive into the select statement (GopherCon UK)
jespino
0
170
Oxlintはいいぞ(続)
yug1224
1
530
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
410
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
260
不幸な GC
chencmd
0
870
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Building Applications with DynamoDB
mza
96
7.2k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Typedesign – Prime Four
hannesfritz
42
3.2k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
180
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Test your architecture with Archunit
thirion
2
2.4k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
The agentic SEO stack - context over prompts
schlessera
0
880
Transcript
ָ։ൃ on Rails ୈ71ճ Rubyؔ ษڧձ Takashi Ogomori
Enjoy Agile Development • ͷͮ͘ΓɺσϛϯάαΠΫϧ͕ ͘ར༻͞Ε͍ͯ·͢ɻ • ੈلલ͔ΒΘΕ͍ͯ·͕͢ ࠓͰ༗ޮʹ׆༻͞Ε͍ͯ·͢ɻ
Discover to Deliver • σϛϯάαΠΫϧɺௐࠪɾઃܭɾɾൢചΛ ܧଓతʹ܁Γฦ͢͜ͱͰ͢ɻ • ࡞Δ͖ͷΛൃݟͯ͠ɺ࡞ͬͨͷΛެ։ͯ͠ ͦͯ͠ɺ࡞Δ͖ͷΛൃݟ͠·͢ɻ %JTDPWFS
%FTJHO %FWFMPQ %FMJWFS
Ruby on Rails • WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫͰ͢ɻ • ϦϨʔγϣφϧσʔλϕʔε (RDBMS) ͷ
Object-relational mapping ͕ར༻Ͱ͖·͢ɻ
Design to Develop • ϖʔύʔϓϩτλΠϐϯά͞ΕͨεΩʔϚΛ ϋϯυτϨʔεͰίʔσΟϯά͠·͢ɻ • ίʔσΟϯάͰσϛϯάαΠΫϧΛ͠·͢ɻ
Database schema • εΩʔϚͰσϛϯάαΠΫϧΛར༻͠·͢ɻ • σʔλΛௐࠪ • εΩʔϚΛઃܭ • εΩʔϚΛ
• σʔλΛݕࠪ
Basic Ruby Gems 1. gem 'pry-rails', group: [:development, :test] 2.
gem 'factory_girl_rails', group: [:development, :test] 3. gem 'rspec-rails', group: [:development, :test] 4. gem 'spring-commands-rspec', group: [:development] 5. gem 'guard-rspec', require: false, group: [:development] 6. gem 'guard-shell', require: false, group: [:development] 7. gem 'ridgepole', group: [:development] 8. gem 'rails-erd', group: [:development]
Guard Shell (Schema) 1. guard :shell, no_run_all: true do 2.
watch(%r{^db/migrate/(.+)\.rb$}) do |m| 3. `rake db:migrate:reset` 4. `rake db:seed` 5. `rake erd` 6. `ridgepole -c config/database.yml --export --split --output db/schemas/schema.rb` 7. `cat db/schemas/#{m[1].split('_create_').last}.schema` 8. end 9. end
Seed Ruby Gems 1. gem 'seedbank', group: [:development, :test] 2.
gem 'seed_dump', group: [:development, :test] 3. gem 'seed-fu', group: [:development, :test]
Guard Shell (Seed) 1. guard :shell, no_run_all: true do 2.
watch(%r{^app/models/(.+)\.rb$}) do |m| 3. `rake erd` 4. end 5. watch(%r{^db/seeds/(.+)\.seeds.rb$}) do |m| 6. `rake db:seed:#{m[1].split(File::Separator).join(':')}` 7. `rake db:seed:dump EXCLUDE=created_at,updated_at FILE=tmp/db/dump.rb` 8. `cat tmp/db/dump.rb` 9. end 10.end
Demonstration • Guard ͕ίʔσΟϯάͷฤूΛݕͯ͠ɺҙͷΞΫγϣϯΛ࣮ࢪ͠·͢ɻ ʢGuard Shell ɺNo Run All ͷΦϓγϣϯͷվमΛ͍ͯ͠·͢ɻʣ
• db/migrate ͕ฤू͞ΕΔͱɺεΩʔϚ͕࠶ߏங͞Εͯ σʔλ࠶ొ͠·͢ɻฤूͨ͠εΩʔϚ͕දࣔ͞Ε·͢ɻ • app/models ͕ฤू͞ΕΔͱɺ࠷৽ͷ ERD ͕දࣔ͞Ε·͢ɻ • db/seeds ͕ฤू͞ΕΔͱɺͦͷσʔλ͕࠶ొ͞Εͯ σʔλͷμϯϓ͕දࣔ͞Ε·͢ɻ • db/seeds ͷσʔλ FactoryGirl Ͱੜ͞Ε͍ͯ·͢ɻ ͦͷ FactoryGirl ͷ RSpec Ͱςετ͞Ε͍ͯ·͢ɻ
ָ͘͠ɺͦͯ͘͠։ൃ͢Δɻ Enjoy Agile Development
None