1. Philosophy of Science and Management 13
[1] The psychology of computer programming: silver anniversary edition 13
[2] An Introduction to systems thinking, silver anniversary edition 14
[3] General Principles of system design 15
[4] quality software management (volume 1st)-system thinking (quality software management: Systems Thinking) 16
[5] becoming a technical leader: an organic problem-solving approach 16
[6] "is your light on? -The real location of the Problem Found "(are your lights on? How to figure out what the problem really is) 18
[7] the pragmatic programmer 20
[8] waltzing with bears: Managing Risk on Software Projects 23
[9] "The Fifth practice: the art and practice of a learning organization" (The Fifth Discipline) 24
Ii. Computer science basics 26
[10] The Art of computer programming 26
[11] computer systems a programmer's perspective 29
[12] Introduction to algorithms (Introduction to algorithms, Second Edition) 30
[13] "data structure and algorithm analysis-C language description (source book version 2nd)" (Data Structure & algorithm analysis in C, Second Edition) 31
[14] "Introduction to theory, language, and computing of automatic machines (2nd)" (Introduction to Automation Theory, languages, and computation (second edition) 32
[15] discrete mathematics and its applications, Fourth Edition 33
[16] compilers: Principles, techniques and tools 34
[17] modern operating system 35
[18] "Computer Network (4th)" (Computer Networks) 35
[19] Introduction to database systems (version 7th) (an introduction to database systems (seventh edition) 36
Iii. Software Engineering ideas 37
[20] leware: productive projects and teams, 2nd ed.) 38
[21] The personalized papers: notes on the human side of software 39
[22] The Mythical man-month 40
[23] Software Engineering: a practitioner's approach, practice edition 56
[24] Agile Software Development-principles, models and practices (Agile Software Development: Principles, patterns, and practices) 57
[25] Planning eXtreme Programming 58
[26] Introduction to RUP (version 3rd of the original book) (the Rational Unified Process: an introduction, Third Edition) 59
[27] the unified software development process 60
Iv. Software Requirement 62
[28] discovery requirements-quality before design 63
[29] writing into tive use cases 64
V. Software Design and modeling 66
[30] "Principles and Practices of object-oriented methods" 66
[31] object-oriented software construction, Second Edition 68
[32] object-oriented analysis and design with applications, 2e 69
[33] fundamentals of object-oriented design in UML 70
[34] "UML essence-Concise Guide to Standard Object Modeling Language (version 2nd)" (UML Distilled: a brief guide to the standard Object Modeling Language (2nd edition) 71
[35] applying UML and patterns: An Introduction to object-oriented analysis and design and the Unified Process, Second Edition 72
[36] Design Patterns explained 74
[37] design patterns: Elements of reusable object-oriented software 75
[38] pattern-Oriented Software Architecture Volume 1: Pattern-oriented software architecture, Volume 1: a system of patterns 76
【39 】 bringdesign to software 77
Vi. Programming 79
[40] programming pearls Second Edition 80
[41] "C programming language (version 2nd · New Version)" (The C programming language) 81
[42] The C ++ programming language (Special Edition) 82
[43] "C ++ primer (3rd)" 83
[44] the design and evolution of c ++ 84
[45] "C ++ programming ideology (2nd)" (thinking in C ++ Second Edition) 85
[46] "effective C ++" & "more effective C ++" 86
[47] The Art of C ++ 88
[48] "Java programming ideology: 3rd" (thinking in Java, Third Edition) 89
[49] "valid Java" 90
VII. Software Testing 91
[50] Test-driven development: by example 91
[51] testing object-oriented system: models, patterns, and tools 92
[52] unit test Java version-use JUnit/unit test C # version-use nunit (Pragmatic unit testing: in Java with JUnit/pragmatic unit testing: in C # With nunit) 93
8. software maintenance and reconstruction 95
[53] refactoring: improving the design of existing Code 96
IX. Configuration Management and version control 97
[54] "The path to Version Control-use CVS" (programmer practices the first part of the trilogy: pragmatic version control using CVS) 97
10. Field topics (related to networks, platforms, and databases) 99
[55] "TCP/IP explanation" (TCP/IP multicast stracted) 99
[56] UNIX Network Programming 100
[57] advanced programming in the Unix environment 102
[58] The Art of Unix programming 103
[59] "Data Access Mode-database interaction in Object-Oriented Applications" 103