#プログラミング言語

189 件の記事

Python自動化 #1 — 繰り返し作業を終わらせる: スクリプトの第一歩とファイル整理
読了 6分

Python自動化 #1 — 繰り返し作業を終わらせる: スクリプトの第一歩とファイル整理

Python でダウンロードフォルダ整理スクリプトを作りながら、自動化スクリプトの基本の形を身につけます。pathlib でファイルを分類して移動し、dry-run の安全装置と argparse の引数処理まで 1 サイクルで整理します。

Pythonテスト #7 CIで回す — 人が忘れても機械は忘れない
読了 5分

Pythonテスト #7 CIで回す — 人が忘れても機械は忘れない

GitHub Actions で pytest を自動実行する CI ワークフローを作ります。uv キャッシュ、Python バージョンマトリックス、カバレッジの PR コメント、pre-commit、遅いテストの分離まで整理し、シリーズを締めくくります。

Pythonテスト #6 テスト設計 — 良いテストとカバレッジの読み方
読了 7分

Pythonテスト #6 テスト設計 — 良いテストとカバレッジの読み方

テスト設計の基本である AAA パターンと動作中心のテストから、テストダブルの用語整理、フレーキーテストへの対応、pytest-cov のカバレッジの数字を正しく読む方法まで扱います。

Pythonテスト #5 外部世界のテスト — ファイル、HTTP、DB、Webフレームワーク
読了 6分

Pythonテスト #5 外部世界のテスト — ファイル、HTTP、DB、Webフレームワーク

mock ですべて塞いだテストは本物の動作を保証しません。ファイルは tmp_path で本物を書き、HTTP は respx で境界だけ塞ぎ、DB はトランザクションロールバックで戻す、外部世界のテスト戦略を整理します。

Pythonテスト #4 mockとmonkeypatch: 制御できないものを制御する
読了 6分

Pythonテスト #4 mockとmonkeypatch: 制御できないものを制御する

時間、乱数、外部 API のように実行のたびに結果が変わる依存性を monkeypatch と unittest.mock で固定する方法を扱います。patch のパスの罠と過剰 mock の境界線まで整理します。

Pythonテスト #3 parametrizeとマーカー: ケースを増やして選んで回す
読了 5分

Pythonテスト #3 parametrizeとマーカー: ケースを増やして選んで回す

pytest の @pytest.mark.parametrize で入力だけが違うテストをケース表 1 つにまとめ、skip・skipif・xfail とカスタムマーカー、-m・-k オプションで必要なテストだけを選んで実行する方法を整理します。

Pythonテスト #2 フィクスチャ: 準備と後片付けを注入してもらう
読了 6分

Pythonテスト #2 フィクスチャ: 準備と後片付けを注入してもらう

@pytest.fixture でテストの準備コードを注入してもらう方法を扱います。yield によるティアダウン、scope のトレードオフ、conftest.py での共有、tmp_path のような組み込みフィクスチャまで整理します。

Pythonテスト #1 pytest入門: assertひとつで十分な理由
読了 7分

Pythonテスト #1 pytest入門: assertひとつで十分な理由

pytest をインストールして assert ひとつで最初のテストを書く方法から、unittest との違い、失敗出力の読み方、テストディスカバリーのルールまで整理します。

モダンPython実践 #6 テストとデプロイ — pytest、Docker、Railway/Fly
読了 8分

モダンPython実践 #6 テストとデプロイ — pytest、Docker、Railway/Fly

pytest + httpx で FastAPI の統合テスト、依存性オーバーライドで分離、Docker のマルチステージビルド、Railway/Fly クラウドデプロイまで整理します。

モダンPython実践 #5 非同期とバックグラウンドタスク
読了 7分

モダンPython実践 #5 非同期とバックグラウンドタスク

async ルートのポジション、BackgroundTasks でレスポンス後の処理、外部キュー (Celery、ARQ) が必要になる境界、そして同期ライブラリと安全に混ぜる方法を整理します。

TypeScript上級講座 #7 実戦パターンとアンチパターン
読了 9分

TypeScript上級講座 #7 実戦パターンとアンチパターン

良い型と過剰な型を分ける基準 — any/unknown/never、as constとsatisfies、そしてよく陥るアンチパターンとその解決法。

モダンPython実践 #4 認証 — OAuth2 パスワードフロー + JWT
読了 7分

モダンPython実践 #4 認証 — OAuth2 パスワードフロー + JWT

パスワードハッシング (argon2/bcrypt)、OAuth2 パスワードフロー、JWT の発行 / 検証、そして current_user 依存性できれいに解く認証パターンを整理します。