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
The World of Ruby
Search
Akira Matsuda
September 28, 2015
Programming
8
1.7k
The World of Ruby
プログラマーのための「Rubyの世界」の発表スライド
http://forkwell.connpass.com/event/20332/
Akira Matsuda
September 28, 2015
Tweet
Share
More Decks by Akira Matsuda
See All by Akira Matsuda
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
13
5.6k
Hanamiを支える技術 2023 / Asakusa.rb Hanami 2023
a_matsuda
2
580
Rails 7.1をn倍速くした話
a_matsuda
11
12k
RubyKaigi 2022 After Talk
a_matsuda
0
430
Coming Soon…💎 / coming soon
a_matsuda
12
8k
Rails Performance Issues and Solutions
a_matsuda
9
36k
Extending Rails for Real World App Development
a_matsuda
9
7.5k
A RubyKaigi Talk
a_matsuda
8
2.5k
Ginza Rails 1
a_matsuda
6
1.2k
Other Decks in Programming
See All in Programming
昭和の職場からアジャイルの世界へ
kumagoro95
1
400
2024年のWebフロントエンドのふりかえりと2025年
sakito
3
260
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.4k
GoとPHPのインターフェイスの違い
shimabox
2
200
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
12
4.4k
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
210
もう僕は OpenAPI を書きたくない
sgash708
5
1.8k
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
140
バッチを作らなきゃとなったときに考えること
irof
0
400
楽しく向き合う例外対応
okutsu
0
430
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
580
Grafana Cloudとソラカメ
devoc
0
180
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Being A Developer After 40
akosma
89
590k
Practical Orchestrator
shlominoach
186
10k
What's in a price? How to price your products and services
michaelherold
244
12k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Code Review Best Practice
trishagee
67
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
The Invisible Side of Design
smashingmag
299
50k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
For a Future-Friendly Web
brad_frost
176
9.5k
Transcript
Rubyͷੈք @a_matsuda
self
GitHub: amatsuda
Twitter: a_matsuda
Rubyίϛολʔ
Railsίϛολʔ
Railsίϛολʔ •ຊͰ͚ࣗͩ
Rubyίϛολʔ && Railsίϛολʔ •ੈքதͰ2ʙ3ਓ͙Β͍
Asakusa.rb
RubyKaigi 2015 •νʔϑɾΦʔΨφΠβʔ
͖ͳϝιου •Module#prepend
͖ͳFZ •Freak Out!
3લͷσϒαϛʹͯ
begin
1. Rubyฤ
ΦϒδΣΫτࢦεΫϦϓτ ݴޠRuby
Rubyͷ࡞ऀ •Matz
Matz •·ͭͱΏ͖ͻΖ
Matzʹ͍ͭͯ •Matz is nice.
Rubyͷઃܭ •७ਮͳΦϒδΣΫτࢦݴޠ •εΫϦϓτݴޠ •։ൃऀʹͱͬͯಡΈ͍͢ʗ ॻ͖͍͢
Rubyͷݩωλ •Ruby = Lisp + Smalltalk + Perl + C
•(RubyKaigi 2013 جௐߨԋΑΓ)
Rubyͷྺ࢙ •19932݄14
Rubyͷ։ൃମ੍ •ྺίϛολʔͷ૯ਓ 80ਓ͙Β͍ʁ •ࠓͰΞΫςΟϒͳͷ50 ਓ͙Β͍ʁ
ϑϧλΠϜίϛολʔ •ੈքதͰ3໊
ύτϩϯ •Heroku (= SalesForce)
Rubyͷʑͷվྑͷ͔ͳΓͷ෦ ถSFࣾͷࢧԉͷ͓͔͛Ͱ͢
SalesForce͋Γ͕ͱ͏ɺͱ ݴΘ͟ΔΛಘͳ͍ •ʮࠃ࢈ݴޠʯʁ
RubyͷϦϦʔεαΠΫϧ •2.0Ҏ߱ɺຖ1ճΫϦεϚ ε͝ΖʹػցతʹϦϦʔε͢ Δ͜ͱʹͨ͠
Rubyͷࠓޙͷ ϦϦʔεϓϥϯ •2015ΫϦεϚε: 2.3.0 •2016ΫϦεϚε: 2.4.0 •2017ΫϦεϚε: 2.5.0 •ɾɾɾ •20XXΫϦεϚε:
3.0.0
Rubyist •MatzࣗʹΑΔޠ
Rubyist •“rubyʹରͯ͠୯ͳΔ͓٬͞ ΜҎ্ͷؾ࣋Λ͍࣋ͬͯΔਓ ͕rubyistͰ͢” http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/ 2908
Rubyist Magazine •௨শΔͼ· •Rubyist Hotlinksͱ͍͏ ΠϯλϏϡʔ͕͓͢͢Ί http://magazine.rubyist.net/?0001-Hotlinks
Rubyist-ist •RubyistѪՈͷ͜ͱ •ϛʔϋʔ
RubyKaigi •ʹ1͙Β͍ੈքதͷRubyist ͕Ұಊʹձ͢ΔࠃࡍΧϯϑΝ Ϩϯε •ࠓ12݄ʹ։࠵ http://rubykaigi.org/2015
2. Railsฤ
Railsͷ࡞ऀ •DHH
DHH •David Heinemeier Hansson
Railsͷઃܭࢥ •CoC •DRY
Railsͷྺ࢙ •2004͙Β͍ʹެ։։࢝
Railsͷ։ൃମ੍ •https://github.com/orgs/ rails/teams/committers •ͨͿΜ32ਓ͙Β͍
RailsͷϦϦʔεαΠΫϧ •ෆఆظ •͍͍͍͍ͩͨײ͡ʹ৽ػೳ͕ ग़ἧ͖ͬͯͯػ͕ख़͖ͯͨ͠ Βग़͢
RailsͷࠓޙͷϦϦʔεϓϥϯ •5.0: Fall 2015 (͍ͬͯ͏͜ͱ ʹͳͬͯΔ͚ͲͨͿΜग़ͳ ͍…)
3. Why Ruby?
Ruby ❤ Social Coding
ιʔγϟϧɾίʔσΟϯά (GitHub) •։ൃऀಉ͕࢜ιʔείʔυΛ ͛߹ͬͯίϛϡχέʔγϣ ϯΛऔΓ߹͏SNS
Ruby •։ൃऀʹͱͬͯಡΈ͍͢ݴ ޠ
Ruby ❤ Social Coding
RubyGems & Bundler ͱ͍͏ ༏ΕͨύοέʔδγεςϜ •ϥΠϒϥϦඦՖ៶ཚͷ࣌ʹ ඞਢͷΈ
৽͍͠ͷͨͪRuby ίϛϡχςΟ͔Βͬͯ͘Δ •CoCϑϨʔϜϫʔΫ •Ajax •BDD •CI •Asset Pipeline •etcetc.
ύϥμΠϜͷసʹ ಉ࣌ʹཱͪձ͑Δָ͠Έ
RubyίϛϡχςΟ
MINASWAN •"Matz is Nice And So We Are Nice" https://en.wikipedia.org/wiki/MINASWAN
*.rb •Seattle.rb 2001͙Β͍ʙ •Asakusa.rb 2008ʙ
࠷ۙͷটߨԋཤྺ •2012/12/07 RubyConf Taiwan •2013/06/08 RedDot RubyConf •2013/07/20 LoneStar RubyConf
•2013/09/28 RubyShift •2014/03/23 RubyConf India •2014/09/27 Rails Pacific •2014/11/04 Rails Israel •2015/03/05 Ruby on Ales •2015/03/09 MountainWest RubyConf •2015/05/16 Modern Web Taiwan
4. RailsͱࣄͱOSS
OSSΛࣄͰ͏ͱ ָ͕Ͱ͖Δʂʁ
OSSΛࣄͰ͏ •ڊਓͷݞʹΔ
ೲͷେ෦୭͔಄ͷ ྑ͍ਓ͕ॻ͍ͯ͘Εͨͷ
ڊਓͷݞʹΔ •νʔτ
͏·͘Εָ͕Ͱ͖Δ
OSSΛࣄͰ͏֮ޛ •͕ࣗબΜͩOSSΞϓϦ έʔγϣϯͷҰ෦
͕ࣗॻ͍ͨΞϓϦέʔγϣ ϯͱOSSͷڥք
͕ࣗॻ͍ͨΞϓϦέʔγϣ ϯͱOSSͷڥք •ڥքͳΜͯͳ͍
ଞਓͷόάΛҾ͖ड͚Δ֮ ޛ •ސ٬ʹର͢Δ࣮͞
શ෦ΦʔϓϯͳͷͰݴ͍༁ Ͱ͖ͳ͍ •ࣗͰબΜͩͷࣗͰ Λ࣋ͭ
͡Ό͋Ͳ͏͢Δʁ •ιʔείʔυશ෦Λ௨͢ ͷ͕ཧ •ͤΊ͕ͯࣗ౿Μͩόά ͙Β͍࣏͢
ʮOSSʹߩݙʯ •ͦΜͳཱͳͷ͡Όͳͯ͘ •ΰϛ͕མͪͯͨΒर͏Έ͍ͨ ͳΜ
ؾ͕͍ͭͨΒதͷͻͱʹͳͬ ͯͨΓ͢Δ
OSSͷόʔδϣϯ
ʮރΕͨόʔδϣϯʯ ͳΜͯແ͍
όάηΩϡϦςΟϗʔϧ શͯΦʔϓϯ
ৗʹ࠷৽ͷͷΛ͏ •Ξοϓσʔτͷίετͬ͠ ͔Γ͏ •͍ͭͰΞοϓσʔτͰ͖Δ Α͏ʹE2EςετΛ͔ͬ͠Γ ॻ͍͓ͯ͘
ৗʹ࠷৽ͷͷΛ͏تͼ •ʑͷ৽ػೳ •ύϑΥʔϚϯεͷ্
ϑϨογϡͳόά͕౿ΊΔ ָ͠Έ
5. Rubyͷา͖ํ
Ұ࣍ใΛݟΔ
RailsͳΒવӳޠͷͷ͔͠ ͳ͍
WEB+DB 58߸ͱ74߸Λআ͘ (DVDങ͑·͢)
RubyίΞ෦ʹؔ͢ΔҰ࣍ใ͕ ຊޠͰखʹೖΔ།ҰͷϓϥοτϑΥʔϜ
Δͼ·
RubyKaigi 2015
ҬRubyձٞ •େߐށRubyձٞ05 Γ·͢
Asakusa.rb
ॻ੶
Rails Tutorials
12݄ͷRubyKaigi
νέοτ2ສʙ3ສ •Rubyʹؔ͢Δੈք࠷ߴๆͷ ࠃࡍΧϯϑΝϨϯεʹඈߦػ ʹΒͳͯ͘ࢀՃͰ͖Δ •εϐʔΧʔʹͳΕλμ
12݄ͷRubyKaigiʹདྷͯͶ
end