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
4.1k
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
12k
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
6
1.5k
Exceptional Rails
willnet
6
7.7k
Breaking the Flaky Test Cycle
willnet
2
2.2k
mrskで広がるインフラの選択肢
willnet
1
1.1k
アプリケーションを長期にわたって無理なく運用するためのたったひとつの方法
willnet
2
2.2k
HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
willnet
14
14k
Rails6.1で新しく入る機能について
willnet
12
16k
Concerns about Concerns
willnet
11
35k
Other Decks in Technology
See All in Technology
信頼できる開発プラットフォームをどう作るか?-Governance as Codeと継続的監視/フィードバックが導くPlatform Engineeringの進め方
yuriemori
1
340
あなたの知らない OneDrive
murachiakira
0
180
datadog-distribution-of-opentelemetry-collector-intro
tetsuya28
0
190
第4回 関東Kaggler会 [Training LLMs with Limited VRAM]
tascj
5
970
EKS Pod Identity における推移的な session tags
z63d
1
190
Telemetry APIから学ぶGoogle Cloud ObservabilityとOpenTelemetryの現在 / getting-started-telemetry-api-with-google-cloud
k6s4i53rx
0
170
生成AIによるデータサイエンスの変革
taka_aki
0
3.1k
開発と脆弱性と脆弱性診断についての話
su3158
1
790
はじめての転職講座/The Guide of First Career Change
kwappa
5
4.5k
Backboneとしてのtimm2025
yu4u
3
1.1k
MySQL HeatWave:サービス概要のご紹介
oracle4engineer
PRO
4
1.6k
なごミュ@SPAJAM2025 第二回予選
1901drama
0
110
Featured
See All Featured
Writing Fast Ruby
sferik
628
62k
Designing for Performance
lara
610
69k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Typedesign – Prime Four
hannesfritz
42
2.8k
Practical Orchestrator
shlominoach
190
11k
How STYLIGHT went responsive
nonsquared
100
5.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Bash Introduction
62gerente
614
210k
Optimizing for Happiness
mojombo
379
70k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
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