gpt4 book ai didi

ios - 哪种方法更有效? Storyboard还是 XIB?

转载 作者:IT王子 更新时间:2023-10-29 07:55:04 26 4
gpt4 key购买 nike

我的问题与我的标题所暗示的略有不同。我曾与 xib 合作过。现在我正在尝试使用 Storyboard。我的问题是,如果我们从另一个类浏览一个类,StoryBoard 是否为更好的内存管理提供了好处。假设我们有 2 个 ViewController:ViewControllerA 和 ViewControllerB。我们正在尝试通过 ViewControllerA --> ViewControllerB。现在,在 Xib 中,我们的方法如下;

ViewControllerB *VCB = [ [ViewControllerB alloc] init];
[self.navigationController pushViewController: VCB Animated: YES];

Storyboard中的位置,

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"Second"])
{
SecondViewController *objSecond = (SecondViewController*)[segue destinationViewController];

}
}

然后做,

[self performSegueWithIdentifier:@"Second" sender:self];

所以,我的问题是我们在 Xib 中分配了我们的类,而在 StoryBoard 中我们没有分配。那么storyboard有内存分配优势吗?

最佳答案

我的观点是,专业开发人员必须使用 xibs,但对于刚接触编程的业余爱好者,开发人员如果使用 Storyboard 可能会有所帮助。

Storyboard

在使用单个 Storyboard进行了 3 年的项目工作后,我可以说出很多缺点:

1) 构建起来真的非常非常慢,即使是非常非常非常少的思考(其中的每个 View 都必须重建)。如果 Storyboard 变大,即使使用 8 或 16 gb ram 的 iMac 也很难编辑。甚至很难打开它。

2) 没有可重用性。您无法立即将 View/ViewController 及其 View 导入另一个项目。它将与其他 ViewControllers、Views 或 Segues 连接,这将使它成为一个“请勿触摸”的大想法。

3) 当项目变大时,即使添加或编辑最小的布局约束也会有很大的滞后,您永远不想碰它。

4) 如果使用 Storyboard自动添加单元格的单元格,则不能在两个点中使用相同的单元格构建。

优点:

1) 自动单元格(但这也是一个缺点,因为单元格不能按原样重用于另一个 View )

2) Segues 等可以让人们很容易从单一的角度理解正在发生的事情。

Xibs:

1) 完全便携。

2) 打开/编辑/构建比 Storyboard变大要快得多

结论:

如果您是一名业余开发者,会出于乐趣为自己的业务制作应用程序,那么您应该使用 Storyboard,因为它会更容易理解事物。但是,如果你是一名专业开发人员,你必须将 xibs 用于 VC、Cells 等,因为这是使它们真正可重用和可移植的唯一方法,以便为下一个项目争取更多时间,甚至在不得不这样做时做一点改变或重新构建 Storyboard。

解释为什么 xibs 对我来说更“可重用和便携”:编程中的东西必须保存在不同的模型、文件、实体、模块中。一个人必须尽可能少地依赖另一件事

关于ios - 哪种方法更有效? Storyboard还是 XIB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22524232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com