Hi there, this is more of a design question than a technical question. When instantiating an interface, which one is better? in storage or in memory?
An example can be
IERC20 token = IERC20(tokenAddress); token.totalSupply();. The former, I believe, would create an instance in memory and hence is cheaper and the later would do in storage hence more expensive? Is that true?
Besides, the former leaves room for upgradeability, whereas the later is fixed.
Other than factors like these, is there any other to consider? What benefits does the later have? A cleaner code? Readability?