質問

Groovyが動的にタイプされていることを正しく理解していれば、Javaのスーパーセットであるため、静的なタイプ情報がオプションで提供される場合があります。これは、複数の言語の使用の摩擦を避けながら、パフォーマンスが重要なものしかないものを書く場合に役立ちます。タイプの注釈は、パフォーマンスの重要な部品に対してのみ提供できます。

Javaのようなサブセットが使用され、静的タイプの注釈が提供される機能/クラスでJavaの代わりにGroovyを使用することのパフォーマンスペナルティは何ですか?

役に立ちましたか?

解決

Groovyでタイプを宣言することは、魔法のように物事をスピードアップしません。それはまだグルーヴィーなコードであり、何かが動的に変更された場合に備えてMOPを通過する必要があります。タイプ情報を提供したからといって、静的リンクが表示されません。

Groovyコードが十分に速くないパフォーマンスに敏感なものについては、実際のJavaコードを書く必要があります。

この質問はaに非常に似ています 前回のもの ここで私 答えを与えました 生成されたバイトコードを掘り下げて、何かを入力することで物事をスピードアップしない方法を示します。

他のヒント

Groovy ++を使用することもできます。 groovypp.jarをクラスパスに落とし、@Tyedでパッケージ、クラス、またはメソッドに注釈を付けます。したがって、注釈付きコードはMOPをバイパスするため、Javaコードとほぼ同じくらい高速です。

また、タイプを宣言しなくても、 @Typedコードは、コンパイル時に可能であればタイプを推測します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top