240 发简信
IP属地:浙江
  • Resize,w 360,h 240
    代码整洁之道读书笔记

    命名 名副其实:避免出现命名模糊,应做到见名知其意 避免误导: 比如前后拼写不一致 做有意义的区分,读者能够通过命名就能分别出两个方法之间的区别...

  • Resize,w 360,h 240
    iOS-Pipeline学习笔记

    一些概念 CI :持续集成,持续集成是指多名开发者在开发不同功能代码的过程当中,可以频繁的将代码行合并到一起并切相互不影响工作。 CD:持续部署...

  • Resize,w 360,h 240
    MVVM+SwiftUI+Clean架构实践

    MVVM+SwiftUI+Clean Code实践 Coordinator的职责负责构建具体的页面模块 makeViewController负责...

  • Resize,w 360,h 240
    Combine学习笔记

    Combine的角色 Publisher;负责发布事件 Subscriber:负责订阅事件 Operator:负责转换事件和数据 Publish...

  • Resize,w 360,h 240
    Charles抓包原理

    Charles抓包原理

  • Resize,w 360,h 240
    FFmpeg本地播放器

    播放器具备的功能 同时播放音视频 单独播放音频,视频 开始,暂停,停止 静音,音量控制 拖动进度 播放流程 解封装 初始化音频信息 初始化视频信...

  • Swift方法派发,动态特性

    Swift 动态特性 所谓动态:就是在运行阶段才知道自己的类是什么 父类对象指向子类对象,是动态特性,因为在运行的时候,才知道这个变量真正的类型...

  • Resize,w 360,h 240
    互斥锁 - 生产者,消费者模型

    锁的目的是为了让当前资源只能同时被一个线程操作 cond(条件变量)的作用是为了通知线程拿到锁,唤醒线程

  • FFmpeg-解封装

    解封装步骤 创建解封装上下文 avformat_open_input 检索流信息 avformat_find_stream_info 初始化音频...

个人介绍
李仁军
iOS程序员
成都
就职于thoughtworks
拒绝做码农