• 2020年4到6月—7家公司面试总结(3家已拿offer)


    2020年 对于所有人 相信都是个难忘的一年...

     

    笔者也没有逃过在这一年出去找工作的命运 先说一下自身的条件 (主攻iOS(OC和swift)方向,辅助java后台开发 js前端开发)

    1、普通的本科
    2、工作4年多
    3、工作经历 只有一家大厂经历

    上面就是笔者的基本情况 下面直接说一下面试结果吧 (笔者从4月中旬开始到6月中旬结束) 历时大概两个月的时间吧

    1、百度 -- 已拿到offer

    2、字节跳动 -- 一面个人感觉还好 只是不知道为啥面试官不让过 搞不懂(估计笔者还是太菜 哈哈)

    3、b站 -- 一面已过 个人原因 不继续面试了

    4、哈啰 -- 已拿到offer

    5、七猫 -- 已拿到offer

    6、喜马拉雅 -- 一面没过

    7、携程 -- 二面没过 因为没有做过SDK(估计只是个搪塞的理由)

    8、3-4个小公司 就不说名字了 主要是找一下面试的感觉 一个没拿到 原因:个人感觉 他们也在一个全能的人 本人不是这总人

    上面就是笔者这两个月的面试结果情况 发现自身还是有很多的不足 对某些技术栈理解还是不到位 以后还是要继续的学习 希望看到这边文章的小伙伴还是要从中能吸取一些经验 有助于各位小伙伴快速的找到自己理解的工作 对于笔者的这两个月的状态大概是就八个字可以概括吧:焦虑 反思 总结 学习 在面试过程当中笔者也是有段时间很焦虑 睡不着 吃不下去饭(不是夸张哈)但是笔者相信 只要小伙伴们坚持不懈 就一定是能找到属于你自己的那片天空的 好了下面我说一下关于iOS这块大概是问哪些东西吧

    网络模块:

    1. http 的发展历史 以及https的相对于http的加密过程
    2. 分别说一下tcp 和 udp 以及他们的区别和联系(网络文章不可信哦)
    3. http的超时默认从什么位置开始计算
    4. http使用udp还是tcp链接以及每次发送一个http请求 就一定建立tcp链接吗 为什么
    5. tcp三次握手链接 四次断开链接 问:tcp存在四次握手链接吗 以及tcp存在三次握手断开链接吗(笔者说一下答案哈:是都存在的)
    6. 问为啥是出现四次握手(个人感觉和第5题一样)
    7. tcp建立了几个通道 ,分别是什么 发送端和接收端是同一个通道吗

    算法模块(个人感觉直接刷题leetode就行了):

    1. 如何判断一个链表是否是双向列表

    2. 搜索旋转树相关的问题

    3. 数组的排序问题

    4 . 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。

    5 . 给你一个二叉树,请你返回其按层序遍历得到的节点值

    6 . 给定一个二叉树,找出其最大深度。

    7 . 两个栈 实现一个队列

    时间长有点忘记了 这块个人说一下 直接刷题就好了 ios这块的难度一般都在:简单 中等 目前还没有遇到过hard难度的

    iOS模块(主要是OC):

    1. atomic 和 nonatomic的区别 atomic一定是安全的吗 为什么 举个场景

    2. category可以添加成员变量吗 为什么? 如果对应的结构体有这个ivarList的数组 可以添加成员变量吗 为什么

    3. iOS的系统通知怎么实现的 接受线程和发送线程一定在同一个线程吗 为什么 举个例子

    4. GCD NSThread NSOPeration 使用的场景和区别 以及NSoperation的几种状态分别是什么

    5. block的实现原理(这块问了很多 只要了解很透彻的话 这块不是问题)

    6. iOS的内存管理方式是什么 ARC和MRC有区别吗 为什么

    7. weak、strong 他们分别的实现原理

    8. 手写一个单利(采用宏定义),以及为什么采用【super alloc] init】

    9. 对象的创见为什么要init 不要init可以吗 为什么

    10. 一个NSobject 对象本身占用多少个字节(如何计算的) 以及苹果为什么给对象都是16字节的倍数? 什么叫空间换时间

    11. NSAutoRealesepool 的实现原理 以及何时给对象发送relese消息

    12. app的性能优化--启动优化说一下

    13. NSRuntime NSRunloop 联系 平时怎么使用 比如如何监听卡顿 和 如何让线程常驻

    14. image的加载做成 以及如何优化

    15. 动态库和静态库区别和联系 平时怎么使用的 现在使用动态库的目的是什么 (动态库会增加启动时间) 再说一下这种库加载过程以及如何优化

    16. 详细说一下事件的传递和响应过程 (注意:手势的有优先级问题还有同时如何阻断事件传递)

    17. 什么叫离屏渲染(要说的越详细越好)

    18. kvo的实现原理 以及如何手动触发kvo

    19. 说一下以往项目中 最有成就感的项目 并详细介绍使用到的技术点,以及如何攻破技术难点的

    20. 说一下写时复制

    21. swift的面向协议的理解

    22. swift中的可变数组 为啥用var来修饰

    23. 说一下 无痕埋点以及如何实现

    最后总结:

    以上是目前两个月的全部的面试总结 答案这块 我就不细说了 毕竟有的题目笔者也是拿不准 如果有不明白的 可以私信笔者 咱们一起探讨 大家一起努力

    最后再说一下 其实笔者在面试期间 心里的压力也是很大 经常失眠 毕竟现在出来找工作 我相信大家也是被逼无奈 不过我想只要大家好好努力 时光定不负你

    资料推荐

    如果你正在跳槽或者正准备跳槽不妨动动小手,添加一下咱们的交流群1012951431来获取一份详细的大厂面试资料为你的跳槽多添一份保障。

     
     
     
  • 相关阅读:
    monkey测试===Monkey测试结果分析(系列三)转
    monkey测试===Monkey测试策略(系列二)转
    Java数据结构——二叉树
    Java排序算法——快速排序
    Java排序算法——归并排序
    Java递归算法——汉诺塔问题
    Java递归算法——二分查找
    Java递归算法——变位字
    Java递归算法——阶乘
    Java递归算法——三角数字
  • 原文地址:https://www.cnblogs.com/Julday/p/13415118.html
Copyright © 2020-2023  润新知