无题

找工作时的四个知识块:c/c++、系统网络编程、数据库和qt。

  • c/c++的知识点浓缩在面试题库中了,可以好好看看。(找工作前老师会对C/C++做次梳理总结,缕清主要知识点。对照题库,加深理解。)
  • 系统网络编程主要是socket编程和进线程中通信,而基本套路在聊天室项目中有很好的体现。
  • 数据库当时一笔带过,懂得基本的sql语句即可。
  • qt,知道MVC,写得出扫雷,觉得也可以了。

大体概括一下,主要的基本知识点在平时的项目中有很好体现,面试题库也会帮你好好总结。

以上是基本知识点,下面是进阶。

  • C/C++主要知识点掌握后,推荐看看zyz老师推荐的《大话设计模式》,在看完此书的基础上,再回头看自己的C++项目,相信会有不一样的理解。(特别是里面的单例模式和适配器模式,笔试题常出现)。
    如果还有余力的话,建议数据结构和算法导论可以看一些,这些才是一个程序员的根本。(平时也涉及到了一些数据结构和算法,但不系统,看看数据结构做个梳理总结。)
    数据结构和算法,真的很重要。
  • socket编程在掌握了TCP连接和UDP连接这两个基本套路后,建议看看tinyhttp,实现简单的http服务器。不要心急,虽然只有几百行代码,但看完理解,最少2天。有关ftp服务器,也可以了解下。
    关于socket再进一步的进阶,就是select等IO复用了,可以试着了解了解epoll线程池等。
    进线程间的通信,将几个问题(读者-写者问题哲学家问题生产者-消费者问题等)弄懂,应该会有你自己对IPC的理解。
  • MySQL数据库的进阶,在对MySQL有一个基本而全面的了解,比如事务处理、游标、索引、存储过程、触发器等概念。推荐《MySQL必知必会》这本书,zyz老师和王天鹏老师那都有,可以去拷来看。如果只是纯粹应付面试,一个下午加一个晚上就够了。如果想有个较深入的理解,建议最好边找工作边按书操作。
  • qt我是没辙,因为找的是后端,所以对qt这一块没做深入了解。

以上进阶,最好能扒到源码,自己运行理解一遍。提供tinyhttp和simple epoll源码的下载地址以及对http服务器的理解。

工作中,系统网络编程和数据库这2块真的很重要。虽然socket连接都已封装好,但没理解的话很容易传参错误。线程池也一样。
数据库这块一通百通。也许你应聘的公司用的不是MySQL,但SQL语句大体相同,可以很快入门使用的。
暂时就这些,以后再慢慢补充。

你可能感兴趣的:(无题)