Pythonでよく使う実用的なデコレータ10選
Pythonのデコレータは、関数やクラスの挙動を変更・拡張するための強力な機能です。元のコードを変更せずに、共通の処理(例:計測、ログ出力、キャッシュなど)を横断的に適用できます。以下に、実務や学習で役立つ代表的なデコレータを紹介します。
1. 実行時間計測デコレータ
import time
def measure_time(func):
def inner(*args, **kwargs):
t0 = time ...
6月18日 19:12 投稿
JavaScriptにおける関数型プログラミングの実践ガイド
関数型パラダイムとは
関数型プログラミング(FP)は「値の変換」を中心に据えた設計思想である。OOPが「物」をモデル化するのに対し、FPは「関係=写像」をコード化する。React/Vue3 が再注目させた背景には、副作用を排除しテスタビリティとtree-shaking効率を高める点にある。
// 命令型
let price = 1000, tax = 1.1;
let total = price * tax;
// 関数型
const with ...
6月17日 20:36 投稿
Dhall入門:型安全で保守性の高い設定ファイルを実現する現代的言語
Dhallは、JSONやYAMLのようなシンプルな構成ファイルに、関数型プログラミングと静的型システムの利点を融合させた設定言語です。これにより、複雑なインフラやアプリケーションの設定を安全かつ再利用可能に記述できます。
なぜDhallが選ばれるのか?
従来のYAML/JSON設定は柔軟ですが、以下のような課題があります:
型チェックがなく、デプロイ時に初めてエラーが発 ...
6月13日 19:26 投稿
HaskellのData.Sequenceモジュールの操作ガイド
Data.Sequenceの基本操作
Prelude> import Data.Sequence as DS
Prelude DS> :set -XOverloadedLists
Prelude DS>
シーケンスの構築
Prelude DS> DS.empty
fromList []
Prelude DS> DS.singleton 5
fromList [5]
Prelude DS> 5 <| [6,7]
fromList [5,6,7]
Prelude DS> [6,7] |> 8
fromList [6,7,8]
Prelude DS> [5,6] >< [7,8]
f ...
5月18日 19:06 投稿