hiyoko-programingの日記

プログラミングを勉強したてのひよっ子。   エンジニア目指して勉強中。

2020-02-20から1日間の記事一覧

正規表現

正規表現とは 登録フォームに電話番号を記入する欄がある。Aさんはハイフンを付けて入力したが、Bさんはハイフン無しで入力をしている。そのままデータベースに保存すると、異なるフォーマットで保存されてしまい管理が大変。 フォーマットを統一させるため…

リファクタリング 参考資料

MVCとは 皆さんがよく知っているようなWEBサービスも、最近はRuby on Railsで作られていることが多くなってきており、モデルの個数が300個を超えるような中〜大規模以上のアプリケーション開発の例が増えてきた。 WEBサービスを構築していく過程で数万行に及…

オブジェクト指向 参考資料

オブジェクト指向とは オブジェクト指向とは、複数のオブジェクトを組み合わせてプログラムを構築する考え方。オブジェクトとはデータと処理の集まり。漠然とした集まりではなく、ひとつのテーマを持った集まりである。人をオブジェクトとして考えてみると、…

リファクタリング

リファクタリングとは リファクタリングとは、処理の内容を変えずに冗長なコードを削除したり、コードを改善すること。 リファクタリングのメリット リファクタリングを行うことで下記のメリットが得られる。 読み手が最短時間でコードを理解できるようにな…

良いコードの書き方

良いコードとは 良いコードとは、読みやすいコードのこと。読みやすいコードは、「他の人が短時間で理解できるように書かれている」ことを指す。読みやすいコードを書くことは、一緒に開発するチームのためだけではなく、自分のためにも重要。 今後複数人で…

Rails Drill 問題10

必要となる知識 テーブルに保存されているレコードは、 「インスタンスの取得」 → 「インスタンスのカラムの更新」という流れで特定のインスタンスのカラムの値を更新することができる。 属性値の更新には、 update というメソッドを利用する。 updateメソッ…

Rails Drill 問題9

必要となる知識 テーブルから取得してきたレコードの塊に対してorderメソッドを利用すると、様々な条件でレコードの順番を並び替えることができる。例えば、order('カラム名 DESC')とすると、指定したレコードのカラムの中身の数値が大きい順にレコードを並…

Rails Drill 問題8

必要となる知識 limitメソッドを利用すると、取得するレコードの数を制限することができる。制限する数は、limitメソッドの引数で指定する。以下のようにすると、tweetsテーブルから取得してきたレコードのうち5つだけの配列を作成する。 コンソール 1 2 3 4…

Rails Drill 問題7

必要となる知識 特定の条件を満たすインスタンス(レコード)を全て取得する場合はwhereメソッドを使う。find_byメソッドと同様に引数でカラムと値を指定することで、その指定に一致するレコードを全て取得する。なお、返り値は条件を満たすインスタンスによ…

Rails Drill 問題6

必要となる知識 特定の条件を満たすインスタンス(レコード)を取得するにはfind_byメソッドを使う。ただし、条件に満たすものが複数あった場合、idが一番若い一件だけを返す。そのため、主に1件しか存在しないことが期待される場合にfind_byメソッドを使う…

Rails Drill 問題5

必要となる知識 モデルに対し、findメソッドを使うと特定のidのレコード一つを取得することができる。findメソッドは数字を引数にとり、その数字をidとするレコードを取得する。 tweetsテーブルに保存されている任意のidのレコードを取得する。 実行例 コン…

Rails Drill 問題4

必要となる知識 モデルに対してallメソッドを使うことで、そのモデルに保存されている全てのインスタンスを取得することができる。これはテーブルに保存されているレコードと対応している。 tweetsテーブルに保存されている全てのレコードを取得する。 実行…

Rails Drill 問題3

必要となる知識 newメソッドだけでは、インスタンスは生成されるものの、テーブルには保存されない。そのため、saveメソッドを用いる必要があるが、createメソッドを使えばnewとsaveを同時に行ってくれる。createメソッドは、newメソッドと同様に引数でカラ…

Rails Drill 問題2

必要となる知識 以下のように、インスタンスは生成された後でもカラムの値を変更することができる。 コンソール 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 # textカラムの値を"first"とする pry(main)> tweet = Tweet.new(text: "first") => #<Tweet id: nil, text: "first", image: nil, created_at: nil, updated_at: nil, user_id: nil> # tweetのtextカラ</tweet>…

Rails Drill 問題1

必要となる知識 newメソッドでは、それぞれのインスタンスのカラムの値が空(nil)になっている。以下のように、newメソッドに引数を渡すことで、カラムの値がセットされた状態でインスタンスを生成することができる。カラムを複数指定する場合は、カンマで区…

rails console(rails c) の使い方

pictweetのディレクトリに移動 以下のようにコマンド打ち、最後にpwdと打ってカレントディレクトリを確認する。 ターミナル 1 2 $ cd ~/projects/pictweet $ pwd コンソールを起動。 ターミナルでrails cと打つ。すると入力待機状態になる。 ターミナル 1 2 …