Help us understand the problem. What is going on with this article?

最近勉強して知ったこと、まとめてみた2

はじめに

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などで開発をしていると学ぶことが多くて大変です。:sweat_smile: 初めてのことが多くて躓くことが多いですが、その度に、トライアンドエラーで乗り越えることが大切だなって最近思います。まだ、説明が曖昧なのでもっと勉強して、知識の幅を広げていきたいと思います。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした