iOS开发进阶
人类一思考
雄关漫道真如铁,而今迈步从头越。
展开
-
【iOS开发进阶】-AVPlayer视频播放
1.AVPlayer介绍iOS提供了多种方法来实现视频播放,包括MPMoviePlayerController,MPMoviePlayerViewController,AVPlayer,AVPlayerViewController等。其中MPMoviePlayerController,MPMoviePlayerViewController在iOS9.0之后被弃用。四种播放方式的区别如下:其中公司内项目使用的是AVPlayer实现视频播放,AVPlayer使用十分灵活,也更加接近底层,但是AVPl原创 2020-11-14 19:11:00 · 7057 阅读 · 0 评论 -
【iOS开发进阶】-内存管理
1.内存管理模型对于面向过程的C语言而言,其设计的内存管理方式十分直接,内存的申请和释放都由开发者手动处理。这种管理方式简单,但是会大量增加编码过程中的工作量,也会增加代码的复杂度。在面向对象语言中,内存管理通常会由模型机制来完成,常见的有垃圾回收与引用计数两种内存管理模型。Java中的JVM使用的就是垃圾回收管理模型,而Objective-C语言采用的是引用计数的内存管理模型。在iOS程序中,内存通常被分成5个区域: 栈区:存储局部变量,在作用域结束后内存会被回收 堆区:存储O原创 2020-11-14 18:41:29 · 301 阅读 · 0 评论 -
【iOS开发进阶】-RunTime
1.基本概念编译时与运行时源代码转换为可执行的程序,通常需要经过三个步骤:编译、链接、运行,不同的编译语言,这三个步骤中所进行的操作又有些不同。编译时就是正在编译的时候,即编译器将源代码翻译成机器能识别的代码的过程。编译时知识对语言进行最基本的检查报错,包括词法分析、语法分析等,编译通过并不意味着程序就可以成功运行。运行时就是程序通过编译后,编译好的代码被装载到内存中跑起来的阶段,这个时候会具体对类型进行检查,而不仅仅是对代码简单扫描分析,此时如果出错,程序会崩溃。静态语言与动态语言原创 2020-11-14 18:22:15 · 563 阅读 · 0 评论