Node 面试
面试造火箭,工作拧螺丝
下面是一部分造火箭的步骤,工作上帮助不大。 是否有用自行思考。
常见的数据库查询索引原理介绍。 索引与存储引擎相关。 看看MySql数据库索引原理。
后端开发面试题 Back-End-Developer-Interview-Questions 包含了面试中的常见问题,先做个小抄吧. 一个不完全的回答
通用问题
语言设计中空引用(null reference)的存在有什么问题?假设你想要将空引用的概念从你的首选语言中移除,可能导致什么结果?
在 C, Java, go, Js 中使用 空引用 对应会出现 断错误, nullpointer Exception, panic, undefined. 出现这些错误时如果没有对异常处理程序会终止工作。 在不同语言中移除的后果
- Js, 在数据初始化时必须制定数据,缺少灵活性。与其他语言对接时会缺少对应的语义。 例如 web 不传参数可以用 null 表示。
封装的重要性体现在哪儿?
通过封装可以屏蔽内部实现细节, 让业务开发逻辑清晰。 通用功能封装为模块可以反复使用。 一个成功的语言必然有对应成功的包管理器, 通过包管理引用封装好的模块即减少工作量又更稳定。不变性(Immutability)是指: (变量的)值只能在创建的时候被设置一次,之后就不能被改变。为什么不变性对写更加安全的代码有帮助
不同语言对不变的变量都有对应的关键字。 不变性可解决并发时的读写冲突问题。在客户端渲染(client-side rendering)和服务端渲染(server-side rendering)之间,你是如何权衡的?
web 由原来的 jsp 发展到现在的前后端分离再到 next.js 框架的诞生。 客服端渲染由浏览器实现网页的显示。 主要包含了数据的读取等。 服务端渲染是在一个网页请求后 html 就生成完毕。 客服端渲染对客户的电脑配置要求更高,体验更好。 服务端渲染对 seo 更友好。并且加载更快。但是每一次访问都需要重复加载 js/css.当你在浏览器地址栏输入google.com回车之后都发生了什么?
首先通过 dns 获取服务器 ip 地址,然后建立 tcp 连接。 在 tcp 连接上进行 http 协议通信。