Pipelineの仕組みの解説|Fresopiya究極の自由を目指すブログFresopiyaFresopiya場所にもお金にも時間にも、何にも縛られない自由な状態になったら一体人間は何をしてどこに向かうのか。自由を目指すエンジニアのブログです。「哲学」と「プログラミング」と「政治経済」、「ブログ」がメインになるかと。07/07/2019スポンサードリンクどうも、とがみんです。Pipeline」に焦点を当て、その仕組み、役割を紹介していきます。Pipeline(アセットパイプライン)とは、「Sprocketsライブラリ」によって提供される、JavaScript、スタイルシート、画像などのアセットをまとめて管理し、アセットをより効率的に返すためのものです。Pipelineがどのようなことをしているのかの詳細を説明していきます。Pipelineが行っている処理の一連の流れです。以下の処理について順に紹介していきます。高級言語のコンパイルファイルの統合ファイルの圧縮ダイジェストの付与コンパイルまず高級言語で記述されたコードをコンパイルし、ブラウザ上で動かすことのできるコードに変換します。「.js.coffee」や「.css.scss」はCoffeeScript/SCSSの拡張子で、これらは、JavaScript/CSSのコードを効率的に生成するための高級言語です。これらの高級言語は、直接ブラウザ上で動かすことができないので、コンパイルする必要があります。Pipelineは、こういった高級言語をブラウザ上で動かすことができるJavaScript/CSSへの変換を行ってくれます。コンパイルは自動で行ってくれるため、開発者は意識する必要がありません。コンパイル:プログラムのソースコードをコンピューターが実行可能な機械語に翻訳すること。続いて、生成されたJavaScriptのファイルや、CSSのファイルは、「application.js」と「application.css」のそれぞれ一つのファイルにまとめられます。次に、まとめられた、JavaScriptファイルやCSSファイルは圧縮されます。文法上必要のない空白を削除したり、改行を削除したりします。圧縮方式や、そもそも圧縮するかどうか等、以下で設定することができます。#nilダイジェスト付与そして、最後のダイジェスト付与とは、コード内容はらハッシュ値を算出し、ファイルの末尾に付与する処理です。意図せぬキャッシュにより、アセットの修正がブラウザにリアルタイムで反映されないといった問題を防ぐことができます。ハッシュ値:一定の法則で同じ長さに短縮した数値。して生成されたファイルが読み込まれ、ブラウザに反映されます。Pipelineについて紹介しました。rails】開発環境の構築から動作確認まで。性能向上を目的とした研究をしていました。現在はFinTech系ベンチャー企業勤務。