当前位置: 首页 > news >正文

从准备面试八股文,感悟到技术的本质

工作前几年听说过,大学最重要的几门课其实是数据结构和算法、操作系统、计算机组成原理、计算机网络。

初听时不以为然,感觉没什么用。

近期准备面试八股文得到了一些感悟。这句话随着工作年限和对程序的理解越来越深入,含金量越来越高。

最近面试问的都是技术底层原理和实际使用注意事项。对于技术底层原理,考察的是你使用某一项技术的时候是否会去考虑底层的实现原理。对于实际使用,就是考察你是否真的用过,用的是否合理。

针对于上面提到的两个考察方面要怎么提升呢?

这个也可以拆解成两种努力方向:

第一个是短期内快速提升,就是针对于具体的技术点,去网上找大量的资料,熟悉实际使用经验和底层原理。

第二个方向是长期方向,找到工作以后,每使用一个技术,多思考为啥要这么用?有没有更好的使用方式?底层是怎么实现的?

那么回到开头,为啥那4个科目是最重要的呢?

我们程序员其实就是理解业务需求,进行分析和设计,和其他同事配合,把业务需求用程序软件实现。

最后的成果就是程序和设计文档。

那么程序就是代码,代码包括数据结构和算法。设计就是抽象业务流程,选择合适的数据结构和算法。当然除了专门做算法开发和中间件开发的程序员会自己去用数据结构和算法实现一个需求。但是业务开发程序员的话就是利用一些封装好的框架和工具实现需求,当然框架和工具底层也是算法和数据结构,我们需要去了解。不然永远都是一个只会使用API的码农。

现在程序有了,那程序是怎么运行的呢,这个就需要我们理解操作系统和计算机组成原理。

上面的都搞懂以后,那么在单台计算机上面你已经天下无敌了。那有些需求一台计算机不能满足怎么办,这个时候需要多台计算机配合实现,那么多台计算机之间怎么通信呢?所以就要用到计算机网络了

那么具体对应到面试准备是怎样的一个关系呢?

八股文=考察的是常用技术栈的使用和底层原理

场景题=考察的是你对于一些技术、数据结构和算法、其他技术的底层实现思路能不能灵活应用

算法=纯粹考你的基本逻辑能力,不过一般的公司都不考这个

举个形象的例子

线程池在JAVA面试中常问的有以下的一些问题?

有哪些参数?

考察实际使用

一个任务提交以后运行流程是怎样的?

考察技术底层设计思路

实际工作中各个参数你们怎么配置的?

考察实际使用经验,这个和具体业务相关,以工作队列为例,用无界队列可能会导致OOM,有界队列的话有2种,要怎么选择呢,这个得看底层实现和数据结构。看看哪种运行效率更好,吞吐量更高

线程池底层实现原理、源码?

这个就考的更深入了,需要花大量时间去研究,所以还是的平常多去看,多去学,不要觉得看了好像对当前的工作没用就不看了,面试就是考察这些基本功。

要你自己实现一个线程池,你怎么实现?

这种就是场景题了

http://www.lryc.cn/news/447152.html

相关文章:

  • 云手机的默认ip地址是什么
  • 对接阿里asr和Azure asr
  • 未来数字世界相关技术、应用:AR/VR/MR;数字人、元宇宙、全息显示
  • 在 Java 中提供接口方法而不是实现接口
  • 伪类选择器
  • 亚信安全天穹5分钟勒索体检 免费试用今起上线
  • 高校竞赛管理系统的设计与实现
  • 物联网行业中通信断线重连现象介绍以及如何实现
  • 新手上路:Anaconda虚拟环境创建和配置以使用PyTorch和DGL
  • centos7系统安装宝塔面板
  • 汽车总线之----J1939总线
  • 基于skopt的贝叶斯优化基础实例学习实践
  • OJ在线评测系统 后端 用策略模式优化判题机架构
  • element ui 精确控制日期控件 date-picker
  • centos7安装指定版本php及扩展
  • 后端-对表格数据进行添加、删除和修改
  • 【学习笔记】手写 Tomcat 七
  • QT开发:详解 Qt 多线程编程核心类 QThread:基本概念与使用方法
  • 【芋道源码】gitee很火的开源项目pig——后台管理快速开发框架使用笔记(微服务版之本地开发环境篇)
  • 设计模式、系统设计 record part01
  • 服务器与普通电脑的区别是什么?
  • Vue3学习(六)Vue3 + ts几种写法
  • 【前端】ES6:Proxy代理和Reflect对象
  • 基于微信开发助手企鹅音乐微信小程序的设计与实现(源码+文档+讲解)
  • 学习Spring Boot,应该从哪里开始学起
  • 【JavaEE初阶】深入解析死锁的产生和避免以及内存不可见问题
  • 企微群管理软件:构建高效社群运营的新引擎
  • CORE 中间件、wwwroot
  • SpringBoot 与 Maven 快速上手指南
  • 大觅网之自动化部署(Automated Deployment of Da Mi Network)