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
AssetPipelineのきもち
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
lion_man44
March 20, 2015
Programming
0
1.2k
AssetPipelineのきもち
AssetPipelineで失敗した話
lion_man44
March 20, 2015
Tweet
Share
Other Decks in Programming
See All in Programming
CSC307 Lecture 03
javiergs
PRO
1
490
MUSUBIXとは
nahisaho
0
140
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
190
Claude Codeと2つの巻き戻し戦略 / Two Rewind Strategies with Claude Code
fruitriin
0
130
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
180
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
170
CSC307 Lecture 08
javiergs
PRO
0
670
Fluid Templating in TYPO3 14
s2b
0
130
2026年 エンジニアリング自己学習法
yumechi
0
140
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
150
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
760
Featured
See All Featured
From π to Pie charts
rasagy
0
120
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
A Soul's Torment
seathinner
5
2.3k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
220
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
AI: The stuff that nobody shows you
jnunemaker
PRO
2
260
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
GraphQLとの向き合い方2022年版
quramy
50
14k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
@lion_man44 AssetPipelineのきもち
自己紹介
ライオン フロントエンドを考え生き抜く会所属(現在会員1名) ・Androidの会社に所属するも、何故か常駐先がRubyの案件 Ruby1.8.7からRuby1.9.3のバージョンアッププロダクトを経験 B2B案件に携わり、初めてBackbone.jsを使ったJS開発を行った
その事によりIT業界特有の上司とのコミュニケーションの闇とJSの闇を知る ・次にスタートアップに携わり、資金回収部隊として◦◦に常駐に行く そこでCreate.jsを使ったHTML5ゲームに携わる その事により人間社会のコミュニケーションの闇とCanvasやCSSとAndroid標準ブラウザ の闇を知る
内容 ゆるふわ (人生 ゆるふわ)
我々(人類)はRailに乗る事にした
当初、まさかと思われていたRail的な人生 は見事成功した(Rails2系から)
そう思っていたが、問題があった
「JavaScript」ファイルどうする
キッチリ分かれた model と controller に 比べ、そこら中に散らばるJSファイル
そこに現れた一つのGem
「Sprockets」
主な機能
複数のJavaScriptファイルを1つにまとめる
利点
利点 • 共通コードを切り出し、再利用しやすいフォルダ構成にしやすい • JavaScriptファイルを1つにまとめる事によってHTTPリクエストの回数 減 • Requireしやすい
こいつがあったおかげでRailsのフロントが救われた
Railsに組み込まれる(ver 3.1)
もはや無かった時代を思い出せない
(そんなにRails触ってないけど)
ただ、一つ問題があった
個別化して読み込みたい
めっちょ個別化して読み込みたい
1つにはしてくれて良いんだけど、必要無 い部分まではロードしなくていいんだよ^^;
そこで考えた
None
やった事
やった事リスト • (前提条件)本来ならapplication.jsしか呼んでない所がほとんどのプロ ジェクトだと思うが、 a.js, b.js, c.js と3つに分かれていた。 • 「require_tree
.」を削除した • 「rails-‐assets.org」を使う事にした • 「javascript_include_tagのasync: true」を使う事にした • htmlと同じ構成でファイルを置いた
失敗した
None
None
ドヤ顔 ꉂꉂ ( ˆᴗˆ )
読み込みタイミングをちゃんと調べきれて いなかった
失敗しない為には
unless 心配性? (#心配性じゃない人達へ)
「japascript_include_tag params[:controller]」 をちゃんと使う
「Rails.application.config.assets.precompile = %w()」 をちゃんと使う
「config.assets.debug = false」
ローカルでちゃんとがっちゃんこしてくれる
WebコンソールのElementsで読み込まれ ている場所をちゃんと見る
else (心配性な方々へ)
スクショを撮る
以上です、ありがとうございました!