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を起...
設計

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

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

【Vim】初心者向けヘルプの開き方

Vimの筋肉を鍛えていくためには、まず第一にヘルプを参照する力が必要になる。今回は、初心者向けにヘルプの開き方を解説する。 シンプルにヘルプを開く とりあえず何かファイルを開いた状態から、:helpを入力するとヘルプが展開する。 ヘルプを開...
ターミナル操作

【初心者向け】実務でよく使うgitコマンド12選

gitには無数の機能があり、gitコマンドについても無数のコマンドオプションが存在する。 今回は、その中でも筆者が実際に実務でよく利用しているコマンドのみを紹介する。 つまり、このコマンドさえ覚えておけばgitコマンドを実務で使うことが十分...
Flutter

FirebaseCommandException: An error occured on the Firebase CLI when attempting to run a command.

概要 Flutterアプリを作成し、firebaseに紐づけを行おうとした時、以下のエラーが発生した。 $ flutterfire configure --project={プロジェクト名} ⠙ Fetching available Fir...
NestJS

【NestJS】初心者がNestJSを用いてGraphQLのAPIを構築をする

NestJSとは TypeScriptを用いてAPIを構築したいときのフレームワークの一つ。何もせずに利用し始めるとREST APIが使えるが、GraphQLのライブラリをいれることによりGraphQLのエンドポイントを作ることが可能。 今...
用語

git rebaseしてはいけない状況(mergeとの違い)

git rebaseとgit mergeは両方とも「ブランチAの変更差分を、ブランチBに取り込む」コマンドである。 前提として、違いが良く分かっていなければ、基本的にmergeだけ使えば十分である。 そのうえで、コミットログを整理したいとい...