service-locator
描述
service-locator
是一个用 Objective-C 编写的框架,该框架实现了软件开发中用于封装获取服务的相关过程的模式,具有强大的抽象层。
用法
- 定义一个协议
@protocol MyProtocol
@end
- 定义一个遵循此协议的类
@interface MyClass: NSObject <MyProtocol>
@end
- 在注册表中注册一个对象
#import <ServiceLocator/ServiceLocator.h>
[[NVRegistry sharedInstance] register:@protocol(MyProtocol) scope:NVRegistryScopePrototype factory:factory:^id _Nonnull {
return [[MyClass alloc] init];
}];
- 根据协议解决一个对象
#import <ServiceLocator/ServiceLocator.h>
MyClass *myClass = [[NVRegistry sharedInstance] resolve:@protocol(MyProtocol)];
需求
- iOS 12.0 / macOS 10.14+ / tvOS 12.0 / watchOS 6.0
- Xcode 15.0
通信
贡献
设置开发环境
make bootstrap
欢迎对项目提供帮助!如果您发现可以改进的地方或希望添加新功能,请提交问题或发送拉取请求!
作者
Nikita Vasilev, [email protected]
许可证
service-locator 在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。