I am curious as to the different between these two classes below. As you can see the only difference is that in the second Book class I have title declared as a implicitly unwrapped optional. What is the difference between let title: String & let title: String! They seem to act the same way. Which is better practice?
class Book {
let title: String
init(title: String) {
self.title = title
}
}
class Book {
let title: String!
init(title: String) {
self.title = title
}
}