2020年iOS面试

1.imsdk 封装了什么 单点登录 token加密 对称加密,非对称加密 本地加密 存储方式
2.avplayer 缓存
3.sdwebimage加载 为什么用位图 加载特别大图片怎么办 imagename imagecontentfile 区别释放时机
4.图片渐进式加载 怎么做
5.nsthead gcd nsopertion 区别  ab任务执行完 在执行C怎么办
6.http https ca证书加密内容是什么  请求报文为什么在浏览器看到明文
7.calayer uiview 区别 layer动画  a动画结束执行b动画 calayerdelegate 是持有还是值传递
8.消息转发过程 每一步做了什么
9.static extern 分别对 局部变量 全局变量 存储在哪
10.链表反转,是否有环
11.js交互  jsbride
12.闭包(逃逸非逃逸+)

1.启动优化 分哪几个部分 怎么优化的
2.静态库动态库本质区别 哪个适用于哪些场景
3.消息机制以及实际运用
4.nstimer 遇到问题、循环引用解决方案、几种方案区别
3.tableview cell 做layer动画有什么影响 如果停止 怎么保持动画运转 ,如何滑动时取消加载cell图片加载 
4.组件化方案  三种方案对比
5.hybird 用过么 ,怎么使用的
6.https http 区别 、https 绝对安全么 、Charles 原理
7.最大广度优先和深度优先算法了解么

1.启动过程
2.编译过程
3.block 实质 堆栈拷贝
4. 属性实质
5. 方法执行,消息转发
6.静态库动态库区别
7. uiview calayer layer如何展示到屏幕上
8 卡顿检测(线程监测runloop 状态 )
9 swift包比oc大
10 类结构 信息
11 autoreleapool结构
12 runloop autorelease关系

1. 动态代理 
2. dismiss 所有控制器、(除了while 判断)
3. -objc 作用
4. 多线程安全(atiomic)
5. 组件化调用原理
6. 第三方js 调用
7. 修改私有变量方法
8. 动态库 静态库区别
9. 转场动画 
10.  runtime 实际运用
11. 友盟实现组件化原理 category
12. 事件传递链响应链 (谁是第一个知道的)
13. http 请求过程

atmoic 绝对安全 +什么锁,几种锁,锁的区别、以及适用哪些场景
weak strong 区别
load +instialize 触发 
多线程 gcd 控制异步线程
产生卡顿原因  垂直帧率
同步和异步对于队列的区别
nscache 原理

tcp 握手 四次挥手 有哪些包 包作用是什么
tcp 拥堵控制
http https 加密过程 对称加密 非对称加密
数据库 怎么查询更快, 内联左联是什么
手写算法 链表有环,字符串转数字
 
mach-o 都有什么文件
多线程异步取消 取消本质是当时取消的么 能当时就取消么
算法 二叉树最小深度以及二叉树反转 ,两个链表公共节点

IPA优化 都优化了哪些
动态库怎么合并的
GCD group enter leave为什么要成对出现,有什么影响、栅栏函数作用
uiscrollview 原理
动态库链接过程

wkwebivew 加载原理、如何优化、 如何拦截请求、NSURLProtocol能拦截到么
启动优化
rac原理,合并信号
runtime实际运用
线上监测卡顿 以及内存泄漏、MLeaksFinder原理
instrument 具体使用
RAC以及RXswift 优点以及缺点
组件化CTMediator 原理

OC C C++区别
sdwebimage原理 为什么转换为位图、怎么存储的、 一张1024*1024图片多大 、缓存策略LRU算法本质
多代理实现 NSSet,NSHashMap,NSHashTable区别
NSCache 和 NSDictionary 区别  字典使用 setobject 和setvalue 区别
arc mrc区别 自动释放池释放时机  手动加入自动释放池的释放时机 底层结构是怎么样的
无痕埋点怎么做 hook 点击事件 比如uitableview 点击事件怎么获取 
怎么拦截崩溃 处理崩溃 没有堆栈怎么定位
uiview和calayer区别 uibutton做动画 如何加点击事件
三种block 区别 __block本质 block原理
class_rw_t 和 class_ro_t区别
load 和initialize 区别 initialize什么时候触发 会触发几次

