2018 iOS 面试法宝+绝密文件



  • 简单介绍项目情况
  • 项目周期
  • 实现了哪些功能(类似简历项目模块的项目职责)
  • 用到了哪些技术点(类似简历项目模块的技术要点)
  • 难点在哪?怎么解决的
  • 亮点在哪?实现原理
  • 其他自己想介绍的


拿offer快的同学特点:

1.准备充分,一般爱问的题心里都有备用答案

2.简历比较突出,有自己的特点,技术点较全面

3.能说会唠,随机应变

4.自信不紧张,淡定面对面试官


需要充分准备的

自我介绍(2分钟左右)

1、姓名,籍贯

2、学历,专业

3、工作经历(年限、上家公司简称)

4、参与了哪些项目的开发

5、性格特点

6、优缺点


人事问题

  • 自我介绍
  • 离职原因
  • 社保基数
  • 离职证明
  • 公司情况(地址,人数,老板)
  • 住址
  • 加班看法
  • 公司的了解情况


自我介绍

做不好自我介绍,在取得面试官好感这一关上,估计你就要败下阵来了。如果不能给面试官一个好的第一印象,那么就算你接下来能把你的满腹经纶都倒出来,也恐怕事倍功半了。

在面试辣么短的时间内,毕业生如何"秀"出自己呢?该做哪些准备?有什么问题值得注意?小小猿专门采访了一些实例,希望能给大家提供一些就业指导。


1

案例一:如何把握时间

研究生毕业的小刘很健谈,口才甚佳,对自我介绍,他自认为不在话下,所以他从来不准备,看什么人说什么话。他的求职目标是地产策划,有一次,应聘本地一家大型房地产公司,在自我介绍时,他大谈起了房地产行业的走向,由于跑题太远,面试官不得不把话题收回来。自我介绍也只能"半途而止"。

技巧一:一分钟谈一项内容

自我介绍的时间一般为3分钟,在时间的分配上,第一分钟****可谈谈学历等个人基本情况,第二分钟可谈谈工作经历,对于应届毕业生而言可谈相关的社会实践,第三分钟可谈对本职位的理想和对于本行业的看法。如果自我介绍要求在1分钟内完成,自我介绍就要有所侧重,突出一点,不及其余。

在实践中,有些应聘者不了解自我介绍的重要性,只是简短地介绍一下自己的姓名、身份,其后补充一些有关自己的学历、工作经历等情况,大约半分钟左右就 结束 了自我介绍,然后望着考官,等待下面的提问,这是相当不妥的,白白浪费了一次向面试官推荐自己的宝贵机会。而另一些应聘者则试图将自己的全部经历都压缩在 这几分钟内,这也是不明智的做法。合理地安排自我介绍的时间,突出重点是首先要考虑的问题。


2

****案例二:千万别太做作****

小李因为第二天想要面试一家心仪已久的大型企业,提前一天背诵自己的简历和自我介绍。面试当天,她非常流利的“背诵”出脑子里的内容,但是却没有获得机会。

****技巧二:切勿采用"背诵"口吻****

人力资源专家指出,自我介绍可以事前准备,也可以事前找些朋友做练习,但自我介绍应避免书面语言的严整与拘束,而应使用灵活的口头语进行组织。切忌以背诵 朗读的口吻介绍自己,如果那样的话,对面试官来说,将是无法忍受的。自我介绍还要注意声线,尽量让声调听来流畅自然,充满自信。


3

******案例三:怎样谈成绩******

小王去应聘某大型移动互联网公司,该公司想要的的技术,小王从未听过。他会的东西,正好和这家公司的招聘需求不符合,怎么办?

******技巧三:只说与职位相关的优点******

自我介绍时要投其所好摆成绩,这些成绩必须与现在应聘公司的业务性质有关。在面试中,你不仅要告诉考官你是多么优秀的人,更要告诉考官,你如何地适合这个工作岗位。那些与面试无关的内容,即使是你引以为荣的优点和长处,你也要忍痛舍弃。

在介绍成绩时,说的次序也极为重要,应该把你最想让面试官知道的事情放在前面,这样的事情往往是你的得意之作,也可以让面试官留下深刻的印象。


4

********案例四:当用点"小聪明"********

