朴人的码农书

书是人类智慧的结晶,好的书就像良师益友,读经典书就如同聆听大师谈话,站在巨人的肩膀上思考,汲取营养;
作为计算机专业科班出身的JavaEE/Android程序员,以下是朴人已读的和计划阅读的专业书(待完善),共勉,


###programming language, paradigm:
-The C Programming Language, Brian W. Kernighan;
-Expert C Programming, Peter van der Linden;
-Pointers on C, Kenneth Reek;
-C Traps and Pitfalls, Andrew Koenig ;
-The C++ Programming Language, Bjarne Stroustrup;
-The Design and Evolution of C++, Bjarne Stroustrup;
-Programming : Principles and Practice Using C++, Bjarne Stroustrup;
-Inside The C++ Object Model, Stanley B. Lippman;
-C++ Primer, Stanley B. Lippman;
-Thinking in C++, Bruce Eckel;
-Effective C++,Scott Meyers;
-More Effective C++, Scott Meyers;
-Essential C++, Stanley B. Lippman;
-C++ Templates: The Complete Guide, David Vandevoorde;
-Accelerated C++:Practical Programming by Example, Andrew Koenig;
-C++ Gotchas: Avoiding Common Problems in Coding and Design, Stephen C. Dewhurst;
-Modern C++ Design: Generic Programming and Design Patterns Applied, Andrei Alexandrescu;
-Efficient C++: Performance Programming Techniques, Dov Bulka;
-Exceptional C++, Herb Sutter;
-More Exceptional C++, Herb Sutter;
-Exceptional C++ Style, Herb Sutter;
-Advanced C++ Programming Styles and Idioms, James O. Coplien;
-C++ Programming Style, Tom Cargill;
-C++ Coding Standards, Herb Sutter;
-C++ STL, P.J.Plauger;
-Effective STL, Scott Meyers;
-Generic Programming and The STL, Matthew H. Austern;
-C++ Concurrency in Action: Practical Multithreading, Boost, Anthony Williams;
-Thinking in Java, Bruce Eckel;
-Core Java 2, Horstmann, Cay S;
-Effective Java, Joshua Bloch;
-Java 与模式, 阎宏;
-The Java Programming Language, Arnold Ken/Gosling James/Holmes David;
-The JavaTM Virtual Machine Specification, Tim Lindholm;
-The Java Language Specification, James Gosling;
-Concurrent Programming in Java:Design Principles and Patterns, Douglas Lea;
-Inside Java Virtual Machine, Bill Venners;
-Java Network Programming, Elliotte Rusty Harold;
-Java Puzzles: Traps, Pitfalls and Corner Cases, Joshua Bloch;
-Dive into Python, Mark Pilgrim;
-Objects Unencapsulated: Java, Eiffel and C++, Ian Joyner;
-Structured Programming;Edsger W. Dijkstra;

###requirement, analysis, design, modeling, construction, architecture, testing:
-The Psychology of Computer Programming, Gerald M. Weinberg;
-An Introduction to Systems Thinking, Gerald M. Weinberg;
-General Principles of Systems Design, Gerald M. Weinberg;
-Quality Software Management: Systems Thinking, Gerald M. Weinberg;
-Systems Analysis and Design, Kenneth E. Kendall;
-Bringing Design to Software, Winograd, Terry ;
-Design Patterns:Elements of Reusable Object-Oriented software, Gamma, Erich;
-Design Patterns Explained, Alan Shalloway;
-Core J2EE Patterns: Best Practices and Design Strategies, Deepak Alur;
-Patterns of Enterprise Application Architecture, Martin Fowler;
-Pattern-Oriented Software Architecture, Frank Buschmann;
-Applying UML and Patterns:An Introduction to Object-Oriented Analysis and Design and the Unified Process,Craig Larman;
-Analysis Patterns :Reusable Object Models, Martin Fowler;
-More Process Patterns : Delivering Large-Scale Systems Using Object Technology, Scott W. Ambler;
-Refactoring to Patterns, Joshua Kerievsky;
-Refactoring: Improving the Design of Existing Code, Martin Fowler;
-Structure and Interpretation of Computer Programs, Harold Abelson;
-Object-Oriented Software Construction, Bertrand Meyer;
-Object-Oriented Analysis and Design with Applications, Grady Booch;
-面向对象的系统分析, 邵维忠;
-面向对象的系统设计, 邵维忠;
-道法自然-面向对象实践指南, 王咏武;
-Fundamentals of Object-Oriented Design in UML, Meilir Page-Jones;
-The Unified Software Development Porcess, Ivar Jacobson;
-The Unified Modeling Language User Guide, Grady Booch;
-The Unified Modeling Language Reference Manual, James Rumbaugh;
-UML Distilled: A Brief Guide to the Standard Object Modeling Language, Martin Fowler;
-Software Craftsmanship, Pete McBreen;
-Design by Contract by Example, Richard Mitchell;
-Software Architecture in Practice, Len Bass;
-The Science and Art of Software Development, Microsoft;
-The Practice of Programming, Brian W. Kernighan;
-Code Reading: The Open Source Perspective, Diomidis Spinellis;
-Working Effectively with Legacy Code, Michael Feathers;
-The Pragmatic Programmer: From Journeyman to Master, Andrew Hunt;
-Programming Pearls, Jon Bentley;
-Code Complete, Steve McConnell;
-Writing Secure Code, Michael Howard;
-Writing Clean Code, Steve maguire ;
-Clean Code, Robert C. Martin;
-Test-Driven Development: by example, Kent Beck;
-Pragmatic Unit Testing:In Java with JUnit, Andy Hunt;
-Writing Effective Use Cases, Alistair Cockburn;

