はじめに
Qiitaアドベントカレンダー3日目です。
今日も最近学んだことについて自分なりにまとめていきたいと思います。
BDD(ビヘイビア駆動開発)
TDD(テスト駆動開発)から発展したもの。
TDDと同様、テストコードを書くが、「要求される仕様」に近い形でテストコードを記述する。仕様(スペック)とテストがかなり近いものとなるので、BDDでは、「スペックファースト」となる。私は、Rubyを使ったプロジェクトの開発で、Rspecを使いました。
REST
リソースを扱うための考え方である。
リソースはそれぞれ固有のURIを持っていて、そのURIにアクセスすることで、それぞれのリソースを操作することとなる。操作はHTTPのメソッドを正しく使うことで行う。
メソッド | 役割 |
---|---|
GET | リソースの取得 |
POST | リソースの新規作成 |
PUT | 既存のリソースのアップデート |
DELETE | リソースの削除 |
form_with,form_for,form_tagの違い
form_tagは以前まで、modelがない場合に使用されていたもので、逆にform_forはmodelがある場合に使用されていました。ですがRails5.1以降では、modelの有無に関係なく、2つを統合したようなform_withができたので、今はform_withを使うことが推奨されている。(url,modelの指定など可能)
HTMLフォーム
ユーザとWebサイトやアプリケーションの対話の要となるもの。
フォームによって、ユーザはWebサイトへデータを送ることができる。
だいたい、1つ以上のウィジェットとで作られ、テキストフィールド、エリア、セレクトボックス、ボタン、チェックボックス、ラジオボタンなどがある。
ウィジェットには、用途を説明するためのラベルがついていることが多い。
フォームで集めたデータは、だいたいWebサーバに送られる。
最後に
Ruby on Railsなどで開発をしていると学ぶことが多くて大変です。 初めてのことが多くて躓くことが多いですが、その度に、トライアンドエラーで乗り越えることが大切だなって最近思います。まだ、説明が曖昧なのでもっと勉強して、知識の幅を広げていきたいと思います。