PythonとJavaの両方import
で、コード全体で完全修飾パッケージ/モジュール名の繰り返しを排除する必要があります。Perl / Mooseに同等のものはありますか?繰り返す必要がなければ、Mooseの方が本当に使いやすくなると思いますMyApp::Model::Item
。[somehow declare] MyApp::Model::Item;
代わりに、後で参照したいのですが、単にを参照してくださいItem
。クラス名が使用されるこれらすべてのユースケースを考えることができます...
extends 'Item';
with 'ItemRole';
Item->new(name => 'thing');
method foo(Item $xyz) { ... }
、 とMooseX::Method::Signatures
$var->isa('Item');
try { ... } catch (DatabaseError $e) { ... }
、 とTryCatch
$Item::SOME_PACKAGE_GLOBAL_VARIABLE
そのようなものがまだない場合、これをきれいに実装し始める方法について何かアイデアはありますか?クラス名が文字列として使用されている場合を処理するのは難しいことがわかります。