C++ - 学习要求/路径
C/C++开发
重要四部分:数据结构与算法 、计算机网络、操作系统、设计模式
数据结构:重点(字符串、二叉树、链表、堆、栈、队列、哈希;基本算法思路 解题思路:查找、排序、动态规划);推荐书籍《大话数据结构》、《算法》 、《剑指offer》
计算机网络:tcp/ip协议栈、原理、具体协议、arp、ip、icmp、tcp、udp、dns、http、HTTPS;推荐书籍《tcp/ip详解》
操作系统:进程和线程、并发和多线程、原子性、并发、锁、内存 内存分布 内存调度算法;推荐书籍《深入理解操作系统》
设计模式:23种;常见的几个:单例、工厂、代理、策略模式、模板方法 这几个要熟练;推荐书籍《大话设计模式》
C语言重点:指针和内存管理;推荐书籍:《C primer plus》、《C和指针》、《C专家编程》
C++添加:面向对象、泛型、模板、STL库、
语言学习不要拖太久
linux操作系统的学习:必须会使用linux操作系统、常见的一些的linux操作系统指令、基本的shell编程要熟悉、推荐书籍:《鸟哥的linux私房菜》、《linux就该这么学》
掌握linux平台上的一些编译器:GCC、makefile要自己会写规则掌握
调试:gdb调试工具、gnu官方关于gcc和gdb官方文档、《debugging with gdb》中文版、《跟我一起写makefile》
linux的环境编程:linux平台上的编程、各种API的使用、多线程编程实践这一块,不是理论 线程 资源 信号 互斥 锁 等一些具体问题的编程实践(主要就是服务端开发、后台开发)
网络编程:具体linux操作系统上的一些网络编程的API,还包括一些IO简书的一些具体的代码编程;推荐书籍:《Unix环境高级编程》必看、《Linux高性能服务器编程》、多线程《POSIX多线程程序设计》
C++看书顺序由浅到深
- Essential C++ (由c过度到c++)
- C++ Primer第四版 (内容很全,但是不深)
- Effeetive C++
- More Effeetive C++
- C++ 标准程序库
- 深入探索C++对象模型
JAVA SE内容
- 环境搭建、基础语法、面向对象、数组、集合、常用API、I0流、反射机制、多线程、网络编程
- 学习要求
利用这些基础知识,写出一个soket聊天室和打字游戏出来 - 基础不牢地动山摇
数据库
MySQL
学习要求
-定要自己多练SQL,特别是select
前端
三大核心技术HTML、CSS、JavaScript 学两个框架(JQuery和Bootstrap)
学习要求
手写出一个静态页面(模仿一个页面)
后端
-
XML、MVC架构模式、Servlet、 Filter. JSP、EL、JSTL、AJAX、 代理模式、工厂模式、数据库连接池
-
学习要求(旨在转变你的mvc思想)
-
深刻理解MVC架构模式
-
练一个MVC模式的项目(servlet+Ajax+MySQL+jQuery+JDBC)
如: oa管理系统,超市订单管理系统,采购订单管理系统
-
-
练得越多后面学框架就越轻松
项目管理
- Maven、Git
这两个技术没啥要求,自己操作熟练就行
框架
Spring、SpringMVC、MyBatis必学框架(SSM)
Struts2、Hibernate过一下就行
学习要求
- 自己搭建一个框架环境(做好备份,入职100%有用)
- 升级一下自己之前练习的MVC架构模式的项目(换完能运行)比如:把Servlet换成springMVC;把JDBC换成MyBatis;加入Spring去解耦MVC
- 练习2个项目 比如: ssm客户关系管理系统之类的项目;
市场需求
- 学习springboot,并用springboot练习2个以上项目
- 注意:学习springboot吃力,就回去再学一遍spring
- 学到这一步可以面试了
加根火腿
Dubbo、ZooKeeper、 SpringCloud、MQ、Nginx、Redis、Liunx、vue、多线程、设计模式、JM优化、算法。