Knowledge classification:
Basic knowledge:
1) Architecture Design
Design Mode
In-depth introduction to design patterns
UML Design
Elephant-thinking in UML
STL and generic programming
STL source code analysis
2) Bottom Layer
Compile, load, and link
Programmer self-cultivation-linking, loading and Library
Linux Device Driver
Linux Device Driver
Linux principles
Linux kernel design and implementation
Shell programming
Shell script Learning Guide
3) System
Database
Database System Concepts
Process, thread, socket programming
UNIX Network Programming
Script Language (phthon, Perl)
Python UNIX and Linux System Management Guide
Introduction to Perl
Write makefile with me
GNU make project management
4) Applications
Java programming
Head first Java
5) Algorithm
Data Structure
Data structure (c)
Software Methodology
Software Engineering
Software Engineering
Reconstruction
Reconstruction
Agile Development
Agile Software Development-principles, models and practices