よちよち.rb 第26回 #yochiyochirb

今回は、よくお世話になっている渋谷の電源カフェbeezさんでした!

概要

自己紹介(進捗どうですか!)
Railsチュートリアル(第4章に入りました!)

お客様にドキドキ

最近、 @netwillnet さんや @shokenz さんがいらしてくださっていたんですが、
今回はshibuya.rbやrubykajaでおなじみの @tyabe さんがいらっしゃいました。

お客様がいらしても、私たちのやることはいつも通り、あーでもないこーでもないとよちよちしているだけなんですが、
今回は私が座ったテーブルに @tyabe さんがいらっしゃったのでちょっとドキドキでした。

おそらく私たちのグループワーク中、やきもきしていらしたと思うんですが、
暖かく見守ってくださってありがとうございました。

…あ、やっぱり。。笑


3か月ごとに目標を見直す

今回は6月の振り返りをしたんですが、できたこととできなかったことがハッキリしていたので、
7月からの3か月は、できなかったことをもうちょっとできるようになるための目標設定にかえようと思います。
2014年も後半戦ですしね。

application.html.erb 見てたらCSSのこと気になってきた

@import構文とlinkでのCSS呼び出し

ちょうどこの日の昼間に、HTML+CSSの本を読んでいて、@import構文についての注意書きを読んだのを思い出しました。

28ページの2.2.1 スタイルシートのマージ

スタイルシートをHTMLに読み込む方法のひとつに「@import」構文がある。
しかし、@import構文によるインポートは多くの問題を含んでいる。
ひとつはパラレルロードの問題だ。ブラウザは複数のファイルを同時に読み込むパラレルロードをサポートしているが、@import構文を利用した場合、IEなどでパラレルロードが動作せず、ファイルをひとつずつ順番に読み込む問題が発生する。その結果読み込みが遅延して、ページの表示に時間がかかってしまう。
また、@import構文でのスタイルシートの読み込みは、link要素での読み込みと比較して、比較的遅いタイミングで発生するため、レンダリングに若干の遅延が発生してしまう。さらに、特定のページだけ一部のスタイルシートを切り替えるというような構成を組みにくいといった欠点もある。
それに対するメリットとしては、HTMLのhead要素内が簡潔になる、スタイルシートを簡単に追加できる、といった点があるが、デメリットに対してのメリットが小さいため、@import構文は利用せずlink要素を利用して読み込むほうがいいだろう。

すみません、要約して間違えるといけないのでそのまま引用しました。

読んだままですが、全体のバランスを考えてlink要素で読み込んだほうがいい、というのがこの本の意見でした。

でも、このあと続きがあって、
link要素で読み込むとき、スタイルシートを細かく分割していると、その分たくさん記述しなくちゃいけなくて、結果表示が遅くなる、とも指摘。
結局、共通のスタイルシートを「マージ」してひとまとめにしておくと、よりよい、ということでした。


グループワークのとき、このことを思い出したんですが、うまく説明できなくてとっちらかってしまいました。。反省。
にわか知識で発言するものではない。

"data-turbolinks-track" => true がしてくれていること

とっても参考になったのはこちらのエントリです。
Rails 4のturbolinksについて最低でも知っておきたい事 | KRAY Inc

とにかく、変更のないところはそのままに、bodyだけをまるっといれかえてレスポンスをよくする、みたいなことのようです。
でもこれを使っていると、Ajaxとかを書きかえたときに(?)、期待している動作をしてくれなくなるので、
気を付けてね、という話もあるとのこと。

これはRails4.0からの基本仕様のようなので、Rails3系からアップグレードするときに気を付けたほうがいいことなのかな?

私はまだ実践で気をつけなくちゃいけないレベルではない感じなので、
頭の片隅においておこう。


viewファイルとapplication.html.erbはどっちが先に読み込まれているのか?

yieldのことを考えていたら、「これは"呼ばれてる"の? "呼んでる"の?」という疑問がわいてきて、
それはつまり「viewファイルとapplication.html.erbはどっちが先に読み込まれているのか?」ということなんですが。。

クライアントからのリクエストを受けて、コントローラーが動いてブラウザにビューを渡し、
ビューに組み込まれたyieldが、ブロックやシンボルを呼び出す…ということでよろしいでしょうか。

なので、viewファイルを読み込んで、application.html.erbを読む。

あってるかなぁ。


そういえば第4章はいってた

先週、第3章を終えたのでした。
あんまり自覚がなかったのは、演習問題とかを飛ばしたからかな…うっかり第4章から始まりました!
なんかだいぶ進んだな〜と思ったんですが、全体を見てみたらまだ半分も終わってなかったんですね。。道のりは長い。
でも一日一日丁寧に取り組んでいるので、気づきや学びが多くて、
この様子で最後まで終えられたら、すごくたくさんのことが身についているはず…!!と期待しています。

来週は、前々より話していた復習回だそうです。
今までのところで、気になっていたところ、もう一度確認したいところなどを復習する回ということなので、
ひとりでチュートリアルを進めていたはじめての方とか、お久しぶりの方とかにも大変おすすめの回になるのでは!

残っているIssueをながめたり、時間つくれたらもう一度チュートリアルをやってみようかな。

七夕だったので

エア短冊 【 知識をつけてWebエンジニアとして向上しますように 】


有言実行したいと思います。