技術選定

【2024年版】フロントエンド開発の個人的な技術選定ベストプラクティス

この記事では、Webサービス(画面部分)を新規に開発するときの技術選定について、個人的なベストプラクティスを紹介する。 前提:筆者のFE技術に関する解像度 最初に、筆者の各ツールに対する解像度を共有しておく。 今回の記事は網羅性・客観性を欠...
技術選定

【2024年版】API構築の個人的な技術選定ベストプラクティス(パターン別)

この記事では、WebサービスでAPIを新規構築するときの技術選定について、個人的なベストプラクティスを紹介する。 前提:筆者の各プログラミング言語に対する解像度 最初に、筆者の各プログラミング言語に対する解像度を共有しておく。 今回の記事は...
技術選定

【技術選定】型定義ができるプログラミング言語を導入すべき理由

プログラミング言語には、動的型付け言語と静的型付け言語の2種類が存在するが、この記事では「静的型付け言語を使え」という話をする。 結論 中規模〜大規模の開発である チーム開発をする 今は小規模でも今後成長する見込みがある この前提条件がある...
Docker

Docker環境で立てたデータベースのER図を自動生成する(MySQL)

この記事では、データベースのER図を自動生成する手順を解説する。 やりたいこと ローカル環境で、Docker Composeを使ってAPIやMySQLを立てている状態 既存のプロダクトコードやCI/CDに影響がないようにER図を自動生成した...
Docker

【Docker】よく利用するdocker composeコマンド一覧(確認系コマンド)

この記事は、下記の記事よりも「確認系のコマンド」に特化した内容。 【Docker】よく利用するdocker composeコマンド一覧(操作系コマンド) ヘルプの見方 よく使うコマンドはこの記事に記載しているが、それ以外のコマンドや細かいオ...
Python

【Python】データを保存、取得する方法(Pickle)

実装していると、オブジェクトなどのデータを一時的に保存したり、それを再利用したい場合がよくある。例えば、開発中に有料のAPIは何度も叩きたくないので、一度叩いてそのデータを保存し、それを使いまわしつつデバッグしたいときなどだ。 筆者はOpe...
Python

poetryで管理しているプロジェクトにpytestを導入する(ModuleNotFoundErrorの解決方法も記載)

まずはプロジェクト初期化 $ poetry init 質問に回答しつつ、プロジェクトを初期化する。 ディレクトリ構成 以下のようなディレクトリ構成で進める。 srcにプロダクトコードが入っていて、testsにテストコードが入っている状態を目...
ターミナル操作

【zsh】.zshrcと.zprofileの違い

~/.zshrc ~/.zprofile どちらもzshの設定ファイルだが、読み込まれるタイミングが異なる。 .zshrc(bashの場合は.bashrc) これはシェル起動時に1回読み込まれる。 例:ターミナルでzshと入力してzshを起...
設計

【良いコードを書く】変数は上書きしない

この記事では、より良いコードを書くためのテクニックについて解説する。 結論 変数は上書きしない。変数を使う際は、不変な状態(上書き不可能な状態)で使う。 なぜ不変にすることが望ましいのか? これに対する答えとしては「値が変わってる=意味が変...