博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面试题《三》
阅读量:6989 次
发布时间:2019-06-27

本文共 3480 字,大约阅读时间需要 11 分钟。

100道面试题

1.__weak什么时候用? 2.是否使用过coreImage和coreText?如果使用过,说说你的体验 3.数据结构、写一个顺序排列 4.什么是TCP、DUP等协议?他们分别属于第几层? 5.写一个单项链表逆序 6.在iPhone中怎么写入C++程序,详细写下来 7.写一个快速排序

8.autorelease的对象是在什么时候被release的? 11.什么是OpenGL?具体使用 12.开发过程中应用程序内存泄露了该怎么办 13.ios开发中有什么方式支持多继承?(obj-c有多重继承么?不是的话有什么替代方法?) 14.从1-n个五序列的数字中排序的算法有哪些,简单代码实现一个并写出时间复杂度 15.开启一个其他线程来计算1+1 并且把结果用主线程显示在label上更新UI 16.ios7中navigationBar的背景如何设置成透明的吗?需求是这样的:viewController的背景是蓝色的,然后让navigationbar的背景是透明的,就 这样navigationbar也变成蓝色的了 18.用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题) 19.写一个委托的 interface 20.写一个NSString类的实现 21.obj-c有私有方法么?私有变量呢 22.关键字const有什么含意?修饰类呢?static的作用,用于类呢?还有extern c的作用 23.为什么标准头文件都有类似以下的结构?

#ifndef __INCvxWorksh     #define __INCvxWorksh     #ifdef __cplusplus     extern "C" {     #endif     /*...*/     #ifdef __cplusplus     }     #endif    #endif /* __INCvxWorksh */    复制代码

25.列举几种进程的同步机制,并比较其优缺点。

26.什么是键-值,键路径是什么

27.c和obj-c如何混用

28.cocoa touch框架

29.自动释放池是什么,如何工作

30.objc优点和objc缺点?

31.sprintf,strcpy,memcpy使用上有什么要注意的地方

32..http和scoket通信的区别。

35.什么是push。

36.静态链接库

37.fmmpeg框架

38.fmdb框架

39.320框架

40.什么是沙箱模型?哪些操作是属于私有api范畴?

41.你在开发项目中时,用到了哪些数据存储方式,iphone中常见的方式有哪些,各有什么区别?

43..init和initwithobject区别(语法)?

44.你连接服务器用的是什么方法,如果请求过程中,网络出了问题这么办?

47.协议是什么,有什么作用.?

49.分线程回调主线程方法是什么,有什么作用?

50.iphone阅读器,如果要读取一个文本文件,请问你是如何处理编码问题的?另外像pdf格式的文件,你如何读取。?

51.你在开发大型项目的时候,如何进行内存泄露检测的?

52.你做iphone开发时候,有哪些传值方式,view和view之间是如何传值的?

53.让一个物体从界面中的一点运动到另外一点,有哪些方法?

54.你了解哪些加密方式?

55.地图定位

56.http网络通信

57.图片浏览

58.对像序列化

59.线程 ?

a. 线程的创建和使用规则?b. 主分线程c.线程锁复制代码

60.各种 排序算法? 61.通信底层原理

62.为什么很多内置类如UITableViewController的delegate属性都是assign而不是retain的? 63. 以下每行代码执行后,person对象的retain count分别是多少?

Person *person = [[Person alloc] init]; count 1 [person retain];  [person release]; [person release];复制代码

64.在一个对象的方法里面:self.name = “object”;和name =”object”有什么不同吗?

