最佳SoftwareHut的iOS实践-SoftwareHut

尽管2017年Android应用程序的下载频率是iOS应用程序的两倍,但后者也受到广泛欢迎。 但是,Apple设备的普及率在增长,对iOS开发人员的需求也在增长。 如果您是或想成为其中的一员,那么本文适合您,因为我将向您展示最佳的iOS做法。 他们将帮助您开发更好的应用程序。 准备?

我将上述做法分为以下几节:

  • 通用技术概念
  • 代码质量
  • 性能
  • 构架
  • 建筑
  • 其他有用的提示和技巧

在本节中,我只为您提供三个词:

  • SOLID —单职责原则,开放/封闭原则,Liskov替代原则,接口隔离原则,依赖反转原则
  • —保持简单,愚蠢
  • -不要重复自己

首先,您应该遵循为Swift和Objective-C准备的代码样式指南。 这很重要,尤其是当只有几个程序员在开发同一应用程序时。 这就像成立一个音乐乐队一样-如果每个人都做自己的事,他们将不会成功,开发团队也是如此。

如果您可以在深夜重复这些指南中的建议,则可以继续进行下一步-自动执行构建。 使用Fastlane将每个项目配置为自动生成,然后将其上传到HockeyApp。

最后,在单个视图控制器中避免大量代码。 您可以使用VIPER或MVVM体系结构来完成此操作。

尽管iOS设备运行速度非常快,并且无论它们有多老,它们都可以正常运行,但是您的应用程序无法降低它们的速度。

您可以通过以下方法提高应用程序的性能和可维护性:

  • 尝试避免使用外部UI库
  • 尽早确定最低iOS版本-记住检查旧系统上新的iOS API是否得到正确处理
  • 集成崩溃报告工具

使用这些框架可以使您的工作更轻松,更快和更好。

联网

  • AF网络
  • Alamofire

楷模

  • 对象映射器
  • 披风

依赖注入

  • 弹射
  • 台风

专卖店

  • 钥匙串访问
  • 领域

通过逻辑结构来开始您的项目。 它的结构应反映您存储库中的目录结构。 关于文件夹名称-它们应该为小写字母,并且空格应替换为“ _”。

使项目的层次结构反映您的体系结构,即:

  1. UI:包含对自定义UIView,UIViewController和容器的引用:
  • 视图:自定义UIView,UITableViewCells等
  • View_controllers:UIViewControllers
  1. 应用程序:AppDelegate
  2. Supporting_files:info.plist和其他描述应用程序的文件
  3. 资源:字体,图像,视频
  4. 3rd_party:无法添加为Pod的库
  5. 连接:到您的Web服务
  6. 管理器:UI和连接层之间的链接
  7. 解析器:数据解析器
  8. 实用程序:整个项目中都在使用的实用程序类

依赖注入是下一个有用且至关重要的事情。 它的一种定义指出,这是一种技术,一个对象可以提供另一个对象的依赖关系。 需要记住的一件事-任何必需的对象都应作为参数传递。

如果要管理外部依赖关系,请使用CocoaPods或Carthage的显式版本,并仅在必要时进行更新。 而且,如果您决定使用Pod,请不要将其文件夹添加到.gitignore。

最后一节和四个简单的技巧和窍门,可以进一步改善您的应用程序:

  • 避免使用情节提要
  • 使用工作流或FlowController处理视图控制器
  • 用户可见的所有文本都应本地化
  • 将警告视为错误

最初于 2018年3月6日 发布在 softwarehut.com