基础知识回顾系列
写本系列的主要原因是最近换了一份工作,在面试过程中,发现自己的基础很差,很多应该知道的知识点却说不清楚,只是知道,没有深入了解,如今工作已经稳定,下一步计划就是把基础知识用心系统学习。
所谓的基础知识其实就是
- 抽象类与接口的区别。
- 值类型与引用类型的区别。
- 枚举与常量。
- 类与结构。
- 面向对象的特点及为什么要用面向对象。
- Http对象的接口有哪些,经常用的举个实例。
- Session、Cookie、Application、ViewState和Cache
- Page页面的生命周期
上面的问题只是知道,但没有深入了解,等面试官深入问的时候就不知所以然了,其实上的问题不是不知道,在学习C#时,就学习了,只是当时水平有限,不能理解为什么这样写,这样写有什么好处,在初学者眼里只是多余的代码,还是写简单的好,如今几年过去了,是时候深入了解一下了,不为别的,就为写出优质的代码,容易理解、容易维护(针对这些基础,每个人的认识不同,结果就不同,我所写的只是个人看法,如有偏差,只为个人见解)。
我当时学习时,对这些问题总是逃避,我做项目又不用,为什么要学习这个呢,而且写的代码还差不多,知道一种就可以了,没必要分这么清楚,这些其实都是接口,根本原因是 理解不了这些知识,更重要的是不知道这些知识点能用到哪里,如今有几年的经历,再来看基础知识才发现,其实这些知识又变的重要了,因为在做项目时,会用到各种类型的框架,在学习源代码时,就发现源代码的设计与基础知识密切相关,没有这些基础知识,在看源代码的时候,跳来跳去就迷了。
对于这些不容易理解和运用的知识点,当自己认为是时候学习的时候,再深入学习是最好的,单纯的学习,忘的也很快,也理解不了精髓,只有自己的水平达到一定程序才能真正的知道,这些知识点的重要性(至少我是这样经历的,不同的人有不同的经历过程)。
我会把面试过程中,遇到到问题都写出来,一方面为了学习,另一方面给正在找工作的兄弟一些参考。