240 发简信
  • 打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(二)

    继续上一篇的内容:打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(一) 功能扩展 总结完使用接口进行模块解耦和依赖管理的方法,我们可...

    2.0 1088 0 51
  • 120
    打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(一)

    打造完备的 iOS 组件化方案:如何面向接口进行模块解耦? 关于组件化的探讨已经有不少了,在之前的文章iOS VIPER架构实践(三):面向接口...

    10.8 3464 3 54
  • 120
    iOS 逆向指南:动态分析

    当静态分析无法获取足够的信息时,就需要进行动态分析,在 app 运行时,追踪方法调用、查看内存信息。最后找到想要分析的关键函数。 这篇文章包括:...

    0.9 2053 0 51
  • 120
    iOS 逆向指南:静态分析

    静态分析是指对二进制包进行反编译,分析静态的代码逻辑。 本文内容包括:app 砸壳过程、工具和环境的坑、导出 OC 头文件、使用 hopper ...

    1.9 1669 0 50
  • 120
    iOS 逆向指南:界面分析

    写几篇文章总结一下 iOS 逆向的整个流程,逆向初学者可以作为入门指南。内容包括逆向工具和环境配置、踩坑点、界面分析、砸壳、静态分析、动态分析、...

    1.1 1901 0 49
  • 120
    iOS VIPER架构实践(三):面向接口的路由设计

    路由是实现模块间解耦的一个有效工具。如果要进行组件化开发,路由是必不可少的一部分。目前iOS上绝大部分的路由工具都是基于URL匹配的,优缺点都很...

    1.2 2722 8 53
  • 120
    iOS VIPER架构实践(二):VIPER详解与实现

    第一篇文章对VIPER进行了简单的介绍,这篇文章将从VIPER的源头开始,比较现有的几种VIPER实现,对VIPER进行进一步的职责剖析,并对各...

    2.8 10642 8 65 1
  • 120
    iOS VIPER架构实践(一):从MVC到MVVM到VIPER

    最近半年在写app的时候,研究了一下各种iOS代码架构,最后选择了VIPER进行实践,在此对实践中遇到的各种设计问题做一番总结,并分享造出的轮子...

    6.9 16954 12 96 1
  • CFRunloop的多线程隐患

    如果你还不了解什么是runloop,可以看这里的详解深入理解RunLoop。 苹果官方文档中,声明了CFRunloop是线程安全的: Threa...

    1.4 2913 9 52