【问题标题】:Should I use as many or as few views / view controllers as possible? [closed]我应该使用尽可能多或尽可能少的视图/视图控制器吗? [关闭]
【发布时间】:2016-02-04 03:56:52
【问题描述】:

我编写的应用程序有许多表格视图,并且根据许多因素,这些表格视图可能会显示某些部分并隐藏其他部分。

例如,我有“活动”对象和“存档”对象。当用户选择一个时,他会被带到同一个表格视图,但如果对象处于活动状态,则会显示一些部分,如果它已存档,则会显示其他部分。现在我正在考虑为这些对象添加其他属性,例如“完成”,除了“活动”和“存档”。问题是该表视图控制器的代码变得越来越复杂,试图根据所选对象的每个属性确定要显示或隐藏哪些部分。所以我正在考虑使用不同的表格视图,一个用于归档对象,另一个用于活动对象,另一个用于完成对象。但是,尽管它们有许多不同的部分,但也有一些共同的部分应该为所有这些对象显示。

那么在这种情况下我该怎么办?我应该使用三个不同的表视图和三个不同的视图控制器,一个用于我的对象的每个属性(我什至可能添加更多!),并为它们之间的共同部分重复相同的代码多次,还是我应该保留使用一个视图控制器并使其代码越来越复杂,试图确定要显示或隐藏哪些部分?或者我应该在两者之间做些什么?还是完全不同的东西?

提前致谢,

丹尼尔


编辑:我不认为这是一个意见问题,但显然它是。但是,必须考虑一些客观的事情。例如,故事板中有许多不必要的场景会产生什么影响?是否如此微不足道,以至于可以为每一个微小的变化创建一个新场景,而不是在同一个视图控制器中以编程方式进行操作?

【问题讨论】:

    标签: ios uitableview model-view-controller uiviewcontroller


    【解决方案1】:

    在我看来,你应该有 3 个独立的视图控制器。

    当您开发和优化您的应用时,您肯定会注意到您在很多地方都有重复的代码。当您注意到重复的代码时,请尝试将其抽象到您的模型层和视图/控制器层之外。

    如果您的 3 个控制器最终几乎相同,那么您可以将它们组合起来。

    对此没有明确的正确或错误答案;这是一个你将学会通过经验识别和解决的问题。

    祝您的应用好运! :-)

    【讨论】:

    • 好的,那我试试。谢谢!
    猜你喜欢
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 2017-01-25
    • 2013-03-18
    • 1970-01-01
    • 2013-12-20
    相关资源
    最近更新 更多