67.请写出obj-c的内存管理代码 68.什么是OOP? 69.类变量的@protected, @private,@public, @package声明各有什么含义 71.什么是序列化或者Archiving?可以用来作什么?怎么跟copy结合? 74.KVO是同步还是异步?notification是同步还是异步? 75.ios对象的生命周期? 78.为NSString扩展一个方法,方法能判断字符串是否是Url地址(即判断字符串是否以“http://”),放回BOOL值类型

85.写一个简单的Objective C中的类的继承示例 86.这段代码的意义,有没有问题

-(void) setName : (NSString*)name{[myname release];[name retain];myname = name;}复制代码

87.上机题 写一个iphone程序,有2屏,可以通过滑动切换,第二屏有一个webview,读取本地的html文件,Html文件中会加载一个本地xml文件,获取xml文件中的数据内容并显示。(可选:html中加载的js文件)

88.协议? 89.TCP、HTTP、UDP 90.什么是协议?分几层? 91.UIView从出现到销毁的过程 92.认证 93.drawRect方法什么时候调用 94.js和webview如何交互、 95.框架phonegap 96.地图中怎么计算两点间的曲线距离 97.定位不准如何优化 98.TCP和DUP的区别 这两包的字节内容有啥不同 答 :TCP多了一些纠错码包装,DUP纠错和校验码 99.简单的顺序列表 100.如何避免json解析出现内存泄露,内存泄露后怎么解决


iOS性能优化技巧

通过静态 Analyze 工具,以及运行时 Profile 工具分析性能瓶颈,并进行性能优化。结合本人在开发中遇到的问题,可以从以下几个方面进行性能优化。

  • view优化

  • 透明,懒加载,不要使用layoutsubViews,尽量使用drawRect,不要直接调用,使用替代setneedsdisplayinrect,layoutifneeded,

  • UITableView优化

  • 重用cell,透明。复杂的cell使用drawrect, 不要使用cellforrowatinddexpatn,cache尽可能高的东西,包括行高。

  • 缓存优化

  • 缓存,尽量缓存使用率高。但改变比较少的,服务器的相应,图片,计算结果

  • 线程优化

  • 线程,耗时操作放到子线程中。同步使用串行队列,代替同步锁

  • 内存优化

  • 内存优化,使用autoreleasepoll 实现减少 内存峰值。

  • 代码细节优化

  • 图片优化

  • 对图片数据进行decode。在子线程中设置image的大小后,在imageview中使用缩放后的image。原因:由于UIImage的 imageWithData函数是每次画图的时候才将Data解压成ARGB的图像,所以在每次画图的时候,会有一个解压操作,UIImage初始化后仅 仅是把图片加载到内存中,而实际的解码和重采样是在图片需要显示时才进行。

    //图片重采样,在子线程中进行CGSize itemSize = CGSizeMake(width, height);//实际要缩放的大小UIGraphicsBeginImageContext(itemSize);CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);[image drawInRect:imageRect];UIImage newImage = UIGraphicsGetImageFromCurrentImageContext(); //重采样后的图片UIGraphicsEndImageContext();复制代码

7、代码的优化,viewappear中不进行耗时操作,关键代码使用c效率更高。

转载于:https://juejin.im/post/5b8f786de51d450e3e16523e

你可能感兴趣的文章
用大数据做产业组织 用“互联网+”做产业服务
查看>>
针对小型企业的CRM系统HeyMarket 可以防止员工在醉酒后向客户发送“骚扰短信
查看>>
5G和WIFI谁能够将用户价值最大化?
查看>>
Aspect引领北美外呼产品市场
查看>>
海外工业巨头“掘金”中国西部智能家居市场
查看>>
联发科10月营收238亿新台币 近6个月低点
查看>>
《Arduino开发实战指南:LabVIEW卷》——2.2 Arduino程序结构及基本函数
查看>>
连马云都要打包带走的美食,你不来一份儿?
查看>>
乐视云升级品牌同步启动全球域名
查看>>
回归服务器市场,看来AMD的Naples还需回答更多问题
查看>>
《Web应用漏洞侦测与防御:揭秘鲜为人知的攻击手段和防御技术》——2.3 小结...
查看>>
Mirics联合展讯推出嵌入式CMMB PCTV解决方案
查看>>
QC缺陷管理操作-细说
查看>>
干货丨5个问题鉴定大数据安全分析真伪!
查看>>
大话敏捷测试
查看>>
漫画赏析: Vi 还是不 Vi,这是个问题
查看>>
《Adobe After Effects CS6中文版经典教程》——1.8 渲染与导出合成图像
查看>>
《编写高质量代码:改善c程序代码的125个建议》——建议17-2:避免“悬挂”的else...
查看>>
jemalloc 5.0.0 全新版本发布,内存分配管理
查看>>
《草根自媒体达人运营实战》一一第2章 自媒体人必备品质
查看>>