同行泣血总结:iOS开发最该避开的坑是这个

有句老话说,如果你恨一个程序员,就忽悠他去做 iOS 开发。

当年被薪资高前景好忽悠进来的都懂,多年大量繁琐手工操作,做出一勉强及格的 App 都费好大劲。下面就是一同行分享的他们公司的真事儿。

发版周期长达大半年

几年前,他们的 App 版本发布甚至超过半年,仅仅在准备发布阶段就需要一两个月。

合并代码,需要手工操作,要花 2周 ~ 4 周;

部署测试也是手动,需要 1 周时间;

最后再进行回归测试,又要 2 周 ~ 3 周。

辛苦小半年, App Store 评分只有 2.5 ,连及格都不算。用户体验不好,最后深究都是开发的问题。

比如,当时他们没有统一的代码管理,一个同事为了学习 Core Data,把学习的 Core Data 的代码直接 push 到了主分支。这个操作让 App 的崩溃率上涨了 10%。

修复 Bug 竟要两三年?

这种灾难级 Bug 当然要及时修复,然而他们花了两三年才逐渐把相关代码移除完毕!

因为缺乏面向接口的编码模式,Core Data 的数据对象污染了整个代码库。又因为这部分代码没有任何分层架构设计,导致所有逻辑都编写在臃肿的 View Controller 里,单元测试覆盖率几乎为零。可以说,代码库进入几乎没法维护的状态,很多崩溃情况无法修复。

如何避免操作猛如虎,评分2.5?

因为没有统一的开发规范,深受其害的这个公司,开始进行工程化的尝试。公司的移动端技术负责人林永坚,有超过十年移动开发经验,曾经是微软 Window Phone MVP,他本人一直致力推广工程化实践,进行了多次公司内部培训。

规范了开发流程和代码规范之后,App 的崩溃率下降到了 0.01% 以下,评分也升到了4.7。

现在,他所负责的 realestate.com.au 是澳大利亚千禧一代最常用的应用,本土流量排名前几。他将公司过去几年实践过的经验精华,做成了这个专栏「iOS 开发进阶」, 如果你也因为不规范的开发流程、不统一的代码规范而低效加班,学完这个专栏会改变你的现状。

你能学到什么

本专栏将带你通过一款 App 的开发完成开发自动化流程,减少重复性的手工操作,根据项目开发流程,分为五大模块:

第一模块:配置与规范。搭建统一的开发环境,使用 CocoaPods 统一管理第三方的依赖库,统一 Project 和 Target 的配置,使用 Swiftlint 统一编码规范,以及使用 Git 和 GitHub 来规范源代码管理流程。学完这一模块,能让你在开发项目时更规范,减少团队沟通成本

第二模块:基础组件设计。设计规范组件、路由组件、多语言支持组件、动态字体和深色模式的支持组件。这一模块教你如何使用极少的工作量来构建一些非常实用的基础组件,减少重复劳动。

第三模块:架构与实现。如何使用 BFF 和 MVVM 来设计一套跨平台的架构,包括 MVVM 模式中每一层的功能、责任,以及具体的代码实现。你会掌握 App 开发全流程,引入 MVVM 架构来提高代码的灵活性、扩展性和可维护性。

第四模块:上架与优化。比如,如何统一管理证书与描述文件,如何快速交付,如何灵活支持统计分析,如何借助崩溃报告解决线上的 Bug,等等。你将学会搭建一套自动化的流程,来实现无人操作打包、签名、分发与上架,有效提升 App 的交付速度。

第五模块:加餐。 在不改动任何原有代码的基础上把 UI 层从 UIKit 替换成苹果公司最新的 UI 框架 SwiftUI。

这个课程的大纲是对照一款 App 的开发进程设计的,你将通过一个完整项目实践来掌握自动化开发全流程。

现在入手,仅需 1 块钱就能永久收看,非常超值。金三银四在即,抓紧了解点干货吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值