iOS面试用到的知识点和技术点--第二章

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS面试用到的知识点和技术点--第二章相关的知识,希望对你有一定的参考价值。

接着第一章的继续  昨天没有更新,很抱歉

1、Socket编程 以及一些第三方框架Socket-IO GCDAsyncSocket通信框架?

  1、使用系统自带的CFsocket

  技术分享

  2、第三方Socket-IO

  技术分享

  技术分享

   3、GCDAsyncSocket

  技术分享

  想要了解更多 请看http://www.jianshu.com/p/2ef8a1b08338

  2、友盟、shareSDK分享?

  1、关于友盟 是什么  我想不用我多说了  自己去看官网  只是想简单的集成分享、登录和统计功能的还可以看这个:http://www.jianshu.com/p/ccfa6bb0d17d

  2、shareSDk和友盟一样 我就不多说了  去官网看  

3、cocoaPods第三方代码管理库?

  技术分享

 

  只说一句:这个用得非常多,

  1、cocoaPods的安装请看这个:http://www.jianshu.com/p/e3ad7d157ea8   使用请看这个:http://www.jianshu.com/p/63451e2a0247  

4、SVN、GIT等版本控制器?

SVN: 

技术分享 

技术分享

下载地址:http://subversion.tigris.org/     

Git:

技术分享

技术分享

我个人还是喜欢命令行的模式,只要习惯了  或许用GUI还不适应呢

另外还有一些不是很常见的版本控制工具:Mercurial、Subversion、cvs

 当然 CVS的话有很大的缺点:它不是原子提交的 。可以去百度看看这些

4、FFMpege编解码的流媒体及第三方框架:IJKPlayer、PLPlayerKit、Vitamio、krVideoPlayer...

FFMpege: 

技术分享

2、IJKPlayer:

首先它基于FFMpeg的适用于ios和安卓端的 

提供下载:链接: http://pan.baidu.com/s/1miQyfgO 密码: k59f

使用的话,网上各种DEMO已经够多了

3、PLPlayerKit:

这是swift版的一个播放器

地址:链接https://github.com/pili-engineering/PLPlayerKit

需要技术分享

这里有它的简单的使用:http://www.jianshu.com/p/46dd5a199db3

4、Vitamio:

Vitamio是一款android 平台上的全能多媒体开发框架。能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在 Android 上支持 MMS, RTSP, RTMP, HLS(m3u8) 等常见的多种视频流媒体协议,包括点播与直播.

 这里也提供一篇文章,有想往安卓方向的也可以去看看:http://www.jianshu.com/p/7f97b8e608c5

 5、KrVideoPlayer:

它是基于MPMoviePlayerController,类似Weico的播放器,支持竖屏模式下全屏播放   很陌生是不是  

总的来说:第三方框架太多了  就不过多介绍了  可以自己去搜 或者实现一个

 5、runtime运行时和runloop机制?

runtime就像是管理代码的操作系统(类似于管理应用程序的操作系统)只不过它管理的是代码的执行---我个人的理解  可能有误

技术分享

技术分享

runtime与OC在三个层面上交互:

1.编写OC源代码,runtime在幕后编译

2.通过Foundation框架中的Object类方法进行

3.我们可以直接调用runtime库中的函数

   runloop机制:

技术分享

CFRunLoopRef 的代码是开源的,你可以在这里 http://opensource.apple.com/tarballs/CF/ 下载到整个 CoreFoundation 的源码来查看

Update: Swift 开源后,苹果又维护了一个跨平台的 CoreFoundation 版本:https://github.com/apple/swift-corelibs-foundation/,这个版本的源码可能和现有 iOS 系统中的实现略不一样,但更容易编译,而且已经适配了 Linux/Windows

要想真正理解底层的实现  除了看源代码  还应该再回头看看 《计算机组成原理》,《计算机系统结构》《微机原理》《汇编语言》《编译原理》 《操作系统》这些书。

可惜 这些书 我好长时间 都没有再看了。

6、苹果IAP店内购?

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

好了今天的面试题就到这里了  还会有第三章  或者也可以留言需要哪个方向的比如:UI  技术点 或者底层原理类型的

欢迎大家光临我的博客  谢谢大家  另外我的简书也欢迎大家:http://www.jianshu.com/users/795c2ec428fd/latest_articles 

虽然写得可能不是太好  但是喵也是在慢慢的改进  力求给大家带来最高质量的技术性博客

以上是关于iOS面试用到的知识点和技术点--第二章的主要内容,如果未能解决你的问题,请参考以下文章

Java核心技术(应对面试)

iOS开发,重点iOS技术点+面试题整理

iOS大厂面试备战--网络篇

你是否在 Android Framework 技术点上栽过跟头?

Java集合排序(面试必考点之一)

写给1-3年Java程序员的几点建议,看完必懂