Swift中的依赖注入— iOS
在Twitter上关注我: @ kiranjasvanee
依赖项注入对于一个简单的概念来说是个大词,该概念是允许对象接收其所需的依赖项。
让我们先用一个不好的例子来说明这一点,然后再使用依赖注入来查看使用它可以获得的所有好处,改进和安全性。
假设您正在构建一个用于创建专辑并在其中添加歌曲的应用程序。
首先创建相册模型。
类相册{
private var albumName:字符串!
func getAlbumName()->字符串{
返回专辑名称
}
}
让我们尝试在您的ViewController
之一中获取albumName
类ViewController:UIViewController {
覆盖func viewDidLoad(){
super.viewDidLoad()
让albumInstance = Album()
print(“相册名称:\(albumInstance.getAlbumName())”)
}
}
现在,您在这里崩溃了您的应用程序。 您正在尝试使用getAlbumName()
来获取albumName
,但albumName
设置albumName
。
在这里, albumName
是您必须注入的依赖项,当然,没有专辑名称时,您将如何发行或添加歌曲。
让我们通过注入依赖关系来解决此问题。
类相册{
private var albumName:字符串!
init(albumName:String){
self.albumName = albumName
}
func getAlbumName()->字符串{
返回专辑名称
}
}
现在,使用我们的新init
函数设置albumName
的值。
let albumInstance = Album(albumName:“信誉”)
print(“相册名称:\(albumInstance.getAlbumName())”)
尝试用空括号初始化Album时,会出现编译器错误。
我们完成了,这就是全部。 您已经注入了依赖性。
免责声明 :依赖关系可以是任何类型,类/结构的对象或任何原始数据类型。 它的开发人员有责任注入依赖关系和安全代码,以防止崩溃。
有什么想法吗? 反馈? 意见分歧? Twitter我: @ kiranjasvanee ,Skype我: kiranjasvanee
如果您喜欢阅读这篇文章,请分享并鼓掌,以便其他人可以找到它👏👏👏!!!!
您可以在Medium上关注我以获取新文章。