很久没写东西了,近一个多月天天都在外面跑,宣讲会笔试面试等等,成天累的跟狗同样,不过收获仍是颇多的。java
历程:从九月下旬到如今,找工做前我其实根本就没复习过,只看过数据结构中简单的一些东西,写在个人数据结构那一类里面,都是很浅显的东西。传说中的面试必读之奇书《程序面试宝典》我压根就没看过,因而形成了我后面一系列的悲剧,因此找工做前仍是有必要复习下基础的的知识,作软件开发要看的知识:C/C++或者java基础知识,网络,操做系统等,其中多线程和网络编程问的不少,基本上IT和互联网的公司中作软件的没有哪个不用多线程和网络编程吧,惋惜我这二者都不熟悉,仍是在后来抽空恶补了一下,勉强知道个概念。刚开始C++的不少东西也不懂,毕竟我搞应用的,平时关注的多的是怎么用,至于说原理是怎么回事,那就不太清楚了。举个例子虽然用了大半年qt,可是别人问我信号与槽的机制原理时我就是答不出来的(不过如今了解大概了,吃一堑长一智嘛),不少知识都是笔试或面试中遇到本身不熟悉的回来再看书或网上查资料解决的,9月初我还不是很清楚static,const等关键字是怎么回事,以及C++中继承与多态,如今我基本上能说出个大概了。软件如今封装的愈来愈凶,底层原理性的东西都实现好了,咱们都是把接口拿来用就能够了,因此不多关注底层原理,而公司的一些技术官却很关注这些东西,喜欢拿这些考求职者,我也作过网络编程,你说我怎么作的,用qt里面封装的TCP或UDP类库,每当我这样说时(其实我就是用的封装好了的库,我也知道搞网络编程有本奇书叫《UNIX网络编程》,不过我没关注,没有时间关注底层啊),人家每每投来不屑的眼光而后就再也不问了(这意思估计就是库谁不会用,你能实现它才证实你牛逼),好吧,只能说他们牛逼了,谁叫我水呢。之后作项目时得多注意了,知其然,之气因此然。linux
做为一个码农,本身仍是太年轻了,懂的太少了,被鄙视的跟狗同样也在所不免,技术面都过不了,虽然面了近20 家公司(我是海投党,今年形势很差,投简历(含笔试)与面试比例大概5:1的样子,很悲催是吧),但公司的技术面没有一个经过的(真心的,求别黑)。还好最后有公司收留,我也就从了。面试
历经一个多月,虽然累但仍是学到了不少东西,也让我知道了本身的缺点和短板,在这过程当中,我不断完善提升本身,扬长补短,不过有些东西不是短期能提升的,但有些东西是能够避免在犯错的,因此必定要好好总结经验教训。所谓失败是成功之母,好吧,虽然N屡次的失败换来一次成功,不过最后能成功也值啊,不是吗,嘿嘿算法
写一下容易考到的问题(针对C++开发):数据库
编程语言类(C/C++):static,const的用法和做用;指针(这学问大了,各类考法);结构体和类的区别;public,private和protected各自的用法和区别;拷贝构造函数;赋值函数;运算符重载;构造函数和析构函数问题(常见于看代码写输出的题中);继承虚函数(这里面知识就多了,尽可能掌握全面,以不变应万变)编程
QT/MFC类:问的不多,如今不多有作客户端软件的,即便是作客户端软件的,最关注的仍是C++基础知识和网络编程及多线程。要问的话比较多的是各自的核心机制api
网络:OSI七层模型和TCP/IP模型;各层有哪些哪些协议;分组,路由,交换等概念;具体的协议内容(这就要具体学习了,没有相关经验的话就跪了)网络
操做系统:进程死锁;进程和线程区别;内存管理数据结构
多线程:这个很喜欢问,好比多线程的api,线程同步有哪些方法,线程间的通讯等多线程
数据结构算法:最基本的就是链表,排序,查找;而后是二叉树,图还有各类算法,互联网公司尤为喜欢算法
以上几乎是必考的,有时会问下stl的东西,其余的好比数据库,linux甚至更高级的软件技能看职位状况。总之掌握的知识越多越好,越深越好。