アラフォーからのプログラミングとデザイン

大人から始めたプログラミングとデザインについてのあれこれ

Railsチュートリアル復習中:デバッグ

f:id:simpledancer:20171221123650p:plain

デバッグについて、いつもさらっとここも流していたので少しゆっくりやりながら進めていこうと思います。

Railsチュートリアルでいうと7章のところです。

railstutorial.jp

 デバッグとは

デバッグ - Wikipedia

デバッグ(debug)とは、コンピュータプログラム電気機器中のバグ・欠陥を発見および修正し、動作を仕様通りのものとするための作業である。サブシステムが密結合であると、1箇所の変更が別の箇所でのバグを作り出すので、バグの修正がより困難となる

http://wa3.i-3-i.info/word1419.html

バグ→プログラムのおかしいところ

デバッグ→そのおかしいところを取り除く作業

デバッガー→バグの原因を見つけてくれるお手伝いをするソフトウェアの事orその仕事をする人

 まずデバッグ情報を追加する

f:id:simpledancer:20171221125353p:plain

 layout/application.html.erbに <%= debug(params) if Rails.env.development? %>を追加する

本番環境に展開したアプリケーションではデバッグ情報を表示したくないので if Rails.env.development?となる。

環境開発のみで行うべきで本番環境やテスト環境ではデバッグ情報は表示されないようにする。

CSSの追加

デバッグの出力を綺麗にするためにCSSを追加します。

@mixin box_sizing {  
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

.#ここでSassのミックスイン機能 (ここではbox_sizing) を使っています。ミックスイン機能を使うことで、CSSルールのグループをパッケージ化して複数の要素に適用することができます。

 

.

.

/* miscellaneous */

.debug_dump {
clear: both;
float: left;
width: 100%;
margin-top: 45px;
@include box_sizing;
}

www.webcreatorbox.com

 

デバッグ出力

Railsサーバーを立ち上げるとこんな画面になります。

f:id:simpledancer:20171221131656p:plain

デバッグ出力には、描画されるページの状態を把握するのに役立つ情報が含まれます。

 これはparamsに含まれている内容で、YAML5という形式で書かれています。YAMLは基本的にハッシュであり、コントローラとページのアクションを一意に指定します。

YAMLとは

構造化されたデータを表現するのに便利な、ファイルの書き方ルール(の1つ)
です。

です。

http://wa3.i-3-i.info/word13801.html

Rubyist Magazine - プログラマーのための YAML 入門 (初級編

まとめ

とりあえず7章からは難しいらしいです。しかもつぎからつぎへと知らない単語や知っているけどよくわからない単語、説明に困る単語が出てきます。

覚書なので意味のわからないところは多いブログではありますが、引き続きやっていきたいと思います。

 

続く。