Tuesday, February 16, 2021

減少不必要的 reflection

在 Clojure 與 Java 的交界處,會產生大量的 reflection 。這種時候,可以用 type hints 來減少不必要的 reflection 。有效的作法是開啟一個特定的變數,將它的值改成 true ,然後 Clojure compiler 就會產生 reflection warning ,讓我們可以在開發的時候,很清楚明確地知道「哪些地方產生了 reflection」,於是就可以針對這些地方,去加上 type hint 。

這個重要的變數是 *warn-on-reflection*