プログラミング学習者のアウトプット 弐
今週の学習内容のアウトプットとメモ
データベース設計
・エンティティ
サービスの中で管理する必要がある概念のことで、これが個別にもつ情報のことを、エンティティの属性という。例えば、ユーザー登録が必要であればユーザー名がエンティティで、登録者の名前やメールアドレス等が属性に当たる。
・リレーション
エンティティ同士の関係性を示すもので、これを定義するとデータベースにデータを入れた際、関連する他のデータベースにもデータを入れることができる。
・インデックス
データベースにおいては、データを入れる場所であるテーブル内の検索速度を上げられる仕組みのこと。しかし代償にデータの保存や更新速度が下がる。
・正規化
データベースのデータ構造を効率化するための手段。非正規形→第一正規形→第二正規形・・・と進めるにつれて重複や無駄が無くなっていくが、小さなテーブルが増えていくためパフォーマンスは低下する。
HamlとScss
・Haml
HTMLよりも簡単にビューを書けるようにしたテンプレートエンジンのこと。
・Sass
CSSで計算や変数を使えるように機能を拡張した言語。このうちのscss記法という書き方が主に使われる。
・パーシャル
Scssで、スタイルを記述するファイルを複数に分けることができる機能。ファイル名を _ファイル名.scss として作成し、application.scssファイル内等に @import "ファイル名"; と記述すれば呼び出せる。これにより機能毎にファイルを分けるといったことができる。