да, но в моем мире (Android) я почти научился этого избегать
Так если получается избегать - круто. Но это же не вопрос фичи языка, а вопрос того, какие либы/фреймворки/подходы использовать.
Если всё-таки так вышло, что действительно обязательно будет всё инициализировано, но не в конструкторе - зачем себя мучать nullable типами?