阿枫参加了去年某大型国企的校园招聘会,每一位应聘者与面试官只有几分钟的交谈时间,如何在这么短的时间里,取得面试官的好感,进入下一轮呢?

********技巧四:以说真话为前提********

自我介绍时,要突出个人的优点和特长,你可以使用一些小技巧,比如可以介绍自己做过什么项目来验证具有某种能力,也可以适当引用别人的言论,如老师、朋友等的评论来支持自己的描述。但无论使用哪种小技巧,都要坚持以事实说话,少用虚词、感叹词之类。自吹自擂****一般是很难逃过面试官的眼睛的。至于谈弱点时则要 表现得坦然、乐观、自信。


5

**********案例五:如何摆脱怯场**********

阿宏毕业于中部城市的某大学,由于自己是一位专科生,在研究生成堆的人才市场里,阿宏的自信心有点不足,面对面试官常常表现出怯场的情绪,有时很紧张,谈吐不自然。

**********技巧五:谈吐运用"3P原则"**********

人力资源专家指出,自我介绍时的谈吐,应该记住"3P原则":自信(Positive),个性(Personal),中肯(Pertinent)。回答要沉着,突出个性,强调自己的专业与能力,语气中肯,不要言过其实。

在自我介绍时要调适好自己的情绪,在介绍自己的基本情况时面无表情、语调生硬;在谈及优点时眉飞色舞、兴奋不已;而在谈论缺点时无精打采、萎靡不振,这些都是不成熟的表现。对于表达,建议阿宏可以找自己的朋友练习一下,也可以先对着镜子练习几遍,再去面试。


技术要掌握

常见手写题:

冒泡选择排序,单例,Sqlite语句,哪几种线程,多态例子


viewcontroller生命周期

  • 技术点:

项目准备:

  • xcode版本
  • CocoaPods
  • iOS9新特性
  • 项目分工
  • 难点
  • 亮点
  • 一个项目的详细介绍
  • 益智题
  • 有什么要问的么


一、简历注意事项

1.简历要求

顺序:

1.简介

2.求职意向

(教育背景)根据学校自定

3.工作经历

4.项目经验/

5.技术点(技能)

第四点和第五点可以互换

  • 项目与技术点谁在前谁在后,看你比较熟悉哪个
  • 简历上写到的一定要弄明白
  • 如果是亮点,还不太懂,一定要弄懂它,哪怕没学过,查找能力,自学能力必须要练,要不进公司后也有可能被辞

2.常见技术点(英文好的可以用英文表示)(相对交全,自己进行增删改查)


可以根据自己掌握情况和项目情况进行整理

1.语言基础:(C/C++,Objective-C,)(Swift、HTML5、JS)是熟练还是了解

2.面向对象思维

3.工作用的软硬件使用:(XCode、mac、插件、SDK、Cocoa Touch层框架)

4.设计模式:(MVC,代理,观察者(KVO),单例,工厂。。。)

5.传值:KVC, Block、代理、通知。。。

6.内存管理:ARC、MRC(混编)

7.网络:

  • HTTP应用层,TCP/Ip、UDP传输层,socket通讯机制、
  • NSURLConnection/NSURLSession网络请求(封装下载类)、断点下载、缓存技术
  • XML/JSON数据解析和GET/POST数据请求

8.多线程技术:NSTread、NSOperation、GCD

9.UI部分:

  • UITableView、UICollectionView进行图文混排
  • 自定义tabbar、侧滑、抽屉、图片轮播、上下拉刷新、瀑布流等功能
  • 触摸事件处理和相应链以及6种常用手势
  • 能够根据需要封装自定义UI控件,可以实现复杂的界面交互

10.系统类方法调用系统相机、图库、通讯录、短信、邮件、打电话

11.后端交互数据中iOS标准时间与时间戳的相互转换 ,OC与JS交互

12.核心框架

  • CoreGraphics/(Quartz2D),CoreAnimation,CoreText(富文本)的描述及使用(可详细,可简略)

13.物理仿真:UIDynamic(重力、碰撞、捕捉、推动、附着。。。)

14.布局:

  • StoryBoard、SizeClass、xib以及混合编程
  • AutoLayOut(自动布局)、Masonry屏幕适配

