我的应用程序是这样设置的:

public partial class App : Application
{

    public static DataManager db;

    public App()
    {
        InitializeComponent();
        MainPage = new MainPage();
    }

    public static DataManager DB
    {
        get
        {
            if (db == null)
            {
                db = new DataManager();
            }
            return db;
        }
    }

有人可以向我解释以这种方式设置 DataManager 的优势与:
    public App()
    {
        InitializeComponent();
        MainPage = new MainPage();
        db = new DataManager();
    }

最佳答案

很多人不喜欢静态全局变量。他们尝试用类的具体实例代替它们。

他们真正应该做的是为每个类创建一个接口(interface)并使用依赖注入(inject)来提供这些类。这将允许单元测试和适当的关注点分离。使用 MVVM 模式也是一个好主意。

尽管对很多人来说,这可能是一个很大的变化,而且通常需要一种新的心态。

关于xamarin - 为什么我会在某些 Xamarin 应用程序中看到 DataManager 设置了 get?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47736911/

10-10 09:59