Оптимизировано, как мне кажется, инициализация, безусловно, бессмысленна
int FileCount = obj.SomeMethod ();
Поскольку это динамично, все виды магии компилятора могут избежать ошибок, осмелюсь сказать этоодин сводится ко всему коду, который скрыт за кулисами, чтобы иметь дело с динамическим obj.