Tag: Iuri Matsuura

通过将功能构建为框架来提高iOS团队的生产力

向现有的大型代码库中添加功能是许多工程师在其编码生涯中将面临的挑战。 如果iOS应用程序已经存在了几年以上,那么它可能已经吸引了许多开发人员为许多功能做出了贡献,从而使其成为了许多版本。 通常,结果可能是非常大的代码库,具有不同程度的模块化,较长的构建时间,而且代码不是很干净。 Scout24上的iOS应用处于不久前还处于这种状态,我想与大家分享我们如何对开发环境进行重大改进以及带来的好处。 问题 如果您曾经在一个大型项目中使用Swift进行开发,那么即使稍作改动,您可能对构建整个应用程序模块所花费的时间太熟悉了。 关于如何改善总体持续时间,有大量资源。 Swift具有许多出色的语言功能,但是这些功能是以更长的编译时间为代价的。 即使进行了少量更改,您也可能要等待几分钟才能看到结果。 这确实让人分心,效率很低! 在编码时,时间和精力是您最宝贵的资源。 如何解决 较长构建时间的答案很简单: 使编译器构建更少的代码! 听起来很合理,但是我们如何实现呢? 答案是通过使用iOS框架将我们的代码划分为更小,更离散的功能块。 在此示例中,我们将从主应用程序模块开始,并添加一个包含一些UI功能的框架,该功能构成了我们将集成到我们的应用程序中的功能。 这有什么好处? 这么小的示例可能看起来并不明显,但是以这种方式进行开发的好处是巨大的。 当您必须将功能内置到具有大量旧组件的大型应用程序中时,它们特别大。 通过将功能构建为高度独立于主应用程序模块的独立模块,您可以将更多精力放在要创建的功能上。 您会发现,您被迫以仅公开应用模块所需内容的方式来组织代码,该代码往往更加清晰和经过深思熟虑,并且不太可能发展成意大利面条式混乱,因为这样做更困难这样做。 与框架一样,构建作为框架的功能的一个基本步骤是创建一个“包装器应用程序”,就像我们在本教程中所做的那样,该程序将您创建的功能最小化地集成到一个微型应用程序中。 该应用程序无需构建主应用程序模块所需的所有其他依赖项,因此构建时间将很快缩短。 创建一个新的应用程序工作区 您将需要为您的应用程序和功能所在的框架创建一个工作区。 首先单击Xco​​de中的File-> New- > Workspace 。 在要保存工作空间的位置创建一个新文件夹。 保存后,我们现在有了一个空白工作区。 现在,单击Xco​​de中的File-> New- > Project ,然后选择“ single view app”。 将项目命名为“ SimpleCounterApp”,并确保选择“ Swift”作为应用程序语言。 之所以这样命名,是因为它将仅包含应用程序模块。 在下一步中,选择保存SimpleCounter.xcworkspace的文件夹。 在“ 添加到”下,选择SimpleCounter工作区。 必须在Xcode中打开SimpleCounter.xcworkspace才能显示此选项。 创建项目并注意,现在我们有了一个看起来很无聊的项目。 让我们开始做一个框架! 我们将在以后的步骤中将功能集成到主应用程序中,因此现在无需执行任何操作。 再次单击文件->新建->项目 ,这一次,选择“ Cocoa […]