是家独角兽, 看了以往的面筋感觉很难. 我面了三场, 这是最难但感觉面试官水平最高的一场.
正文
语言和计算机基础:
- Java与go语言的区别: 我答了解释/编译 语法
- 你觉得golang是面向对象还是面向过程: 我答都有, 提了下C语言的语法, Golang的接口
- Java的多线程模型: 没学...
- Golang协程了解吗, 协程线程的区别: 感觉像轻量级线程, 答的不好
- 内核级线程和用户级线程: 提了一嘴linux的线程实现, 不太会
- 线程的创建和销毁的过程: 说了进程的fork啥的, 线程咋整
- 内核级线程的线程生命周期: 完全不会
- 锁的诞生解决什么问题: 答并发问题, 说了一下mysql CPU缓存的一致性问题 MESI
- 乐观锁和悲观锁: 没背, 随便说的
- 数据结构的堆和栈的区别: 最近在看JVM, 脑子抽了说到JVM堆栈了, 面试官说跳过
- MySQL和Redis都存数据, 有啥区别
- Redis为啥快: 内存 多路复用
- 熟悉的设计模式: 忘了, 说了工厂 单例
- 简单工厂和抽象工厂的区别: 太久没看, 瞎说的
寄网:
- TCP UDP区别: 开始吟唱
- HTTP使用的TCP还是UDP
- 有没有HTTP是用UDP实现的: 我猜3.0
RESTful, 这问了很多是没想到的:
- RESTful风格的理解: 资源 操作, 提了一嘴路由的设计
- HTTP请求模式: 5个
- GET POST等在API设计中承担的作用: 说了增删改查
- 用RESTful风格设计一个user接口应该怎么设计: 我答了url应该用user, 用方法区分
项目:
- 青训营干了啥: 被带飞
- curd项目: 主要是干啥
- 手动或定时持久化, XXL job有啥了解: 简单说了下, 就会用
手撕:
- 屏幕共享本地IDEA: 反转n个一组链表, 没写出来
- 我尴尬的跟他说写不出来. 他说反转会写吧我说会. 他又说, 从后面开始n个n个的反转怎么做 说思路. 我一下没反应过来, 他说可以复用前面的, 前整体反转再反转前n个
#软件开发2023笔面经#