2017-07-07 39 views
2

我对如何正确抽象Firebase以便与我的应用程序解耦以防万一我想在未来切换回目标感兴趣。如何正确抽象Firebase

现在我有一个具有访问实时数据库和存储的静态方法的类。我在整个应用程序中调用这些静态方法。

这是在生产环境中使用Firebase的最佳方式吗?我的应用程序是用Swift编写的。

+0

这真的不可能回答。如果您将应用程序构建为与Firebase(即联机异步数据库)一起使用,则整个代码流都基于此。如果切换到MySql,那是完全不同的设计模式;不在线(取决于)而不是异步(通常)。所以它会重新编写大部分数据库交互(我们已经完成了它,并且拥有大量的第一手经验)。 – Jay

回答

0

您可以创建一个包装类

class YourWrapperClass: NSObject { 
} 

导入要与此包装使用像火力地堡的框架。

import Firebase 

创建使用完成处理器/瓶盖/块 这就是它的方法。通过这种方式你可以使用代码的可重用性。

每当你想停止使用Firebase时,你将不得不停止从这个包装类中调用方法&实现你想调用/使用的替代方法。希望这会有所帮助。

0

我认为这里最好的办法是让struct为您的Firebase database中的每个主节点添加静态成员,并为每个主文件夹Firebase storage分别设置不同的模型。它应该看起来像API's。您可以在将来改变它,而不会有任何问题。