nil NULL NIL NSNULL区别  处理接口中返回的nil
NSUserDefault 是线程安全的么,底层实现
死锁怎么解决 、信号量 有什么问题么 卡同步怎么解决
wkwebview优化
如何解决wkwebview 中重定向的问题
算法从数组中找到和为N的数组两个下标 ,有更低复杂度的解决方式么

weak,strong,assign 区别 、copy和mutablecopy 区别、本质是什么,遵循什么协议,atmoic不安全有什么解决方式,锁的区别,如何竞争资源的
NSArray 和 NSDictionary 底层原理
用过URLCache么,NSCache原理
本地存储几种方式,有什么区别,是线程安全的么
socket 和http 区别 写过socket client 么
内容概要:本文档详细介绍了在三台CentOS 7服务器(IP地址分别为192.168.0.157、192.168.0.158和192.168.0.159)上安装和配置Hadoop、Flink及其他大数据组件(如Hive、MySQL、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala)的具体步骤。首先,文档说明了环境准备,包括配置主机名映射、SSH免密登录、JDK安装等。接着,详细描述了Hadoop集群的安装配置,包括SSH免密登录、JDK配置、Hadoop环境变量设置、HDFS和YARN配置文件修改、集群启动与测试。随后,依次介绍了MySQL、Hive、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala和Flink的安装配置过程,包括解压、环境变量配置、配置文件修改、服务启动等关键步骤。最后,文档提供了每个组件的基本测试方法,确保安装成功。 适合人群:具备一定Linux基础和大数据组件基础知识的运维人员、大数据开发工程师以及系统管理员。 使用场景及目标:①为大数据平台建提供详细的安装指南,确保各组件能够顺利安装和配置;②帮助技术人员快速掌握Hadoop、Flink等大数据组件的安装与配置,提升工作效率;③适用于企业级大数据平台的建与维护,确保集群稳定运行。 其他说明:本文档不仅提供了详细的安装步骤,还涵盖了常见的配置项解释和故障排查建议。建议读者在安装过程中仔细阅读每一步骤,并根据实际情况调整配置参数。此外,文档中的命令和配置文件路径均为示例,实际操作时需根据具体环境进行适当修改。
在无线通信领域,天线阵列设计对于信号传播方向和覆盖范围的优化至关重要。本题要求设计一个广播电台的天线布局,形成特定的水平面波瓣图,即在东北方向实现最大辐射强度,在正东到正北的90°范围内辐射衰减最小且无零点;而在其余270°范围内允许出现零点,且正西和西南方向必须为零。为此,设计了一个由4个铅垂铁塔组成的阵列,各铁塔上的电流幅度相等,相位关系可自由调整,几何布置和间距不受限制。设计过程如下: 第一步:构建初级波瓣图 选取南北方向上的两个点源,间距为0.2λ(λ为电磁波波长),形成一个端射阵。通过调整相位差,使正南方向的辐射为零,计算得到初始相位差δ=252°。为了满足西南方向零辐射的要求,整体相位再偏移45°,得到初级波瓣图的表达式为E1=cos(36°cos(φ+45°)+126°)。 第二步:构建次级波瓣图 再选取一个点源位于正北方向,另一个点源位于西南方向,间距为0.4λ。调整相位差使西南方向的辐射为零,计算得到相位差δ=280°。同样整体偏移45°,得到次级波瓣图的表达式为E2=cos(72°cos(φ+45°)+140°)。 最终组合: 将初级波瓣图E1和次级波瓣图E2相乘,得到总阵的波瓣图E=E1×E2=cos(36°cos(φ+45°)+126°)×cos(72°cos(φ+45°)+140°)。通过编程实现计算并绘制波瓣图,可以看到三个阶段的波瓣图分别对应初级波瓣、次级波瓣和总波瓣,最终得到满足广播电台需求的总波瓣图。实验代码使用MATLAB编写,利用polar函数在极坐标下绘制波瓣图,并通过subplot分块显示不同阶段的波瓣图。这种设计方法体现了天线阵列设计的基本原理,即通过调整天线间的相对位置和相位关系,控制电磁波的辐射方向和强度,以满足特定的覆盖需求。这种设计在雷达、卫星通信和移动通信基站等无线通信系统中得到了广泛应用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值