Yuki's Tech Blog

仕事で得た知見や勉強した技術を書きます。

【2023/1/29 ~ 2023/6/30】コードレビューで知ったことをざっくりまとめてみた part4

目次 目次 作った機能 Rails スコープ名は形容詞または形容詞句を使う 動詞で始めるのは、あくまで「処理を実行するメソッド」 Rubyでは慣習としてselfを省略する スコープ名は文脈が大切 クーポンコードなど、ユーザーの瑣末な一情報をユーザーレスポンスに…

【2023/1/29 ~ 2023/6/30】コードレビューで知ったことをざっくりまとめてみた part3

目次 目次 作った機能 Rails 「価格をフォーマットするだけ」のヘルパーが「税込」「税抜」を意識するのは違う 消費税の計算は TasService.tax_amountを使う ruby では引数のない関数呼び出しは () を省略する慣習がある 既にトランザクション内にいるのに、…

【2023/1/29 ~ 2023/6/30】コードレビューで知ったことをざっくりまとめてみた part2

目次 目次 作った機能 Rails メールのtext版は自動生成されるので、必要ない。 メール送信はトランザクション外でやる。メール送信はロールバックで取り消されないため。 ActiveRecord::Base.transactionの返り値は、最後に実行した処理 管理画面で「公開す…

【2023/1/29 ~ 2023/6/30】コードレビューで知ったことをざっくりまとめてみた part1

目次 目次 作った機能 Rails full_nameメソッドをモデルに実装する アドレスはハードコーディングせずに設定で持った方が良い サービス内でメール送信処理を行う 対象のリソースを置き換えるなら、putにした方が適切 Class.newで独自エラーが作れる cancel処…

転職する際に調べたことをまとめた雑メモ 2023年6月26

目次 目次 はじめに 転職する上で絶対に抑えたい点 最低限の給料が担保されている 人が多すぎない わからないことをわからないと言える環境である 人を育てる環境があるか そのサービスが好きか その場にいる人が好きか サーバーサイドをメインでやれるか こ…

昔書いた思考のメモをまとめる 2023年6月28日

目次 目次 はじめに 自分自身が人とのコミュニケーションで意識したい考え方 自分自身が常に意識したい考え方 自分自身が論理に関して意識したい考え方 やってみたいこと まとめ 参考記事 はじめに 昔書いた思考のメモをまとめます。元々はホワイトボードに…

禅の経験を通して知った学び

目次 目次 概要 そもそもなぜ禅をしようと思ったのか 禅の経験を通して知った学び 呼吸に集中する 起きたら起きたでいいじゃないか。だからなんなんだ。起こったからなんなんだ。腹の中に落とし込め。自分の生き方を変えるな。 実践が伴っていない知識は頭で…

PRESIDENT 毎日が楽しくなる時間術を読んだ感想

目次 目次 はじめに どうでも良いことに対して、選択肢を作らない。もしくは、選択肢を2択にする 作業を9分割する タイパとコスパに振り回されすぎない 疲れている時や忙しい時ほど、やらない選択をする 意識して人に親切にすると、幸福度が高まる 過去を追…

仕事を通して知った大事な考え方 Part1

目次 目次 初めに 仕事を通して知った大事な考え方 自分の書いたコードに責任を持つ 問題を切り分けて、トリガーを見つける ある問題とある問題に関係ない別の問題を強引に関連づけない 正確な情報を得るためにまずは、公式ドキュメントを読む 終わり 参考記…

【TS】分割代入引数についてざっくりまとめてみた

目次 目次 背景 分割代入引数とは 分割代入引数をオプショナルにする 分割代入引数の全体の既定値 参考記事 背景 分割代入と分割代入引数がごっちゃになっていたので、まとめます。 分割代入引数とは まず、おさらいとして分割代入とは、配列の要素やオブジ…

【TypeScript】【Ruby】TypeScriptとRubyのクラスの書き方を比較してみた part1

