「 BackEnd 」 一覧
-
-
FastAPIのPath Operationをasync defにするときはブロッキングに気をつけよう!
はじめに 今回は、FastAPIのAPIのエンドポイントを定義する方法である Path Operationに渡す関数を async defにした時の挙動について調べました。この手の記事はすでにたくさん ...
-
-
Go 1.23 で追加された iter パッケージを使ってみる
はじめに Go 1.23.0 で追加された iter パッケージ(と range over func )により、 for にメソッドを渡して反復処理を行えるようになりました。これらの使い方について紹介 ...
-
-
Pythonコードが育っても品質を維持するツールを考える[Ruff Pyright]
はじめに Pythonでアプリケーション開発をするとなると、ちょっとしたPythonスクリプトを書くのとは違った難しさがあります。素のPythonは、スクリプト言語らしい自由さを持っていますが、その状 ...
-
-
Next.jsのrevalidatePathとrevalidateTag
はじめに Next.jsでの実装において、他システムの挙動をトリガーにして、手動でフェッチキャッシュの再検証を実施したい場面に遭遇しました。 調べると、revalidatePathとrevalidat ...
-
-
はじめに Goで並列処理を行う際に複数のgoroutine間で同一の変数を扱いたい場合、宣言した変数に単純にアクセスするだけだと意図しない動作をする場合があります。 その場合、mutexを使って変数へ ...
-
-
Pythonのポリモーフィズム、ABCにするか? プロトコルにするか?
2024/07/16 -BackEnd
はじめに Pythonでポリモーフィズムを実現する方法として、ABC(Abstract Base Classes) または Protocolがあります。個人的には、最近はProtocolを選ぶことの方 ...
-
-
はじめに DDDを採用しているとあるプロジェクトでは、structのfieldをprivateにしているため、手動で定義したGetterを介して各fieldにアクセスしています。Copilotによって ...
-
-
新時代のPythonプロジェクト・パッケージ管理ツール「Rye」使ってみた
はじめに Pythonでアプリケーションやパッケージを開発する場合、これまでは仮想環境であるpyenvと、プロジェクト・パッケージ管理ツールのpoetryを組み合わせて開発することが多かったと思います ...
-
-
はじめに Goでアプリケーションを開発していると、 go generate でコードを生成することがよくあると思います。大抵の場合は、コードを解析するのに抽象構文木(Abstract Syntax T ...