###framework, middleware, platform, server:
-Embedded Android, Yaghmour, Karim;
-Pro Android, Sayed Y. Hashimi;
-JavaServerPages, Hans Bergsten;
-Java Servlet Programming, Jason Hunter;
-Enterprise JavaBeans, Richard Monson-Haefel;
-Mastering Enterprise JavaBeans, Rima Patel Sriganesh;
-Database Programming with JDBC and Java, George Reese;
-Expert One-on-One J2EE Design and Development, Rod Johnson;
-Expert One-on-One J2EE Development Without EJB, Rod Johnson;
-Expert Spring MVC and Web Flow, Seth Ladd;
-Pro Spring, Rob Harrop;
-Spring Live, Matt Raible;
-Spring in Action, Craig Walls;
-Webwork in Action, Jason Carreira;
-Struts in Action,Don Brown,Ted Husted;
-Hibernate in Action, Christian Bauer;
-myBATIS in Action;
-jQuery in Action, Bear Bibeault;
-JUnit in Action, Ted Husted;
-JavaScript: The Definition Guide, David Flanagan;
-JavaScript Design Patterns, Dustin Diaz;
-Foundations Of Ajax, Ryan Asleson;
-Ajax Design Patterns, Michael Mahemoff;
-Ajax in Action, Dave Crane;
-Mastering Regalr Expressions, Jeffrey E.F. Friedl;

###software engineering, process, method:
-Software Engineering: A Practitioner's Approach, Roger S. Pressman;
-Software Engineering : Theory and Practice, Pfleeger;
-Software Engineering, Ian Sommerville;
-Waltzing With Bears: Managing Risk on Software Projects, Tom DeMarco;
-Peopleware : Productive Projects and Teams, Tom DeMarco;
-The Mythical Man-Month, Frederick Phillips Brooks;
-Introduction to the Personal Software Process, Watts S. Humphrey;
-Introduction to the Team Software Process, Watts S. Humphrey;
-Rapid Development, Steve McConnell;
-The Rational Unified Process:An Introduction, Philippe Kruchten;
-The Unified Software Development Process, Ivar Jacobson;
-Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin;
-Continuous Integration:Improving Software Quality and Reducing Risk, Paul M. Duvall;
-Lean Software Development: An Agile Toolkit, James O. Coplien;
-Agile Software Development: The Cooperative Game, Alistair Cockburn;
-User Stories Applied: For Agile Software Development, Mike Cohn;
-Extreme Programming Explained:Embrace Change, Kent Beck;
-Practices of An Agile Developer:Working in the Real World, Venkat Subramaniam;
-Adaptive Software Development:a collaborative approach to managing complex systems, Highsmith;
-Domain-Driven Design:Tacking Complexity in the heart of software, Eric Evans;

###datastructure, algorithms, patterns:
-The Art of Computer Programming, Donald.E.Knuth;
-Introduction to Algorithms,Thomas H.Cormen;
-Data Structure and Algorithm Analysis in C, Mark Allen Weiss;
-Fundamental of Computer Algorithms, Sartaj Sahni;
-Fundamental of Data Structure, Sartaj Sahni;
-Data Structures,Algorithms, and Applications in C++, Sartaj Sahni;
-Computer Algorithms, Ellis Horowitz/Sartaj Sahni/Sanguthevar Rajasekaran;
-Distributed Algorithms, Nancy A. Lynch;
-The Timeless Way of Building, Christopher Alexander;
-A Pattern Language: Towns, Buildings, Construction, Christopher Alexander;

