iOS架构

作者: 傲骨天成科技 | 来源:发表于2022-03-04 11:26 被阅读0次
iOS 架构.png

一、好的架构漫谈

1.代码整齐,分类明确,没有common,没有core
  • 不要让一个类或者一个模块做两种不同的事情,一方面不适合未来拓展,另一方面也造成分类困难

  • 不要common,不要core:每个人认为的common和core不一样,同时软件是有生命的,会不断的迭代成长。如果有了common和core最后随着业务和需求的不断变更,一定会使得代码变得一团糟。

2.不要用文档,或者很少用文档就能让业务方上手
  • 开发时间紧
  • 需求多
  • 尽可能的使我们的API名字可读性强
3.思路和方法要统一,尽量不要多元
  • 方案要坚定,不要摇摆
  • 记录方案的背景,概要设计,详细设计
4.没有横向依赖,万不得已不要出现跨层访问
  • 横向依赖杜绝
  • 跨层访问有时候无法避免:网络底层里面信号从2G变成了3G变成了4G,这是有可能需要跨层通知到View的。但这种情况不多,一旦出现就要想尽一切办法在本层搞定或者交给上层或者下层搞定,尽量不要出现跨层的情况。跨层访问同样增加耦合度,当某一层需要整体替换的时候,牵扯的面太广。
5.对业务该限制的地方有限制,该灵活的地方要给业务方创造灵活实现的条件
  • 限制:比如网络请求数据回调使用统一方式比如Delegate或者Block
  • 灵活:如果是设计一个ABTest相关的API的时候,我们又希望增加它的灵活性,使得业务不光可以通过Target-Action的模式实现ABTest,也可以通过Block的方式实现。尽可能满足灵活性,减少业务方的使用成本
6.易测试,易拓展
  • 易测试需要提高模块化程度,尽可能减少依赖关系,便于mock测试。
  • 高度模块化容易拓展
7.保持一定量的超前性
  • 产品需求:了解产品未来的发展方向
  • 技术方案:组件化、动态化、跨平台
8.接口少,接口参数少
  • 越少的接口越少的参数,就越能降低业务方的使用成本
  • 满足业务方的充要条件
9.高性能
  • 重要但是不是第一要素
  • 苹果产品的性能已经足够好
  • 不能因为优化性能影响稳定性
10.架构分层
  • 按照业务分层:三层、四层。逻辑上有几层就恶意分为几次。每层具体做什么,叫什么没有特定的规范。这主要针对模块分类而言
  • 按照数据流动:MVC、MVVM
  • 业务分层&数据流动结合:
    三层架构:数据管理者、数据加工者、数据展示者
    笼统来说,软件只会有三层,每一层扮演一个角色。其他的第四、第五层一般都是这三层里面的其中之一分出来的,最后都能归纳为这三层中的某一层,所以三层描述比较普遍

相关文章

  • iOS架构

    这里说几个概念:iOS系统框架:iOS系统架构:iOS架构:iOS 代码架构:iOS架构师:iOS架构设计: iO...

  • iOS架构

    iOS架构iOS架构

  • 【IOS开发进阶系列】iOS系统架构专题

    1 IOS系统架构 1.1 IOS系统架构 1.1.1 iOS的系统架构 iOS的系统架构分为四个层次:核心操作系...

  • iOS应用架构谈 开篇

    iOS应用架构谈 开篇 iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网...

  • iOS 架构谈:剖析 Uber 的 RIB 架构

    iOS 架构谈:剖析 Uber 的 RIB 架构iOS 架构谈:剖析 Uber 的 RIB 架构

  • iOS应用架构谈 开篇

    iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案iOS应用架构谈 网络层设计方案iOS应用架构...

  • iOS应用架构谈 开篇[转]

    iOS应用架构谈 开篇iOS应用架构谈 view层的组织和调用方案iOS应用架构谈 网络层设计方案iOS应用架构谈...

  • 2019-03-12

    近期iOS 学习任务: 1.iOS 架构学习 iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案...

  • iOS应用架构

    iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方案 iOS应用...

  • iOS应用架构谈

    iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方案 iOS应用...

网友评论

      本文标题:iOS架构

      本文链接:https://www.haomeiwen.com/subject/uawprrtx.html