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
4.6k
Hanamiを支える技術 2023 / Asakusa.rb Hanami 2023
a_matsuda
2
520
Rails 7.1をn倍速くした話
a_matsuda
11
12k
RubyKaigi 2022 After Talk
a_matsuda
0
400
Coming Soon…💎 / coming soon
a_matsuda
12
7.7k
Rails Performance Issues and Solutions
a_matsuda
9
35k
Extending Rails for Real World App Development
a_matsuda
9
7.4k
A RubyKaigi Talk
a_matsuda
8
2.3k
Ginza Rails 1
a_matsuda
6
1.2k
Other Decks in Programming
See All in Programming
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
1.7k
Outline View in SwiftUI
1024jp
1
160
CSC305 Lecture 13
javiergs
PRO
0
130
Realtime API 入門
riofujimon
0
110
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.4k
Piniaの現状と今後
waka292
5
1.5k
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
1
290
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.1k
Kotlin2でdataクラスの copyメソッドを禁止する/Data class copy function to have the same visibility as constructor
eichisanden
1
140
外部システム連携先が10を超えるシステムでのアーキテクチャ設計・実装事例
kiwasaki
1
230
のびしろを広げる巻き込まれ力:偶然を活かすキャリアの作り方/oso2024
takahashiikki
1
410
/←このスケジュール表に立ち向かう フロントエンド開発戦略 / A front-end development strategy to tackle a single-slash schedule.
nrslib
1
590
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
31
1.5k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Designing for Performance
lara
604
68k
YesSQL, Process and Tooling at Scale
rocio
167
14k
It's Worth the Effort
3n
183
27k
GitHub's CSS Performance
jonrohan
1030
460k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.4k
What's in a price? How to price your products and services
michaelherold
243
12k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.9k
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