0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Rails]基本理念について

Posted at

はじめに

本記事では、railsの基本理念について、まとめてみました。

基本理念

DRY

railsでコードを書く時には、
同じ情報を繰り返し記述することは、コード的にも、見る人にも良くはありません。

DRYとは、Don't Repeat Yourselfの略
同じ情報を繰り返し記述しないというものです。

スマブラのドンキーコングを想像してください。
(ちょっと強引ですので、ご容赦)

DRYを意識していないドンキーコング

ジャブ = ドンキーのAボタン
パンチを溜める = ドンキーのBボタン
ジャンプする = ドンキーのYボタン

- 「ドンキー」を修正する場合、3箇所もあるので、工数がかかる
- 一つだけ「ドンキー」のまま未修正に気づかなかった場合のリスク有

DRYを意識したドンキーコング

fighter = ドンキー
ジャブ = fighter の Aボタン
パンチを溜める = fighter の Bボタン
ジャンプする = fighter の Yボタン

- 変更点が1つだけなので、修正工数が少ない
- 修正点が少ないので、修正漏れも少ない

DRYのメリット

  • 可読性の向上
  • コード量を減らすことによりアプリケーションの動作が早くなること

CoC

Convention Over Configurationの略
設定よりも規約を優先するという考え方です。

例えば、rails g modelなどコマンドを入力すると、
ファイルが自動で作られておりましたが、
このようにrailsの決められているルールを活用し、アプリケーションを作成することが保どんどです。

つまり、自分自身で0から設定するのではなく、
そのルールに則り作業していたということ=設定よりも規約を優先していることになります。

CoCのメリット

  • 決められているルールを利用することで開発スピードが上がり、質も担保できる
  • 規約は開発者同士の共通認識であるため、可読性が向上することなどが挙げられます。

railsのディレクトリ階層について

ディレクトリ階層も規約に則って整理されています。
私自身、理解できているか確認したいので改めて記述します。

app...MVCに関するファイルなどを格納している、アプリケーションの主要ディレクトリ。

bin...Binary Codeの略。コマンドなどで実行するファイルが格納。

config...アプリケーションの設定関係のファイルが格納。

db...データベースに関するファイルが格納。

lib...libraryの略で、基本的なライブラリが格納。

log...アプリケーションが動いている間の記録などのファイルが格納。

node_modules...nodeのパッケージが格納。

public...デフォルトで表示される画面の情報などが格納。

storage...画像などをアプリケーション自体に保存する際に使用するディレクトリ。

test...アプリケーションのテストを行う際に使用するファイルを格納するディレクトリ。

tmp...アプリケーションが起動している際の一時的な情報を格納するディレクトリ。

vendor...ライブラリ(Gem)などをアプリケーション自体にインストールする際に使用するディレクトリ。

.browserslistrc

.ruby-version

babel.config.js

config.ru

Gemfile

Gemfile.lock

package.json

postcss.config.js

Rakefile

README.md

yarn.lock

オブジェクト指向について

過去に、スマッシュブラザーズのドンキーコング(またかよ)で、
例えている記事がありますので、こちらを参照ください。

以上です。

終わりに

プログラミングを始めて2ヶ月程経ち、railsのことをもっと詳しく知りたいと思いました。
rubyやrailsに限らず、今後は、もっと多くの言語を学びたいと考えておりますが、
オブジェクト指向などに関しては、他の言語にも通づるものがありますので、
ここで、今自分が知っている言語を深ぼるのは、良いのではと思っています。

まだまだ学びたいことが多いので、楽しみだなー!
明日も頑張ります!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?