「describe・context・it(example)」の使い分け(RSpec)

【結論】 ・describeには、テストの対象(グループの範囲)を記述する ・contextには、テストの条件(状態)を記述する ・it(example)には、テストの内容(処理と期待)を記述する 【目次】 「describe・context・it(example)」の使い分け describeにつ…

【AtCoder:18回目】AtCoder Beginner Contest 140の振り返り(Ruby)

【目次】 振り返り A - Password B - Buffet C - Maximal Value D - Face Produces Unhappiness 《今日の学習進捗(3年以内に10000時間に向けて)》 【本題】 振り返り 今回は 9/7(土)に開催されたAtCoder Beginner Contest 140の振り返りを行います。 AtCod…

単語を複数繋げる場合の命名規則「◯◯ケース」について(キャメルケース・キャメルケース・ケバブケース)

【結論】 ・キャメルケースは単語の先頭を大文字して繋げる。変数名の先頭を大文字にするアッパーキャメルケース(例:hogeCase)と小文字にするローワーキャメルケース(例:HogeCase)がある。 ・スネークケースは単語同士をアンダースコア( _ )で繋げる…

Rubyの「nil?・empty?」とRailsの「blank?・present?」について

【結論】 ・nil?メソッドは、レシーバーがnilのときtrueを返し、nilではない場合falseを返す ・empty?メソッドは、オブジェクトが空(空文字列("")・空配列([])・空ハッシュ({}))のときtrueを返し、1つ以上の要素があればfalseを返す。文字列・配列・…

MySQLでNOT NULL制約を設定してもNULLでエラーにならない問題(無効データの制約)

【結論】 ・MySQLは無効または不適切なデータ値を許容しており、これらを有効な値に強制的に変更して、データの整合性を取っている ・例えば、NOT NULL制約を設定している文字列タイプのカラムにNULLを保存しようとした場合、エラーにならず、空文字("")が…

「Mysql2::Error: Data too long for column」の原因(Rails)

【結論】 ・Mysql2::Error: Data too long for columnとは、DB側の文字数制限を超えたデータを保存しようとした際に発生するエラー ・DB側の制限なので、モデルなどにバリデーションを設定していないとしても、このエラーは発生する ・対応策は、DB側の制限…

ハードディスク(磁器ディスク装置)について

【結論】 ・ハードディスク(磁器ディスク装置)とは、金属の円盤に磁気の力でデータを書き込んだり読み込む装置 ・安価で大容量かつ比較的高速な為、多くのコンピュータの補助記憶装置として採用されている ・書き込まれたデータは、シリンダ・トラック・セ…

【AtCoder:17回目】AtCoder Beginner Contest 139の振り返り(Ruby)

【目次】 振り返り A - Tenki B - Power Socket C - Lower D - ModSum 《今日の学習進捗(3年以内に10000時間に向けて)》 【本題】 振り返り 今回は 9/2(日)に開催されたAtCoder Beginner Contest 139の振り返りを行います。 AtCoder Beginner Contest 139 …

AWSのリージョンとアベイラビリティーゾーンについて

AWS

【結論】 ・AWSでは、インフラの可用性を高める為、データセンターを「リージョン(Region)」「アベイラビリティーゾーン(Availability Zone、AZ)」という階層で分けている ・リージョンとは、世界各地に点在するデータセンターを、東京や北カルフォルニ…

単一障害点(SPOF)について

【結論】 ・単一障害点(Single Point of Failure)とは、システムを構成する要素のうち、停止するとシステム全体が停止してしまう部分のこと ・障害に強いシステムを設計する際、個々の構成要素を複数用意して冗長性を持たせる手法が一般的 ・しかし技術的…