15.常见的第三方库使用(5-10个)

  • SDWebImage , AFNetworking,RDVTabBarController,SCNavigation, MJRefresh , MJExtension , FMDB, MMProgreessHUD,Masonry, Reachability、GData、JSONModel、UIImageGIF(自己进行增删改查)未用过的可快速上手

16.数据持久化:CoreData、Sqlite、NSUserDefaults、Plist、归档、Keychain的使用

17.加密算法(AES, DES, GTMBase64, MD5, RSA等)

18.生成静态库(.a,.framework,.bundle)

19.Auth2.0协议,新浪微博,友盟,ShareSDK等带三方的授权、登录、分享、统计技术

20.音频、视频、流媒体(自定义播放器)(MPMoviePlayerController、AVPlayer、AVAudioPlayer、第三方库)(可详可略)

21.二维码:(Zxing和ZBar),语音识别:(科大讯飞)

22.地图:定位,导航,搜索,大头针定制,地理正反编码;

  • 高德地图
  • 百度地图
  • LBS

23:支付:内购、银联,支付宝,微信等支付流程

24:工程操作:Target分支、Today extension插件、程序跳转并传值、国际化操作

25:其他亮点:蓝牙、滤镜、弹幕、人脸识别、3DTouch、指纹识别

26: 即时通信:XMPP、环信

27:必须的:真机调试,提审发布流程,解决常见的审核拒绝、更新版本问题

28:代码管理:SVN、Git使用、蒲公英多人测试

29:推送:本地推送、远程推送(原理)、极光推送

30:底层:runtime,runloop

31:能力:

  • 解决bug能力,搜索和查找能力
  • 自学能力强,并乐于分享,既能团队开发也能独立独立开发
  • 良好的英文文档阅读能力,具有良好的编程习惯


以上的技术点有的是使用第三方库实现的

3.好用的第三方库哪些

4.项目职责和技术要点思路

1.框架搭建,设计模式

2.纵向分工(MVC哪一层)

3.横向分工(哪一模块)

4.封装哪些库

5.使用哪些第三方库及流程

6.UI效果、功能及优化策略

。。。


不要写简单的界面实现啥的,要提高一个层次

5.常见面试思维题


二、面试注意事项

2.面试官会问哪一个参与度最高,然后回答之后自己简单介绍一下项目

2.1.项目针对的市场,有什么功能,什么内容?

2.2.app的结构是什么?(主流的是tabbar横向,nav纵向,qq的用的是侧滑,有什么不同呀,各有什么好处)

2.3你的项目运用了什么技术?

2.3.1(严格遵守mvc,说一下mvc的好处)

2.3.2屏幕适配(autolayout,可以顺便问一下咱们公司用的什么适配方式)

2.3.3.也可以说一下自己在项目中遇到的问题,自己是如何解决的。

2.3.4.用到了AFN。AFN有什么好处呀,机制是什么,比如post上传需要拼接很多参数,而AFN已经封装好了,我们直接用就行了。然后可以问一下咱们公司用的什么下载呀

2.4.多线程

可以说自己多线程的代码写的不是很多,一般数据请求AFN都已经封装好了,但自己知道什么时候用多线程,比如处理一些耗时操作呀

2.5.优化cell(可以百度tableView的优化)

2.5.1:性能上:注册机制

2.5.2:结构上:提前计算好fram等等

2.5.3:图片缓存(SDWebImage缓存到哪一个目录,可以设置清除缓存功能等)

2.6.内存警告(app优化)

2.6.1.懒加载

2.6.2.不是当前展示的视图。可以remove掉,当需要显示的时候再懒加载

2.6.3.美工给的图片像素太高图片太大,让美工做小图然后可以用代码拉伸等

3.面试时一定要自信,表现出只要给时间就一定可以搞定这件事,快速掌握,快速上手

4.技术的连贯性,把学到的知识串起来,让人感觉思路清晰


可以试着问他们的:

  • 贵公司的近期的发展规划?
  • 贵公司的管理模式以及开发团队的人员情况具体是怎样的?
  • 贵公司的项目情况是怎样的,我来了之后具体是坐哪一方面的工作,是开发新项目还迭代开发呢?
  • 贵公司几天能给我答复,我什么时候能入职


作者:Silence_广 
原文:https://www.jianshu.com/p/f68d899509a3?utm_source=desktop&utm_medium=timeline


0