目次 目次 背景 そもそもクラスとは クラスの定義方法 TS Ruby インスタンスの生成方法 TS Ruby コンストラクタ TS Ruby メンバ TS Ruby メソッド TS Ruby アクセス修飾子 TS Ruby メンバ変数のreadonly修飾子 TS Ruby getter Ruby 参考記事 背景 TypeScript…

【オブジェクト指向設計実践ガイド】第2 章 単一責任のクラスを設計するを読んで学んだことをざっくりまとめてみた

目次 目次 クラスとは クラスを定義するメリット ドメインとは何か メソッド、手続き、振る舞いの違いとは DRY原則の本質 メッセージを送り出すとは? 凝縮度とは 単一責任の原則とは 参考記事 クラスとは クラスとは、あるオブジェクトに関する変数と、ある…

【オブジェクト指向設計実践ガイド】第1章 オブジェクト指向設計を読んで学んだことをざっくりまとめてみた

目次 目次 背景 そもそもオブジェクトとは オブジェクト指向とは何か、オブジェクト指向プログラミング、オブジェクト指向言語との違いは何か オブジェクト指向でソフトウェアを開発すると何が嬉しいのか? オブジェクト指向設計とは何か 良い設計とは何か …

【SQL】CRUD処理のSQL文ついてざっくりまとめてみた

SQL

目次 目次 背景 参照(SELECT文) 登録(INSERT文) 削除(DELETE文) 更新(UPDATE文) 参考記事 背景 SQLのCRUD処理をパッとかけなかったので、ブログにまとめようと思います。 参照(SELECT文) SELECT文は、テーブルからデータを参照したいときに使います。 以下の…

【SQL】結合についてざっくりまとめてみた

SQL

目次 目次 背景 結合とは 内部結合と外部結合の違い 外部結合の種類について 内部結合の構文 外部結合の構文 参考記事 背景 結合のSQLがパッと書けなかったので、記事にまとめようと思います。 結合とは 結合とは、複数のテーブルを組み合わせる処理のことで…

【Ruby】Rubyの復習を通して知ったことをざっくりまとめてみた

目次 目次 背景 Rubyで知ったこと コマンドライン引数 initializeメソッド インスタンス変数とローカル変数の違い 末尾がイコールで終わるメソッドは、半角スペースを開けることができる オブジェクトについて データ型について 擬似変数 組み込みライブラリ…

【2023/1/8 ~ 2023/1/28】コードレビューで知ったことをざっくりまとめてみた

目次 目次 概要 Rails no_contentなのにレスポンスボディを返さない 変数名がシリアライザー名と同じ場合、シリアライザーを指定しなくて良い React 真偽値の時の変数名とコンポーネントのprop名に気をつける 同じfeaturesからインポートする際は、相対パス…

【TS】keyof型演算子の使い方についてざっくりまとめてみた

目次 目次 概要 keyof型演算子とは 参考記事 概要 keyof型演算子の使い方がパッと出なかったので、ブログにまとめようと思います。 keyof型演算子とは keyof型演算子とは、オブジェクト型の複数のプロパティ名をリテラル型として持つ共用体型を作成する型演…

【Git】ローカルブランチの名前を変更する方法をざっくりまとめてみた

Git

目次 目次 概要 そもそもローカルブランチとは そもそもリポジトリとは そもそもステージングエリアとは ローカルブランチの名前を変更する方法 参考記事 概要 ローカルブランチの名前を変更する方法がパッと出なかったので、まとめます。 そもそもローカル…

技術書を読むときの批判的思考について

技術書を読むときの批判的思考について 技術書の予習と復習 この記事の「その本は胡散臭い人に書かれたと考える」って考え方すごく共感できるな。 胡散臭い人が書いた本だと考えて読むことで、批判的思考になって、書いてあることをそのまま受け取るのではな…

【TS】typeof演算子とtypeof型演算子の違いについてざっくりまとめてみた

