MongoDBなどはスキーマレスなデータベースであり,先にスキーマ決めなくても,何でもつっこめることになってる. データベースから見ればスキーマレスということでいいけど,アプリケーション的には,何が入ってるかちゃんと管理したい. 下の例では,AliceとBobでは持ってるフィールドがちがって,Bobはhobbyを持ってるけど,Aliceは持ってない. { name => 'Alice', age => 20, } { name => 'Bob', age => 21, hobbies => ['tennis', 'soccer'], } これくらいなら見れば分かるけど,長期間運用してて,結局何が入ってるのか分からない,みたいなことがあって,難しかった. オブジェクトをどんどん渡していくと構造を教えてくれるのを作った. hitode909/perl-object-classifier · G