2022-01-01から1年間の記事一覧
目次 目次 はじめに 前知識 Proc &修飾 (&:method)を解読する 例のコードを読んでみる まとめ 参考 はじめに この記事はCODE BASE OKINAWA Advent Calendar 2022 - Adventarの10日目のエントリーです。 今まで何気なく使っていた(&:method)がどういう挙動を…
コメントすべきでないこと、すべきなこと コメントの目的とはなんでしょうか? それは書き手の意図を読み手に知らせることです。 ただし、全ての意図をコメントすればいいわけではありません。 コメントを読むということはその分だけコードを読む時間が減る…
優れたソースコードは「目に優しい」 見た目が美しいコードの方が読みやすいはずですよね。 改行やインデントがメチャクチャなコードは大変読みにくいです。 この章では見た目的にコードを読みやすくするための三つの要素と原則が紹介されています。 要素 余…
最善の名前とは誤解されない名前をつける! ある変数や関数名をつけた際には「他の意味に取られることはないか?」を自問するべきです。 以下では自問・検討の仕方を見ていきます。 曖昧な名前を避ける 変数に対して代入されるものが、何かに処理をくわえて…
初めに 変数名や関数名には情報を詰め込むべきです。 例えば、 data や tmp などは情報があまり含まれていないといえます(経験としてdataを使った際にレビューをいただいたことが)。 情報を詰め込んだ名前とはどのようなものでしょうか。 命名するポイント…
「簡潔さ」と「安心」のどちらが大切か、またどのようにその判断を行うか 以下のコードを見比べて見ましょう。 # A n = 3 puts n % 2 == 0 ? "#{n}は偶数です" : "#{n}は奇数です" #=> 3は奇数です # B n = 3 if n % 2 ==0 puts "#{n}は偶数です" else puts …
veriserve-event.connpass.com こちらのイベントに参加させていただいたので感想や特に学びになったことについて書いていこうと思います 概要 特に印象に残ったこと テストコードは過度にDRYにし過ぎない 「わかるようでわからんコード、だがしかしパスする…
目標 vscode でrubyのフォーマッターである rufo を使って自動整形を行えるようにする 手順 vscode で command + shift + x を押して拡張機能を開く Ruby と Rufo をインストールする gem install rufo を実行する(permissionのエラーが出たらsudoつけるなど…
はじめに Railsチュートリアルの演習を進めつつ、わからなかったところ、調べたところをアウトプットしてしこうと思います。 4.1 メディアタイプ: パソコンのスクリーンだけでなく、プロジェクタなどの他の媒体のこと 参考: メディアタイプ-CSSの基本 4.2 4…
こんにちは. おさとです 当エントリーではRailsプロダクトをGitHub Actionsによるテスト、デプロイの自動化をおこなっていきます. やりたいこと push時にテストを走らせる mainにマージする時にテストを走らせる GREENならデプロイ 背景 Railsで開発を進める…
初めに Railsチュートリアルの3~14章のコードを私の理解とともに読み進めていく、という試みのもとこのエントリーを書いております 間違いなどあればコメントでご指摘いただけると幸いです 環境 Ruby: 2.6.3 Rails: 6.0.4 エディタ: RubyMine (cloud9では…
環境 Ruby 2.6.6 Rails 6.0.5 起きたこと rails s をして、root以外のページにアクセスすると、Webpacker::Manifest::MissingEntryError が発生した。 解決法 Webpackerのバージョンを上げて、プリコンパイルし直す。 手順 Gemfileのgem 'webpacker' のバー…
背景 M1 mac にて rbenv install 2.6.6 を実行したところbuildで落ちてしまったので、その時にしたことをメモしておきます. やったこと1 RUBY_CONFIGURE_OPTS=--with-readline-dir="$(brew --prefix readline)" rbenv install 2.6.6 を実行しましたが、同様…
やりたいこと 時間をかけず、rspecが実行できるように設定する 注意 『Everyday Rails - RSpecによるRailsテスト入門』を参考にさせていただいてますので、詳しい説明などはそちらをご覧ください leanpub.com 手順 Gemを追加する # 元々追加されてるGemは省…
起きたこと Open 'Edit Run/Debug configurations' dialog から実行・デバッグの設定をしようとしてもできなかった 解決方法 rm -rf .idea を実行し、プロジェクトを閉じて再度開くと、実行・デバッグができる状態になっている 補足 デバッグ系のGemは、バー…
結論 説明変数を用いると可読性が増す 説明変数とは? 式を表す変数のこと。 式の意味を説明してくれるような変数名にするため、説明変数と呼ぶ。 使う理由 コードの見通しが良くなるため。 具体例 users = [ { name: "太郎", hobbies: [ "baseball", "shogi…
結論 rbenvなどなしにRubyの開発環境を作ることができた 目標 VS Code + Remote ContainerでRubyの開発環境を用意する やったこと 基本的には以下のリポジトリを参考にさせていただきました。 github.com 用意したのは .devcontainer ├── Dockerfile ├── dev…
結論 好きな時に、マインドフルネスな状態になることを目指せそう はじめに 何か調べている時に、どこからともなく別の思考が流れてくること、ありませんか?私はよくあります。 Rubyの勉強をしていたはずなのに、「AWSとHerokuそれぞれのメリット・デメリッ…
このブログ初の記事になります! igaigaさんの Railsの練習帳を読んで得た知見をアウトプットしていきます。 結論 規約から外れた関連付けにおいて双方向関連付けを行う場合、inverse_of の設定が必要になる。 双方向関連付け 関連付けにおいて、規約から外…