美文网首页iOSAPP & programiOS组件化、架构
iOS开发常用的第三方库 2022-04-03 周日

iOS开发常用的第三方库 2022-04-03 周日

作者: 勇往直前888 | 来源:发表于2022-04-04 22:05 被阅读0次

    简介

    • 当前的时间节点,国外Swift已经占主流;国内,正处于从Objective-C向Swift逐步过渡的时期。

    • 所以,工作中用Objective-C,同时Swift边学边做,算是一个方法。
      当然,有把握的,直接过渡到Swift也是好的。适应的时间大约也就一个星期半个月的样子。再不济的,一个月的适应时间肯定是够了。

    • 从Objective-C切换到Swift,除了编码习惯要变之外,第三方库的选择也要变一变。当然,这些库是可以通用的,但是,选用相同语言的总感觉要好一些。

    • 说到第三方库,就会想到CocoaPods,在Objective-C的语境下,几乎是必选的。不过在Swift的情况下,XCode自带的Swift Package Manager就可以考虑。另外,Carthage也是选项之一。
      目前,Swift语境下,首先使用XCode自带的Swift Package Manager。Carthage在这么多年的竞争下已经落败,意义不大。CocoaPods每次用都要出幺蛾子,早就想扔了。

    Objective-C

    网络库

    • 一开始的时候还有两三个选择,目前基本都选这个:
      AFNetworking

    • 二次封装的网络库,有兴趣可以考虑采用。本人不选,就像weex对RN的二次封装差不多。
      YTKNetwork

    图片加载

    • 展示网络图片几乎每个APP都需要,基本上也都选这个:
      SDWebImage

    • 另外YYWebImage也是很不错的,只是SDWebImage更流行,所以这个可以作为备选。

    自动布局

    • 苹果提供的相对布局API很难用,新创的布局语言更是扯淡。这个第三方提供的方法符合人性,几乎是默认选项
      Masonry

    HUD

    • 俗称小转转,这里有好多个选择,这里选Star最多的(相信潮流的选择)
      MBProgressHUD

    • 下面这个也很好用,Star也很多,给的API更直白。
      SVProgressHUD

    • 只要有网络请求,这个几乎是必须的,自己写没必要,选择一个主流的第三方库是很好的方式。

    与JS交互

    在大前端如火如荼的现在,原生+H5的混合架构仍然是主流。原生与H5的交互框架一直以来就只有下面这个占主流。
    WebViewJavascriptBridge

    字典转模型

    本地数据是对象模型,网络数据格式基本上是JSON,所以字典转模型也是强需求

    表格刷新

    表格的使用率很高,下拉刷新,上拉加载经常用到,基本上都用下面这个:
    MJRefresh

    表格空白

    如果网络异常,或者出错,或者没数据,展示什么呢?空白页肯定不合适,这种情况还是很普遍的。这里也要一个几乎是默认的:
    DZNEmptyDataSet

    本地缓存

    系统提供NSDefault性能不是很好,功能也差,限制也多,不是很好用。序列化还需要编码解码写一堆代码,用起来也不方便。数据库?除非必要,坚决不考虑。NSCache只是内存缓存,在iOS开发中的存在感更加低。
    本地缓存还是需要的,比如自动登录,记忆选择状态等等。
    一直以来就用这个,感觉很好。其他的也没有尝试过。
    YYCache

    富文本

    点击文字跳转,某些文字高亮,部分文字特殊样式,这些需求时不时就会来。系统原生对这块支持很弱,那个属性字符串是真的差劲。
    一直以来这方面的需求都用下面这个解决,非常好用,功能也强大:
    YYText

    Swift

    如果没有特殊的,Swift可以和Objective-C用相同的第三方库

    网络库

    • 和AFNetworking一样,基本用这个,也是同一作者
      Alamofire

    • 二次封装的网络库,面向协议的编程方式很赞。Alamofire本身的使用方式并不是很好。可以考虑采用
      Moya

    图片加载

    自动布局

    • 和Masonry是同一个作者,基本上是默认选项
      SnapKit

    HUD

    与JS交互

    字典转模型

    基本上公认的,就用这个:
    SwiftyJSON

    表格刷新

    表格空白

    本地缓存

    富文本

    偶尔用到的

    弹窗提示

    • 系统提供的分为Alert和Action Sheet两种,一开始是两种view,后来合并成了Controller。基本用用是差不多了。

    • 如果对界面有需求,一半要自定义,通常是view的形式,不会考虑Controller。经历的项目中大多数是这种情况。

    • 现在有一些第三方库,提供的界面也比较特色,可以找几个试试。这个还是主要看UI人员怎么取舍。

    • 这个是用Swift写的,暂时不考虑。SDCAlertView

    • 这个虽然Star很多,色彩也算丰富,头部还带个图片。感觉跟系统的差距很大,暂时也不考虑。SCLAlertView

    • 这个和系统的风格不一样,不过整体感觉还可以,Star也多一些,可以作为备选考虑。MMPopupView

    • 这个和系统的风格接近,整体感觉较好。只是Strar少了一点。如果要选的话,可以考虑这个。LGAlertView

    参考

    加速iOS开发的28个第三方库

    iOS常用第三方库

    iOS开发最全常用第三方库

    相关文章

      网友评论

        本文标题:iOS开发常用的第三方库 2022-04-03 周日

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