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
Ruby&Railsの最新技術動向と 今後の予想
Search
Yuichiro MASUI
September 06, 2013
Business
26
6.8k
Ruby&Railsの最新技術動向と 今後の予想
2013/09/06 Ruby&RailsBizCon - BOSS-CON JAPAN にて
http://www.boss-con.jp/rails/Ruby-RailsBizCon/
Yuichiro MASUI
September 06, 2013
Tweet
Share
More Decks by Yuichiro MASUI
See All by Yuichiro MASUI
Vue/Nuxt tutorial for Sendai
masuidrive
0
140
ハッカソンで 作ったアプリを売却した話
masuidrive
0
650
DJ hands on for IT Engineers
masuidrive
1
160
自分の棚卸をして レジュメを書こう
masuidrive
5
1.9k
0から1ヶ月で DJになるまで
masuidrive
4
1.5k
Google Apps Scriptでbotを作る話
masuidrive
1
1.7k
Rails loves React
masuidrive
1
450
トレタの存在理由
masuidrive
0
190
18年でRubyから学んだこと - 関西Ruby会議 2017
masuidrive
3
2.2k
Other Decks in Business
See All in Business
株式会社AbemaTV 会社説明資料
abematv
2
2k
株式会社shizai - Recruit Deck
shizai
3
57k
SaaSの次なる潮流BPaaS ゼロイチの事業づくりと伴走するプロダクト開発の裏側
kubell_hr
3
2.2k
unnameカルチャーブック 2025.02.21 update
unnameinc
6
17k
PdM Days「組織と人をどう育てるか 〜プロダクトマネジメントエコシステムを紐解く〜」
muture
0
450
スクラム2年生の私がスクラムを嫌いになったときに考えたこと / What I thought when I hated Scrum
k_takashiro
2
190
ログから学ぶKubernetes
googlecloudjapan
1
400
freee Movement Deck
freee
0
8.9k
Space BD - CULTURE BOOK「道」
spacebd
0
2.2k
UXwriter_intro_202502
uxw
0
3.8k
上司と部下の会話に活かすTOCfE
4884biz
0
210
営業職/新卒向け会社紹介資料(テックファーム株式会社)
techfirm
1
540
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
Designing Experiences People Love
moore
140
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Optimizing for Happiness
mojombo
377
70k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
GraphQLとの向き合い方2022年版
quramy
44
14k
Bash Introduction
62gerente
611
210k
Transcript
Ruby&Railsͷ࠷৽ٕज़ಈͱ ࠓޙͷ༧ Yuichiro MASUI (masuidrive) masui@masudrive.jp Friday, September 6, 13
•૿Ҫɹ༤Ұ - masuidrive •FrogApps, Inc / Toreta, Inc.ɹ •PukiWiki(2002), 10Rails
(2005), PingKing(2006), NIFTYࣾAbout me(2006), PhotoShare (2008) •Ex-Appcelerator (Titanium Mobile) Friday, September 6, 13
ϛΠϧ Friday, September 6, 13
MobiRuby Friday, September 6, 13
Friday, September 6, 13
RailsΛͬͨ͜ͱ ͋Δํ Friday, September 6, 13
RailsΛࣄͰ ͬͨ͜ͱ͋Δํ Friday, September 6, 13
RailsΛࣄͰ ͍ͬͯΔํ Friday, September 6, 13
Rails4Λࢼͯ͠Έͨํ Friday, September 6, 13
Railsͷྺ࢙Λ͓͞Β͍ Friday, September 6, 13
Ruby on Railsͷྺ࢙ • 2004/07 - ࠷ॳͷόʔδϣϯ • 2005/12 -
1.0 • 2007/12 - 2.0 • 2010/08 - 3.0 • 2013/07 - 4.0 Friday, September 6, 13
Rails 1ͷಛ • CoC - Convention over Configuration • DRY
- Don’t repeat yourself • MVC • Full stack • Generator / Scaffold • Write less code Friday, September 6, 13
Rails 1ͷ • ෆ҆ఆ • ͍ / ϝϞϦ৯͍ա͗ • ࣮ߦڥ͕গͳ͍
• ࣮͕গͳ͍ • RubyϓϩάϥϚ͕গͳ͍ Friday, September 6, 13
Rails 2ͷಛ • RESTful • XML -> JSON • ηΩϡϦςΟͷڧԽ
(CSRFରࡦͳͲ) • ଟݴޠରԠ • ύϑΥʔϚϯε (ΫΤϦΩϟογϡͳͲ) Friday, September 6, 13
Rails 2ͷ • Railsຊମ͕ෳࡶ͗͢Δ • ͍ • ϓϥάΠϯඇޓ • ڥߏங
(RubyGems) Friday, September 6, 13
Rails 2ϦϦʔεޙ • ৽͍͠ϑϨʔϜϫʔΫͷϦϦʔε • Merbͷ߹ྲྀ • Passenger • Heroku
Friday, September 6, 13
৽͍͠ϑϨʔϜϫʔΫ •Sinatra •Merb + DataMapper Friday, September 6, 13
Sinatra •͖ΘΊͯγϯϓϧͳϑϨʔϜϫʔΫ •routingɺϑΟϧλॲཧςϯϓϨʔτ Friday, September 6, 13
Merb+DataMapper • ϞδϡʔϧߏͷϑϨʔϜϫʔΫ • ςϯϓϨʔτΤϯδϯORMΛબ • ORM = DataMapper •
DataMapperύλʔϯΛఏڙ • Ϟσϧ=ςʔϒϧͰͳ͍ Friday, September 6, 13
Merb gets merged into Rails 3! Friday, September 6, 13
Merb͔Βಘͨͷ • Ϟδϡʔϧߏ • Plugin API • MatzRubyҎ֎ͷڥ(JRubyͳͲ)Ͱͷಈ࡞ Friday, September
6, 13
Passenger • ྑ͋͘Δ࣭ = RailsͬͯͲ͏ͬͯProduction ڥͰಈ͔͍͍ͤͷʁ • ApacheʹΈࠐΊΔmodule • ҰͭͷαʔόͰෳͷRails
appͷཧ༰қ Friday, September 6, 13
Rails 3ͷಛ • ϑϧελοΫ͕ͩϞδϡϥʔϒϧ • ActiveRecordͷ৽ΫΤϦΤϯδϯ (Arel) • ৽͍͠Routing engine
• Plugin API • Bundler Friday, September 6, 13
Rails 3ͷ • Ϟσϧ͕ް͘ͳΓ͗͢Δ • ύϥϝʔλड͚͠ͷηΩϡϦςΟ • Ϟσϧ == σʔλϕʔε
Friday, September 6, 13
3.1ϦϦʔε • 2011/08 (1ޙ) • 2.x࣌ͷޓੑഉআ • Asset Pipeline •
jQuery͕ඪ४ʹ Friday, September 6, 13
3.2ϦϦʔε • 2012/01 (6ϲ݄ޙ) • ։ൃڥͰͷߴԽ • SQLσόοάग़ྗ Friday, September
6, 13
Tokaido Friday, September 6, 13
Rails for Zombies Friday, September 6, 13
4.0ͷಛ • Ruby 1.9.3Ҏ্ / 2.0Ҏ্ਪ • Strong Parameters •
Turbolinks • Russian Doll Caching • Live streaming • େ͖ͳδϟϯϓແ͠ Friday, September 6, 13
WyeWorks blog Friday, September 6, 13
WyeWorks blog Friday, September 6, 13
WyeWorks blog Friday, September 6, 13
WyeWorks blog Friday, September 6, 13
WyeWorks blog Friday, September 6, 13
Ruby 2.0 • ϝδϟʔόʔδϣϯΞοϓ • RubyConf 2001ͰطʹRuby 2.0ͷ • 20ࡀͷੜͳͷͰ2.0ϦϦʔε
Friday, September 6, 13
Ruby 2.0 • ύϑΥʔϚϯε্ • σϑΥϧτΤϯίʔσΟϯά • γϯλοΫεͷՃ • ΩʔϫʔυҾ
• Module::prependɹ • Enumerable#lazy Friday, September 6, 13
http://itpro.nikkeibp.co.jp/article/NEWS/20130214/456322/ Friday, September 6, 13
ύϑΥʔϚϯε্ • Virtual Machine • Garbage Collection • require Friday,
September 6, 13
৽γϯλοΫε • Javascript෩Hash • { key1: ‘A’, key2: 123 }
• ΩʔϫʔυҾ • def func1(paramA: ‘A’, paramB: ‘B’) • func1(paramB:’C’) Friday, September 6, 13
mruby • ܰྔRuby - 2012/4ॳެ։ • ISO/JISΛݩʹͨ͠৽͍͠Ruby࣮ • ϝϞϦCPUࢿݯ͕গͳ͍ڥͰಈ͘Ruby •
ຊମߦ2ສઍߦ Friday, September 6, 13
mrubyԠ༻ྫ • WebαʔόΛRubyͰ੍ޚ͢Δ • Apache - mod_mrubyɹ • Nginx -
ngx_mrubyɹ • mrubyͰiOSΞϓϦΛॻ͘ • MobiRuby Friday, September 6, 13
Friday, September 6, 13
4.1Ҏ߱ • ඇಉظॲཧ - Queue APIɺAsyncMailer • ςετपΓͷڧԽΛٻΊΔଟ͍ Friday, September
6, 13
େ͖ͳ Friday, September 6, 13
Upgrade • ຖόʔδϣϯΞοϓ • ͳͥUpgrade͢Δͷ͔? • ৽͍͠όʔδϣϯ҆ఆ͍ͯ͠Δ͔ • ίʔυͷॻ͖͑Ͳͷఔඞཁ͔ Friday,
September 6, 13
ͳͥUpgrade͢Δͷ͔? • ࠷৽ͷRails͕࠷ߴͷRails • ϓϥάΠϯͳͲ࠷৽൛ʹ͚ͯϦϦʔε͞ΕΔ͜ ͱ͕ଟ͍ • όʔδϣϯΛඈͯ͠Upgradeେม Friday, September
6, 13
όʔδϣϯै • Rails 4.0.xRails 3.xͱͷޙํޓͷҝͷϝιου͕ ఆٛ͞Ε͍ͯΔ͕ɺRails 3.4.xͰফ͞ΕΔ • Rails 3.2.x
-> Rails 3.1.xͷUpgrade͍͠ Friday, September 6, 13
RailsৗʹมԽ͢Δ • ඇޓΛڪΕͳ͍ • ͍͖ͳΓม͑ͣʹ४උظؒΛઃ͚Δ • ΞοϓσʔτΛଓ͚Δ Friday, September 6,
13
։ൃڥ • ςετେࣄ • ਖ਼ৗܥͷػೳςετ͚ͩͰॻ͘ • Continues IntegrationͰࣗಈతʹςετΛճ͢ Friday, September
6, 13
पลαʔϏε • ࣮ߦڥ - AWS, Heroku, Engine Yard • ϞχλϦϯά
- New Relic • ςετ - SauceLabs, Appium • ίʔσΟϯά - GitHub • ϓϩδΣΫτཧ - PivotalTracker, Friday, September 6, 13
Friday, September 6, 13
Rails 4.0ΛͬͨΞϓϦྫ Friday, September 6, 13
Friday, September 6, 13
Friday, September 6, 13
ࡶͳϝϞΛ Ͳ͏ʹ͔͍ͨ͠ Friday, September 6, 13
ϝϞΞϓϦͷ՝ • ͍ͭͰɺͲ͜Ͱ • ཷ·ͬͨϝϞͷཧ • ॻ͍ͨ͜ͱΛΕΔ • ͏ಡ·ͳ͍ϝϞͷॲཧ Friday,
September 6, 13
ཉ͍͠ϝϞாΞϓϦ • ϓϩάϥϚͳΒMarkdown • gmailΈ͍ͨͳArchive • ΧϨϯμʔϏϡʔ • શจݕࡧ •
ΩʔϘʔυΦϖϨʔγϣϯ Friday, September 6, 13
͍ͭͰʹ • ࣗ༻͚ͩͲެ։લఏͰ • ϦϦʔε͢ΔͳΒӳޠͰ͠ΐ • υϝΠϯऔͬͪΌ͓͏ • ͬͨ͜ͱͳ͍ٕज़Λ͓͏ Friday,
September 6, 13
جຊػೳ2Ͱ • ೝূGithubͱFacebook • ςετ݉ͶͯRails 4.0.0RC + Ruby 2.0 •
JavascriptBackbone.js + HTML5 storage Friday, September 6, 13
2013/05/05 Friday, September 6, 13
৽͍ٕ͠ज़ • Rails 4 + Ruby 2.0 • capybara +
rspec • backbone.js • HTML5 AppCache • localStorage • sessionStorage • Google App Script • Chrome extension • Analytics Measure API • Pay for Heroku Friday, September 6, 13
Friday, September 6, 13
ຖࣗͰ͏ҝʹ • αʔόͷӡ༻ࣗͰ͠ͳ͍ • όοΫΞοϓશࣗಈ • ܰ͘ಈ͘ Friday, September 6,
13
Friday, September 6, 13
Friday, September 6, 13
Friday, September 6, 13
Friday, September 6, 13
Google App Script 7,000 users / 700 weekly active users
Friday, September 6, 13
Wrap up • RailsৗʹมԽΛ͢Δ -> มԽΛड͚ೖΕΔ • Ruby 2.0Ͱݴޠͱͯ͠ͻͱ·ͣͷ •
Rubyͷద༻ൣғ͕͍ͬͯ͘ Friday, September 6, 13