目次 目次 概要 typeof演算子とは typeof型演算子とは 参考記事 概要 typeof演算子とtypeof型演算子の違いがごっちゃになってきたので、まとめようと思います。 typeof演算子とは typeof演算子とは、JavaScriptで使う演算子です。値の型を示す文字列を返しま…

【Ruby】nilとは何かについてざっくりまとめてみた

目次 目次 概要 nilとは何か TSのnullとの違い 参考記事 概要 nilとは何かの問いにパッと答えられなかったので、まとめようと思います。 nilとは何か nilとは、「何もない」ことを表すオブジェクトです。nil自体もオブジェクトであり、NilClass クラスの唯一…

【Ruby】【TS】matchメソッドについてざっくりまとめてみた

目次 目次 概要 matchメソッド Ruby TS 終わり 参考 概要 業務でmatchメソッドを使う時があったのですが、パッと出なかったのでブログにまとめようと思います。 matchメソッド Ruby Rubyにおけるmatchメソッドは、String#matchです。実引数で指定した正規表…

【Web API】CRUD機能のエンドポイントとリクエスト、レスポンスをどのように設計するかをざっくりまとめてみた

目次 目次 概要 APIとは APIと実装 Web APIとは Web APIにおけるエンドポイントとは リソースとは Web APIのエンドポイント、リクエスト、レスポンス GET タスク一覧機能 タスク詳細機能 POST タスク登録機能 PATCH タスク更新機能 DELETE タスク削除機能 ま…

【2022/12/21 ~ 2023/1/7】コードレビューで知ったことをざっくりまとめてみた

目次 目次 概要 Open API どんなリソースを操作しているかが分かるパスを書く 使い手の意図しない挙動が発生するようなAPIを作らない Rails has_manyで指定する関連モデル名は複数形にする Active Recordオブジェクトの保存時に何か処理を実行したい場合、モ…

【2022/12/3 ~ 2022/12/20】コードレビューで知ったことをざっくりまとめてみた

目次 目次 概要 Open API OpenAPI 3.1未満の場合はnullable: trueを追加しないとnullが許容されない Rails Like句の後ろに半角スペースを入れる procよりラムダを使う 分類を表すカラム名はkind や categoryのような単語を使う Rubyではスネークケースを使う…

【TS】Null合体演算子(??)についてざっくりまとめてみた

目次 目次 背景 Null 合体演算子とは 論理和演算子との違い 参考記事 背景 Null合体演算子を実務で使うことがあったのですが、パッと使うことができなかったので、ブログにまとめようと思います。 Null 合体演算子とは Null合体演算子(??)とは、論理演算子の…

【Ruby】【TS】文字列を整数、整数を文字列に変換する方法をざっくりまとめてみた

目次 目次 背景 文字列を整数に変換する Ruby TS 整数を文字列に変換する Ruby TS 参考記事 背景 文字列を整数、整数を文字列に変換する方法がパッと出なかったので、ブログにまとめようと思います。 文字列を整数に変換する Ruby Rubyで文字列を整数に変換…

【TS】【Ruby】配列に要素を追加する方法をざっくりまとめてみた

目次 目次 背景 配列に要素を追加する Ruby TS 参考記事 背景 配列に要素を追加する方法を忘れそうになるので、ブログにまとめます。 配列に要素を追加する Ruby RubyではArray#pushメソッドを使用します。このpushメソッドは破壊的メソッドなので、元のオブ…

【TS】【Ruby】日付をyyyy-mm-ddに変換する方法をざっくりまとめてみた

目次 目次 背景 日付をyyyy-mm-ddに変換する方法 Ruby TS 参考記事 背景 仕事で日付をyyyy-mm-ddに変換するのをやったときにパッとできなかったので、忘れないように記事にしようと思います。 日付をyyyy-mm-ddに変換する方法 Ruby まずRubyで日付を生成する…