前言网上关于组件的理论很多而且已经比较成熟,理论方面请参看这篇集合文章iOS组件。本篇只谈自己的理解及实践。一、组件的初衷。(个人见解)有利于代码模块的封装和复用。对不同的业务模块可以进行物理隔离(通过git私有 仓库权
原创 2021-05-15 17:00:40
1051阅读
本文主要讲解组件的两种方案组件组件其实就是将模块单独抽离、分层,并指定模块间的通讯方式,从而实现解耦的
iOS
原创 2021-07-02 16:42:55
316阅读
本文主要讲组件之间是如何通讯的组件通讯方案目前主流的主要有以下三种方式:1、URL路由2、target-
iOS
原创 2021-07-02 11:46:00
1474阅读
CoreData详解介绍:在Cocoa环境下,如果你想使用数据库(如sqlite),你可以使用sql语句的方式通过相关的工具类进行数据库的直接操作。当然你也可以通过别人封装之后的一些简单框架,使得你的操作更加简单(如FMDBBNRPersistence)。Cocoa框架本身提供了CoreData这个...
原创 2021-07-28 16:27:35
707阅读
在使用本地语言之前,来看看本地语言文件内容的结构(这里我以Chinese为例):"Cancel"="取消";"OK"="确定";"Tip"="信息提示";"Login Faild"="登陆失败";.......其实就是简单的字符串替代而已,在程序中,如果有个UILable控件,需要赋值:lbLo...
原创 2021-07-28 15:58:40
276阅读
1、背景业务组件(或者叫模块)作为移动端应用架构的主流方式之一,近年来一直是业界积极探索和实践的方向。有赞移动团队自16年起也在不断尝试各种组件方案,在有赞微信商城,有赞零售,有赞美业等多个应用中进行了实践。我们踩过一些坑,也收获了很多宝贵的经验,并沉淀出 iOS 相关框架 Bifrost (雷神里的彩虹桥)。在过程中我们深刻体会到“没有绝对正确的架构,只有最合适的架构”这句话的意义。iOS
属性列表属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。NSArray类常用读写属性列表文件的方法:+arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取数据,创建NSArray对象。-initWithConten...
原创 2021-07-28 15:58:48
249阅读
一、简单说明对象归档是将对象归档以文件的形式保存到磁盘中(也称为序列,持久)
原创 2021-07-28 15:58:12
566阅读
一、简单介绍很多iOS应用都支持偏好设置,比如保存用户名、密码、字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能每个应用都有个NSUserDefaults实例,通过它来存取偏好设置。比如,保存用户名、字体大小、是否自动登录存储位置:存储形式:二、代码示例1.storyboard...
原创 2021-07-28 16:19:58
270阅读
iOS组件化开发流程前期准备工作注册仓库账号(gitHub/gitLabel/码云)注册trunk创建组件模版在组件模版里编写自己的代码修改.specs文件push到仓库给组件打一个tag校验specs文件关联私有仓库或上传cocoapods 前期准备工作组件化开发之前,我们先了解一下,什么是组件,为什么要组件化开发 举个很简单的例子,我们平时在开发的时候用的第三方库,我们直接pod下来就可以
转载 2023-07-13 14:05:11
81阅读
组件组件其实就是将模块单独抽离、分层,并指定模块间的通讯方式,从而实现解耦的一种方式,主要运用与团队开发为什么需要组件?主要有以下四个原因1、模块间解耦2、模块重用3、提高团队协作开发效率4、单元测试当项目因为各种需求,越来越来时,如果此时的各个模块之间是互相调用,即你中有我,我中有你这种情况时,会造成高耦合的情况。一旦我们需要对某一块代码进行修改时,就会牵一发而动全身,导致项目难以维护其问
转载 2023-07-21 14:31:28
47阅读
关于代码的组件,我一直认为都是有必要的。我所坚持该观点主要来自于以下几项。结构最小维护性扩展性抽象代码是结构最小必备的思想。为什么?从编码角度,代码可以分为系统代码和业务代码。首先,系统代码是维护系统逻辑和业务逻辑必要的基石。抽象代码的目的,就是将业务逻辑和系统逻辑拆分,两者不冲突。最简单的方式是,从现有各个语言框架看,抽象思维遍地都是,抽象的另一个目的就是简化逻辑。让逻辑调用更简单。在我看
转载 2023-07-28 16:00:28
49阅读
SQLite3简单介绍1.ios中数据的存储方式(1)Plist(NSArray\NSDictionary)(2)Preference(偏好设置\NSUserDefaults)(3)NSCoding(NSKeyedArchiver\NSkeyedUnarchiver)(4)SQLite3(5)Cor...
原创 2021-07-28 16:11:26
183阅读
最近在学习组件的一些方案。这里收集消化了一下,分享给大家参考。组件是架构层面的一个概念,它把项目按照某些规则(比如:按功能、按业务)划分成若干个颗粒度较小的单位,我们把这些单位称之为组件,或者是模块,来达到优化项目结构的目的。组件又可以细分为 功能组件(如:图片库,网络库),业务组件也叫模块(如:订单模块,个人中心模块)功能组件主要是物理层面的拆分,方便以后的复用业务组件强调逻辑拆分,以便解耦
前言:随着用户的需求越来越多,对App的用户体验也变的要求越来越高。为了更好的应对各种需求:①App架构:开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等复杂架构。更换适合业务的架构,是为了后期能更好的维护项目。②版本快速迭代:但是用户依旧不满意,继续对开发人员提出了更多更高的要求,不仅需要高质量的用户体验,还要求快速迭代,最好一天出一个新功能,而且用户还要求不更
前言说起组件大家应该都不陌生,不过也再提一下,由于业务的复杂度扩展,各个模块之间的耦合度越来越高,不但造成了“牵一发动全身”的尴尬境地,还增加了测试的重复工程,此时,组件就值得考虑了。组件就是将APP拆分成各个组件(或者说模块),同时解除这些组件之间的耦合,然后通过路由中间件将项目所需要的组件结合起来。这样做的好处有:解耦合,增强可移植性,不用再自身业务模块中大量引入其他业务的头文件。提高复
一、背景业务组件(或者叫模块)作为移动端应用架构的主流方式之一,近年来一直是业界积极探索和实践的方向。有赞移动团队自16年起也在不断尝试各种组件方案,在有赞微信商城,有赞零售,有赞美业等多个应用中进行了实践。我们踩过一些坑,也收获了很多宝贵的经验,并沉淀出 iOS 相关框架 Bifrost (雷神里的彩虹桥)。在过程中我们深刻体会到“没有绝对正确的架构,只有最合适的架构”
1.组件有什么好处?业务分层、解耦,使代码变得可维护;有效的拆分、组织日益庞大的工程代码,使工程目录变得可维护;便于各业务功能拆分、抽离,实现真正的功能复用;业务隔离,跨团队开发代码控制和版本风险控制的实现;模块对代码的封装性、合理性都有一定的要求,提升开发同学的设计能力;在维护好各级组件的情况下,随意组合满嘴不同产品需求;(只需要将之前的多个业务组件模块在新的主App中进行组装即可快速迭代出
转载 2023-07-13 14:04:26
157阅读
我们在做组件之前,必须要弄清楚,我们为什么要组件,如果没有明显的优点,或者解决我们的所需,我们没有必要组件。在app迭代如此快速的情况下,耗费时间精力去做这么一件事情到底值不值得?一、组件所解决的问题1.代码复用编程发展至今,面向对象语言的技术点发展,大多解决的是代码可复用问题,不管是封装、继承、多态,都是解决代码重用的不同解决方案,而组件也是为了这个目的,将一个业务、一个功能、甚至一段
转载 2023-08-10 14:56:28
135阅读
将一个工程分解成各个组件,然后按照某种方式任意组织成为一个拥有完整业务逻辑的工程。大致讨论组件的三种方案:url-block、protocol-class(和 url-controller 类似)、target-action,以及应用这三种组件方案的时机、步骤、利弊等。一、为什么需要组件随着公司业务的不断发展,项目的功能越来越复杂,各个业务代码耦合越来越多,代码量急剧增加,传统的 MVC 或
  • 1
  • 2
  • 3
  • 4
  • 5