最后
关于面试刷题也是有方法可言的,建议最好是按照专题来进行,然后由基础到高级,由浅入深来,效果会更好。当然,这些内容我也全部整理在一份pdf文档内,分成了以下几大专题:
- Java基础部分
- 算法与编程
- 数据库部分
- 流行的框架与新技术(Spring+SpringCloud+SpringCloudAlibaba)
这份面试文档当然不止这些内容,实际上像JVM、设计模式、ZK、MQ、数据结构等其他部分的面试内容均有涉及,因为文章篇幅,就不全部在这里阐述了。
作为一名程序员,阶段性的学习是必不可少的,而且需要保持一定的持续性,这次在这个阶段内,我对一些重点的知识点进行了系统的复习,一方面巩固了自己的基础,另一方面也提升了自己的知识广度和深度。
(1)使用虚拟(virtual)DOM,不总是直接操作页面真实DOM
(2)DOM Diffing算法,最小化页面重绘
react.js:React核心库
react-dom.js:提供操作DOM的react扩展库
babel.min.js:解析JSX语法代码转为JS代码的库。
1、本质是Object类型的对象(一般的对象)
2、虚拟DOM比较“轻”,真实DOM比较“重”,因为虚拟DOM是React内部在用,无需真实DOM那么多属性。
3、虚拟DOM最终会被React转化为真实DOM,呈现在页面上
1、定义虚拟DOM时,不要写引号。
2、标签中混入JS表达式时要用{}。
3、样式的类名指定不要用class,要用className
4、内联样式,要用style ={{key:value}}形式书写
5、只有一个根标签
6、标签必须闭合。
7、标签首字母
(1)若小写字母开头,则将该标签转为html总同名元素,若html无该标签对应的同名元素,则报错
(2)若大写字母开头,react就去渲染对应的组件,若组件没有定义,则报错。
模块
(1)理解:向外提供特定功能的js程序,一般就是一个js文件
(2)为什么要拆成模块:随着业务逻辑增加,代码越来越多且复杂
(3)作用:服用js,简化js的编写,提高js运行效率
组件
(1)理解:用来实现局部功能效果的代码和资源的集合(html/css.js/image等等)
(2)为什么:一个界面的功能更复杂
(3)作用:复用编码,简化项目编码,提高运行效率
模块化
当应用的就是都以模块来编写id,这个应用就是一个模块化的应用
组件化
当应用是以多组件的方式,这个应用就是一个组件化的应用
最后
分享一些资料给大家,我觉得这些都是很有用的东西,大家也可以跟着来学习,查漏补缺。
《Java高级面试》
《Java高级架构知识》
《算法知识》
题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**