美文网首页iOS面试集合iOS开发集锦
今年行情这么差,iOS开发到底如何进大厂?

今年行情这么差,iOS开发到底如何进大厂?

作者: iOS亮子 | 来源:发表于2020-04-24 14:58 被阅读0次

    简述

    持续更新--请iOS的小伙伴关注! 喜欢的话给一个赞吧!

    最近收集梳理了一些iOS相关的问题,其中大部分都是大厂面试或者面试其他人用到的,能命中大部分的面试和日常工作,更希望你可以用它来检验自己!!

    以下内容仅凭记忆回想起,还有一些必问的东西,总结在这里,希望能帮到大家!

    数据结构与算法

    对于移动开发者来说,一般不会遇到非常难的算法,大多以数据结构为主,笔者列出一些必会的算法,当然有时间了可以去LeetCode上刷刷题

    1. 八大排序算法
    2. 栈&队列
    3. 字符串处理
    4. 链表
    5. 二叉树相关操作
    6. 深搜广搜
    7. 基本的动态规划题、贪心算法、二分查找

    推荐算法相关文章,希望对你有帮助!

    1、七种常见的数组排序算法整理(C语言版本)

    2、2019 算法面试相关(leetcode)--数组和链表

    3、2019 算法面试相关(leetcode)--字符串

    4、2019 算法面试相关(leetcode)--栈和队列

    5、2019 算法面试相关(leetcode)--优先队列

    6、2019 算法面试相关(leetcode)--哈希表

    7、2019 算法面试相关(leetcode)--树、二叉树、二叉搜索树

    作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:761407670 进群密码000,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

    另附上一份各好友收集的大厂面试题,进群可自行下载!

    Block

    1. block的内部实现,结构体是什么样的

    2. block是类吗,有哪些类型

    3. 一个int变量被 __block 修饰与否的区别?block的变量截获

    4. block在修改NSMutableArray,需不需要添加__block

    5. 怎么进行内存管理的

    6. block可以用strong修饰吗

    7. 解决循环引用时为什么要用__strong、__weak修饰

    8. block发生copy时机

    9. Block访问对象类型的auto变量时,在ARC和MRC下有什么区别

    推荐Block相关面试文章

    2019 iOS面试题-----Block原理、Block变量截获、Block的三种形式

    runtime相关问题

    runtime是iOS开发最核心的知识了,如果下面的问题都解决了,那么对runtime的理解已经很深了。runtime已经开源了,这有一份别人调试好可运行的源码objc-runtime,也可以去官网找objc4

    多线程

    主要以GCD为主

    1. iOS开发中有多少类型的线程?分别对比

    2. GCD有哪些队列,默认提供哪些队列

    3. GCD有哪些方法api

    4. GCD主线程 & 主队列的关系

    5. 如何实现同步,有多少方式就说多少

    6. dispatch_once实现原理

    7. 什么情况下会死锁

    8. 有哪些类型的线程锁,分别介绍下作用和使用场景

    9. NSOperationQueue中的maxConcurrentOperationCount默认值

    10. NSTimer、CADisplayLink、dispatch_source_t 的优劣

    推荐多线程相关面试文章,希望对你有帮助!!

    1、2019 iOS面试题-----进程、线程、多进程、多线程、任务、队列、NSThread、GCD、NSOprationQueue...

    2、2019 iOS面试题-----多线程相关之GCD、死锁、dispatch_barrier_async、dispatch_group_async、Dispatch Semaphore

    3、2019 iOS面试题-----多线程相关之NSOperation、NSOperationQueue、NSThread+runloop实现常驻线程、加锁

    架构设计

    1. 手动埋点、自动化埋点、可视化埋点

    2. MVC、MVP、MVVM设计模式

    3. 常见的设计模式

    4. 单例的弊端

    5. 常见的路由方案,以及优缺点对比

    6. 如果保证项目的稳定性

    7. 设计一个图片缓存框架(LRU)

    8. 如何设计一个git diff

    9. 设计一个线程池?画出你的架构图

    10. 你的app架构是什么,有什么优缺点、为什么这么做、怎么改进

    内存管理

    1.weak的实现原理?SideTable的结构是什么样的

    2.关联对象的应用?系统如何实现关联对象的

    3.关联对象的如何进行内存管理的?关联对象如何实现weak属性

    4.Autoreleasepool的原理?所使用的的数据结构是什么

    5.ARC的实现原理?ARC下对retain & release做了哪些优化

    6.ARC下哪些情况会造成内存泄漏

    视图&图像相关

    1. AutoLayout的原理,性能如何

    2. UIView & CALayer的区别

    3. 事件响应链

    4. drawrect & layoutsubviews调用时机

    5. UI的刷新原理

    6. 隐式动画 & 显示动画区别

    7. 什么是离屏渲染

    8. imageName & imageWithContentsOfFile区别

    9. 多个相同的图片,会重复加载吗

    10. 图片是什么时候解码的,如何优化

    11. 图片渲染怎么优化

    12. 如果GPU的刷新率超过了iOS屏幕60Hz刷新率是什么现象,怎么解决

    系统基础知识

    1. 进程和线程的区别

    2. HTTPS的握手过程

    3. 什么是中间人攻击?怎么预防

    4. TCP的握手过程?为什么进行三次握手,四次挥手

    5. 堆和栈区的区别?谁的占用内存空间大

    6. 加密算法:对称加密算法和非对称加密算法区别

    7. 常见的对称加密和非对称加密算法有哪些

    8. MD5、Sha1、Sha256区别

    9. charles抓包过程?不使用charles4G网络如何抓包

    总结
    这些都是作者收集的加上自身面试的一些经验总结,后期会持续收集补充,欢迎圈内的高手在评论区或者公众号贴上你的答案或者高质量问题

    更多文章请看:

    1.直击2020——iOS 面试题大全(补充完整版)

    2.“新”携程,阿里,腾讯iOS面试常见问题合集(附答案)

    3.我是如何同时拿到阿里和腾讯offer的

    4.腾讯&阿里&美团&快手&字节等10公司面经

    5.腾讯社招iOS面试记录

    6.最新阿里腾讯头条美团等iOS面试总结

    7.让 BAT 的 Offer 不再难拿

    作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:761407670 进群密码000,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

    相关文章

      网友评论

        本文标题:今年行情这么差,iOS开发到底如何进大厂?

        本文链接:https://www.haomeiwen.com/subject/txlfwhtx.html