Mobven的iOS环境

曾几何时,iOS开发工具相当简单且静态。 目标C是一门成熟的语言,它基于良好的旧C语言。Cocoapods仅被接受为依赖性管理器。 然后斯威夫特发生了。 没有指针,没有分号,没有.h文件。 它为不了解C / C ++或Java的人提供了一个避风港。 Swift 1.0是一个有趣的工具。

表/集合视图不再是痛苦的来源,项目变得整洁,应用程序原型制作时间大大减少。 但是,每次更改都会带来混乱。 斯威夫特也是如此。 语法不稳定(对那些经历过2.0移植的人们是有帮助的),缓慢的编译时间(如旧的Eclipse经验),错误的语法荧光笔(很抱歉,不是错误的,不能正常工作)和不眠,咖啡因激发的工程师是我最早写的。

Swift是从多年经验中提炼出来的产品。 最终,它将在许多领域取代Objective-C,但今天不是那天。 因此,为了不造成令人尴尬的生产失败和小故障,我们坚持使用旧的Objective-C,并在实验室实验中限制Swift。 在Mobven,我们创建了一个应用程序开发流程,以赋予开发人员自由的空间。

开发过程非常简单。 该代码与单元测试一起编写。 然后,一位资深人士与原始作者进行审查。 如果一切正常,则将代码合并到主分支(称为dev)中。 CI系统使用Fabric和周期结束来构建,测试和发布。

为了保持循环运动,工具必须固定且可靠。 这是Mobven iOS团队提供的5个基本开发工具。

Git:源代码控制是工程师必不可少的工具。 这样可以防止出现“新文件夹(42)”的情况。 而且,它使开发人员可以在同一代码库上工作。 Git旨在管理巨大的代码库,并且可以完美地完成其工作。

Jenkins CI: Jenkins提升了周期的重量级。 首先,它提取代码,运行测试,创建IPA并将其分发。 其次,它检查每个推送分支的代码质量和代码覆盖率。 许多开发人员讨厌编写像文档这样的单元测试,但这是整个应用程序的故障保护。 防止将新的错误引入代码库是一项巨大的优点,并且可以节省时间。

Cocoapods:作为依赖项管理器,Cocoapods的工作方式类似于Ruby Gems。 它可以正常工作并节省大量时间。 我们在内部和公开使用我们的应用程序和框架。

捕获:在应用程序开发中,创建错误场景是一项艰巨的任务。 借助Capture,我们的质量检查团队可以轻松指出错误的UI实施和崩溃情况。

动量:这种内部框架使我们能够毫不费力地重新创建错误方案。 质量检查团队还将其用于自动化过程测试。

总之,没有一种创建移动应用程序的真正方法。 我们的团队始终如一,纪律严明,堪称典范。 动量和捕获是它的产物。

坎纳·塔塔尔(Caner Y.Tatar)
软件工程师
http://www.mobven.com