美文网首页
模块拆分(三)

模块拆分(三)

作者: S_Lyu | 来源:发表于2020-04-23 19:59 被阅读0次

第三步:使用bundle

1.在CommonMacros.h宏定义快捷方式

快捷取出指定bundle

image.png

2.使用

  • 使用xib时如下:


    image.png
  • 使用图片时如下:


    image.png

3.方法糖(避坑)

  • 这里为UINib扩充了+ (UINib *)xh_nibWithNibName:(NSString *)name方法,用来从全局bundle中寻找指定nib
    注:这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib
    image.png
  • 这里为UIImage扩充了+ (UIImage *)imageNamedFromAutomaticBundle:(NSString *)name方法,用来从全局全局bundle中寻找指定图片(自动确定2x/3x)
    注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应image)
    image.png
  • 这里为UIView扩充了+ (instancetype)XH_loadViewFromXib方法,用来从全局bundle中寻找指定xib
    注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib)
    image.png
  • 这里重写了XHBaseViewController的构造函数- (instancetype)init用来在初始化前,从全局bundle中寻找自身名字匹配的控制器

注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib)

image.png
  • 糖的用法:


    image.png

相关文章

  • 模块拆分(三)

    第三步:使用bundle 1.在CommonMacros.h宏定义快捷方式 快捷取出指定bundle 2.使用 使...

  • 架构学习-消息队列

    在公司中,目前服务拆分出来的订单模块,商品模块,发票申请模块,邮寄模块,退款模块,安全模块,公共模块,之前拆分出...

  • 已有项目模块化流程

    1 根据业务拆分模块,找出所有的业务模块。复杂的业务模块拆分为小的业务模块。2 根据模块的层级结构已文件夹...

  • 数据库的垂直拆分和水平拆分

    概念介绍 垂直拆分 垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种拆分在大型网站...

  • AppDelegate如何瘦身?

    1、使用分类,拆分模块到分类中。(分类中同名方法覆盖问题)2、不使用分类,拆分模块,每个模块的处理数据方法注册到原...

  • 对SpringCloud微服务架构的理解

    微服务 微服务 将all in one的项目拆分,可以按业务拆分成独立的模块等,降低模块与模块之间的耦合性,每个微...

  • 2020-04-19 数据库的分表分库

    分表分库 垂直拆分 垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种拆分在大型网站...

  • 在终端营销活动中:如何对整体项目进行有效拆分?

    项目拆分就是把整体项目拆分成几个模块,这几个模块彼此独立,又相互联系。 拆分项目的目的,是为了我们能更好的去管理推...

  • MongoDB快速入门教程 (4.3)

    4.3.Mongoose模块化 #4.3.1.为什么要进行模块化拆分? 模块化拆分的目的是为了代码的复用,让整个项...

  • 模块拆分(前言)

    前言 1.高耦合的app,到底怎么拆? *还有很多分支已经删掉了..." 2.业务边界清晰么? 无奈之举,抽离Co...

网友评论

      本文标题:模块拆分(三)

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