###storage,database, sql:
-An Introduction to Database Systems, C.J. Date;
-Database System Concepts, Abraham Silberschatz;
-Data Mining:Concepts and Techniques, Jiawei Han/Micheline Kamber/Jian Pe;

###communication, network, protocal:
-Data and Computer Communicatios, William Stallings;
-Data Communications and Networking, Behrouz A. Forouzan;
-Computer Networks, Andrew S. Tanenbaum;
-Computer Networking: A Top-Down Approach, James F. Kurose;
-HTTP: The Definitive Guide, David Gourley;

###security, privacy, personalization:
-Computer Security, Stallings William, Dieter Gollmann;
-Computer Security: Principles and Practice, William Stallings;
-Computer security: art and science, Matt Bishop;
-Information Security: principles and practice, Mark Stamp;
-Network Security Principles and Practices, Saadat Malik;
-Cryptography and Network Security: Principles and Practice, Stallings, William;
-Cryptography Theory and Practice, Douglas R. Stinson;
-Building Secure Software: How to Avoid Security Problems the Right Way, Viega, John;
-Network Security Essentials: Applications and Standards, Stallings, William;
-Applied Cryptography: Protocols, Algorthms, and Source Code in C, Bruce Schneier;
-Writing Secure Code, Michael Howard;

###compiler, assembly, linker, virtual machine:
-Compilers: Principles, Techniques and Tools, Sethi;
-Modern Compiler Implementation in C, Andrew W. Appel;
-Advanced Compiler Design and Implementation, Steven Muchnick;
-Compiler Construction: Principles and Practice, Kenneth C. Louden;

###operating system, principle, kernel, shell, api:
-Modern Operating Systems, Andrew S.Tanenbaum;
-Operating Systems: Internals and Design Principles, William Stallings;
-Operating Systems: Design and Implementation, Andrew S Tanenbaum;
-Operating System Concepts, Abraham Silberschatz;
-Understanding The Linux Kernel, Daniel P. Bovet;
-Linux Device Drivers, Jonahan Corbet;
-Linux Kernel Development, Robert Love;
-Linux System Programming, Robert Love;
-LINUX内核源代码情景分析, 毛德操;
-Internetworking with TCP/IP, Douglas E. Comer;
-TCP/IP Illustrated, W.Richard Stevens;
-UNIX Network Programming, W. Richard Stevens;
-The Art of UNIX Programming, Eric S. Raymond;
-Advanced Programming in the UNIX Environment, W.Richard Stevens;
-Advanced Bash-Scripting Guide, Mendel Cooper;
-The Linux Command Line, William E. Shotts, Jr.
-Linux Command Line and Shell Scripting Bible, Richard Blum;
-Mastering Unix Shell Scripting, Randal K. Michael;
-Distributed Systems: Principles and Paradigms, Andrew S. Tanenbaum;

###computer system, theory, architecture:
-Computer Systems: A Programmer's Perspective, Randal E.Bryant;
-Computer Architecture:A Quantitative Approach, David A. Patterson;
-Structured Computer Organization, Andrew S. Tanenbaum;
-Computer Organization and Design The Hardware/Software Interface, David A. Patterson;
-Introduction to Automata Theory, Languages, and Computation, John E. Hopcroft;
-The Annotated TURING, Charles Petzold;
-Code:The Hidden Language of Computer Hardware and Software, Charles Petzold;

###multimedia, encoder, decoder:
-Computer Graphics: C Version, Donald; Baker;
-Computer Graphics : Principles and Practice in C, James D. Foley;
-Computer Graphics with OpenGL, Donald D. Hearn;

###artificial intelligence:
-Artificial Intelligence:A Modern Approach, Stuart Russell/Peter Norvig;
-Pattern Recognition and Machine Learning, Christopher M. Bishop;
-Pattern Classification, Richard O;
-Foundations of Statistical Natural Language Processing, Christopher D. Manning;
-Information Theory, Inference and Learning Algorithms, David J. C. MacKay;

###mathematics:
-Concrete Mathematics A Foundation for Computer Science, Donald.E.Knuth
-Discrete Mathematics and Its Applications, Kenneth H.Rosen

posted @ 2014-08-14 18:08  朴人  阅读(387)  评论(0)    收藏  举报