I found myself using a lot of implicitly unwrapped optionals when initialiser injection would not work or when creating mvvm modules for examples:
class TodoView: UIViewController {
var viewModel: TodoViewModelProtocol!
}
Not only it doesn't look so good, but its also a pain to always force unwrap if I need to use a switch statement on an explicitly unwrapped optional variable for example.
Is there any way to get rid of the implicitly unwrapped optional, for example using @properyWrapper
in swift 5?