iOS持续集成 - 开篇

持续集成即 Continuous Integration,简称 CI。

开篇

开启iOS 持续集成这一系列文章时,这一系列实践还没有完成。17年底刚来到现在这家公司,最先实践起来的是部署Jenkins打包与分发,之后OCLint自动化CodeReview,本想接下来开启SonarQube质量管理的实践,可期间遇到不小阻碍,暂且先将这几篇实践内容记录下来。再来接着完善自动化单元测试SonarQube质量管理两部分的实践。

历程

一直认为自己是一个不安于现状,特别能折腾的人。

毕业后第一家公司待的并不长,一年时间,独自一人做 iOS 开发,回想那段时间真的是痛并快乐着,虽然大四实习就开始做 iOS 开发了,但毕竟有限,还很多东西都不会,只能继续在工作中不断的自学,犹记得第一次完成推送通知的时候的满满的成就感,慢慢的能将手头的工作做到得心应手后,就主动跳出了舒适区,继续折腾。

之后是一家待的比较长的公司,iOS、Android、Lua 同时做,也都是些业务开发,最明显的感受是逻辑处理、业务开发速度提升明显,可能也得益于当时的 Python 写的后台系统,完全不需要后端写接口,移动端自己写查询语句,写需求字段,写排序字段,获取所有一切所需的数据,新增数据逻辑处理等。

再后来上家公司,负责移动端开发事务,主要负责 iOS 项目架构和开发,以及指导 Android 业务跟进。对 iOS 开发的设计模式和架构有了更深入的理解和实践。推到了工作以来的一些架构思路,引入 CocoaPods 管理私有库和第三方库,使用 MVVM + ReactiveCocoa 架构,得心应手后,另外一个新项目用上了 Swift,在 Swift 中使用了 MVVM + RxSwift 架构,第三方框架也更新了 Swift,折腾的不亦乐乎。

再到现在这家公司,随着架构的组建稳定,业务开发速度的不断提升,有更多时间忙着折腾新的东西,部署了 Jenkins 打包与分发,买好了个人域名和阿里云服务器,搭建好个人博客平台,开始在上面写博客。作为一个极度的代码洁癖者,一直以来特别想做的 Code Review,也开始着手实践[OCLint自动化CodeReview]。以及接下来的自动化单元测试SonarQube质量管理

目前的打算是: ObjectiveC 和 Swift 继续深入,MVVM + ReactiveCocoa、MVVM + RxSwift,OCLint自动化CodeReview逐渐将团队的代码规范起来,之后会再抽出团队的一小部分时间做一做互相的 Code Review,需要一步一步循序渐进的推动。自动化单元测试SonarQube质量管理也是必不可少的,然后部署Jenkins打包与分发,根据开发环境(Dev)、测试环境(Fat)、预发部环境(Uat)、生产环境(AdHoc)、正式发布环境(AppStore)各种环境可直接构建并分发到第三方平台供测试和相关人员安装。

一路走来,躺过了一个又一个的坑,也收获了太多大大小小的成就感,一直在得心应手和倍受打击的循环中死去活来。也越来越觉得 iOS 开发相关的产品开发和工程手段都日臻完善,项目工程化迫在眉睫,以后还会去折腾什么呢,暂时不知道,能肯定的是折腾的心是永不停息的。

备注


坚持原创技术分享,您的支持将鼓励我继续创作!
----------- 本文结束, 感谢您的阅读 -----------