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
Rails5.1時代のアプリケーション開発
Search
Shinichi Maeshima
June 28, 2017
Technology
3
4k
Rails5.1時代のアプリケーション開発
medbeer.rbで発表した資料です
https://medpeer.connpass.com/event/58805/
Shinichi Maeshima
June 28, 2017
Tweet
Share
More Decks by Shinichi Maeshima
See All by Shinichi Maeshima
Sidekiq vs Solid Queue
willnet
14
11k
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
6
1.4k
Exceptional Rails
willnet
6
7.2k
Breaking the Flaky Test Cycle
willnet
2
2k
mrskで広がるインフラの選択肢
willnet
1
1k
アプリケーションを長期にわたって無理なく運用するためのたったひとつの方法
willnet
2
2.1k
HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
willnet
14
13k
Rails6.1で新しく入る機能について
willnet
12
15k
Concerns about Concerns
willnet
11
34k
Other Decks in Technology
See All in Technology
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
転生CISOサバイバル・ガイド / CISO Career Transition Survival Guide
kanny
3
1.1k
Goで作って学ぶWebSocket
ryuichi1208
3
2.4k
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
460
データマネジメントのトレードオフに立ち向かう
ikkimiyazaki
6
1.2k
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
1.5k
表現を育てる
kiyou77
1
230
デスクトップだけじゃないUbuntu
mtyshibata
0
600
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
1
1.7k
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
160
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
160
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
6
1.9k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Writing Fast Ruby
sferik
628
61k
Side Projects
sachag
452
42k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Building Applications with DynamoDB
mza
93
6.2k
Automating Front-end Workflow
addyosmani
1368
200k
Transcript
Rails5.1時代の アプリケーション開発 @willnet
今日はRails5.1が テーマ
みんなが興味ありそうな 内容 • 新機能 • アップグレードでのハマりどころ
ここで今日のタイムテー ブルを見てみましょう
ここで今日のタイムテー ブルを見てみましょう
ご清聴ありがとうござ いました?
広い視点でRails5.1 • 昔と比べて、どうRails開発が変わってきたか • 最近の開発上の問題 • この先生きのこるには
Shinichi Maeshima ! " # $ @netwillnet @willnet http://blog.willnet.in 2007(Rails
2.0)~ Freelance Rails Consultant
Rails 2.0 class PostsController < ApplicationController def index @posts =
Post.find(:all) respond_to do |format| format.html # index.html.erb format.xml { render :xml => @posts } end end # …
(細かい所はともかく) あまり変わってないよ うにみえる
しかしツールチェインが 増えてる • bundler(Rails 3.0) • sprockets(Rails 3.1) • turbolinks(Rails
4.0) • jbuilder(Rails 4.0) • spring(Rails 4.1) • yarn(Rails 5.1) • webpacker(Rails 5.1) • Rails標準ではないgemたち
これらの概念を覚えな いと開発に入れない
ブログが15分で作れる?
今でも作れるけど、前 提とされる知識量が増 えている
なんでこんなに増えたの • 昔と比べて • 要求されるクオリティが上がった • いろんなことに使われるようになった • 規模が大きくなった •
それらを効率的に扱うことが求められた
膨大なライブラリを 利用することで 要求を満たすことができる
10年経ってできること が増えた
一人でクオリティの高い サービスを作れる時代に
できることが増えた事 による難しさの発生
最近の開発の難しさ • (学習コストが高い) • どのgem使えばいいの? • gemのメンテが止まる問題 • 大きいRailsアプリケーションがカオスになる
どのgem使ったらいいの • 基本機能はOmakaseだが実際の開発では足りない • 昔はRuby Toolboxがあった • 現状ではググるしかない • http://awesome-ruby.com/
は多少使えるはず
gemのメンテが止まる問 題 • いくつかの定番gemのメンテスピードが落ちてい る(気がする) • 原因はわからないけど、長年メンテしてると燃 え尽きそうなのもわかる • forkすればよい?
• 単発で改善することはできるが継続していく ためには覚悟が必要
大きいRailsアプリケー ションがカオスになる • RailsはそもそもBasecamp用のフレームワークで、 大規模な開発は想定していない(はず) • MVCだけでは足りないようなケースでの、Rails 公式のサポートは特に無い • trailbrazerやhanamiなどの選択肢もあるけど…
• 頑張って秩序を保つ • formオブジェクトやserviceオブジェクトなど
問題解決しても 新しい問題が出てくる
ウェブ開発は難しい
この先生きのこるには 効率良く学ぶ必要があ る
知見のある人のノウハウ を摂取する • 社内 • コミュニティ • 技術顧問
本やネット上の 記事を読む • 英語圏のほうが情報が圧倒的に多い • 洋書を読む • 個人が出してる電子書籍に良いものがある • テーマが絞られていて面白い
• Fearless Refactoring • exceptional ruby など • ネット上の記事を読む • http://rubyweekly.com/
ドキュメントやコードを 読む • なるべく一次情報に当たるのがよい • ネット上には古い記事がたくさんある • 使っているgemのドキュメントやコードを読む • Railsのコミットを読む
• https://rails-weekly.ongoodbits.com/ archive • http://y-yagi.hatenablog.com/
まとめ
WEB開発はどんどん難 しくなる
銀の弾丸はない
レベルを上げて物理で 殴ろう
Happy Rails Life