朴人的码农书

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

###programming language, paradigm:
-The C Programming Language;
-Expert C Programming;
-Pointers on C;
-C Traps and Pitfalls;
-The C++ Programming Language;
-The Design and Evolution of C++;
-Inside The C++ Object Model;
-C++ Primer;
-Thinking in C++;
-Effective C++;
-More Effective C++;
-Essential C++;
-C++ Templates: The Complete Guide;
-Accelerated C++:Practical Programming by Example;
-C++ Gotchas: Avoiding Common Problems in Coding and Design;
-Modern C++ Design: Generic Programming and Design Patterns Applied;
-Efficient C++: Performance Programming Techniques;
-Exceptional C++;
-More Exceptional C++;
-Exceptional C++ Style;
-Advanced C++ Programming Styles and Idioms;
-C++ Programming Style;
-C++ Coding Standards;
-C++ STL;
-Effective STL;
-Generic Programming and The STL;
-C++ Concurrency in Action: Practical Multithreading; Boost;
-Thinking in Java;
-Core Java 2;
-Effective Java;
-Java 与模式;
-The Java Programming Language;
-The JavaTM Virtual Machine Specification;
-The Java Language Specification;
-Concurrent Programming in Java:Design Principles and Patterns;
-Inside Java Virtual Machine;
-Java Network Programming;
-Java Puzzles: Traps, Pitfalls and Corner Cases;
-Dive into Python;
-Objects Unencapsulated: Java, Eiffel and C++;
-Structured Programming;Edsger W. Dijkstra;

###requirement, analysis, design, modeling, construction, architecture, testing:
-The Psychology of Computer Programming;
-An Introduction to Systems Thinking;
-General Principles of Systems Design;
-Quality Software Management: Systems Thinking;
-General Principles of Systems Design;
-Systems Analysis and Design;
-Bringing Design to Software;
-Design Patterns:Elements of Reusable Object-Oriented software;
-Design Patterns Explained;
-Core J2EE Patterns: Best Practices and Design Strategies;
-Patterns of Enterprise Application Architecture;
-Pattern-Oriented Software Architecture;
-Applying UML and Patterns:An Introduction to Object-Oriented Analysis and Design and the Unified Process;
-Analysis Patterns :Reusable Object Models;
-More Process Patterns : Delivering Large-Scale Systems Using Object Technology;
-Refactoring to Patterns;
-Refactoring: Improving the Design of Existing Code;
-Structure and Interpretation of Computer Programs;
-Object-Oriented Software Construction;
-Object-Oriented Analysis and Design with Applications;
-道法自然-面向对象实践指南;
-Fundamentals of Object-Oriented Design in UML;
-The Unified Software Development Porcess;
-The Unified Modeling Language User Guide;
-The Unified Modeling Language Reference Manual;
-UML Distilled: A Brief Guide to the Standard Object Modeling Language;
-Software Craftsmanship;
-Design by Contract by Example;
-Software Architecture in Practice;
-The Science and Art of Software Development;
-The Practice of Programming;
-Code Reading: The Open Source Perspective;
-Working Effectively with Legacy Code;
-The Pragmatic Programmer;
-The Pragmatic Programmer: From Journeyman to Master;
-Programming Pearls;
-Code Complete;
-Writing Secure Code;
-Writing Clean Code;
-Clean Code;
-Test-Driven Development: by example;
-Pragmatic Unit Testing:In Java with JUnit;
-Writing Effective Use Cases;

###framework, middleware, platform, server:
-Embedded Android;
-Pro Android;
-JavaServerPages;
-Java Servlet Programming;
-Enterprise JavaBeans;
-Mastering EJB;
-Database Programming with JDBC and Java;
-Expert One-on-One J2EE Design and Development;
-Expert One-on-One J2EE Development Without EJB;
-Expert Spring MVC and Web Flow;
-Pro Spring;
-Spring Live;
-Spring in Action;
-Webwork in Action;
-Struts in Action;
-Hibernate in Action;
-myBATIS in Action;
-jQuery in Action;
-JUnit in Action;
-JavaScript: The Definition Guide;
-JavaScript Design Patterns;
-Foundations Of Ajax;
-Ajax Design Patterns;
-Ajax in Action;
-Mastering Regalr Expressions;

###compiler, assembly, linker, virtual machine:
-Compilers: Principles, Techniques and Tools;
-Modern Compiler Implementation in C;
-Advanced Compiler Design and Implementation;
-Compiler Construction: Principles and Practice;

###software engineering, process, method:
-Software Engineering: A Practitioner‘s Approach;
-Software Engineering : Theory and Practice;
-Software Engineering;
-Waltzing With Bears: Managing Risk on Software Projects;
-Peopleware : Productive Projects and Teams;
-The Mythical Man-Month;
-Introduction to the Personal Software Process;
-Introduction to the Team Software Process;
-Rapid Development;
-The Rational Unified Process:An Introduction;
-The Unified Software Development Process;
-Agile Software Development: Principles, Patterns, and Practices;
-Continuous Integration:Improving Software Quality and Reducing Risk;
-Lean Software Development: An Agile Toolkit;
-Agile Software Development: The Cooperative Game;
-User Stories Applied: For Agile Software Development;
-Extreme Programming Explained:Embrace Change;
-Practices of An Agile Developer:Working in the Real World;
-Adaptive Software Development:a collaborative approach to managing complex systems;
-Domain-Driven Design:Tacking Complexity in the heart of software;

###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;
-Distributed Algorithms;
-The Timeless Way of Building;
-A Pattern Language: Towns, Buildings, Construction;

###multimedia, encoder, decoder:
-Computer Graphics;
-Computer Graphics: C Version;
-Computer Graphics with OpenGL;

###storage,database, sql:
-An Introduction to Database Systems;
-Database System Concepts;
-Data Mining:Concepts and Techniques;

###communication, network, protocal:
-Data and Computer Communicatios;
-Data Communications and Networking;
-Computer Networks;
-Computer Networking: A Top-Down Approach;

###security, privacy, personalization:
-Computer Security;
-Computer Security: Principles and Practice;
-Computer security art and science;
-Information Security principles and practice;
-Network Security Principles and Practices;
-Cryptography and Network Security: Principles and Practice;
-Cryptography Theory and Practice;
-Building Secure Software: How to Avoid Security Problems the Right Way;
-Network Security Essentials: Applications and Standards ;
-Applied Cryptography: Protocols, Algorthms, and Source Code in C;
-Writing Secure Code;

###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;
-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;

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

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

朴人的码农书

时间: 2024-10-14 17:11:44

朴人的码农书的相关文章

朴人的码农乐园

民以食为天,代码是程序员的食粮,优秀的开源项目和源码就如同美味的大餐,是码农茁壮成长的有力补给: 自己写代码是亲自下厨秀手艺,阅读优秀源码是品尝大厨的杰作,对饥渴的码农而言,都是快感: 还有哪个行业或领域有如开源软件这样的高度分享与奉献?向开源软件的贡献者致敬!希望有朝一日也能添砖加瓦,献绵薄之力: 作为一名JavaEE/Android码农,下面列出工作中涉及到的相关开源软件或开源库(比较乱,待整理完善): 时不时钻进去摸索摸索,即使不能深入挖掘,也求能混个熟悉:坚持,加油! Linux/Ker

【知乎】怎么成为一个优秀的程序员,而不是一个优秀的码农?

怎么成为一个优秀的程序员,而不是一个优秀的码农? 9 条评论 分享 默认排序按时间排序 98 个回答 3844赞同反对,不会显示你的姓名 萧井陌 微信公众号:炼瓜研究所 技术社区 - 3844 人赞同 优秀的程序员会告诉你打根基的重要性,会劝你在厚积薄发前要隐忍. 优秀的码农会告诉你学啥底层.啥啥啥一拖就好了,学了python还要啥自行车啊,数据结构排序函数二分搜索这不都内置了吗?工作中永远用不到,学算法有啥用啊?成为高手有很多种方法汇编是个屁啊? +++基础的分割线+++ 列举几个我认为比较重

大龄码农那些事——也谈996.ICU

1.背景 近期Github突然有一个开源项目火了,叫“996.icu”,开源地址:https://github.com/996icu/996.ICU ,目前star的人数截止我写这篇博文时已经高达174,268,堪称Github史上的奇迹了,而且人数还在不断增长中.加上各种媒体包括博客园上的编辑推荐,估计看的人远远超过star的人数.   2.原因      为什么996.icu会突然如此火爆呢?大家关注如此之高呢?我想站在这么多年工作经验的大龄码农角度试图分析一下原因.如有不足,欢迎大家留言讨

逃离北上广之后,老码农的悲哀(顺便晒下简历,请围观,但请勿人肉,求放过!求无视!)

在此记录一下,逃离北上广之后的五个月后的今日的感想. 前戏: 最近老板出去旅游了,要十几天才回来.由于老婆最近总是在碎碎念,说小孩在成都读不起书,收入降低了这么多,真是不该回来!云云... 顺便说一下现状吧,本来是受朋友邀请才回来工作的,也就是现在的BOSS,我的王哥,王哥对我还是挺照顾的,也是非常的感谢.公司是做传统收银管理软件的,在现在的行业内一直是国内领先,效益还算可以,加上王哥自己开发有4个人,但是主力开发由于身体原因已经在家修养了半年多了,一直没来上班.由于软件是delphi开发的,面

一个移动开发老码农的书单

了解更多老码农的个人信息,爱八卦的,请看这里:http://www.koulianbing.com/?page_id=12 老码农是个比较宅的人,不爱玩游戏,只爱看书.过去10年来读的书中,还能记得的书大部都是很不错的,列出来推荐给大家.会持续更新. 一.开发技术 1.Effective Objective C 2.0 适合代码量在5000行以后阅读,对细节优化,性能提升,结构设计都非常有帮助,强烈建议所有iOS码农人手一本,至少读三遍. 2.Objective-C高级编程 日本人写的,薄薄的一

码农必读的 7 本计算机书

正如编程的趋势和各种语言,编程书也在不断跟新换代.不过以下的7本经典书籍经受了时间的考验.有些书比其他的书面世的晚,但是这些书为新人还是有经验的程序员都提供了深入的见解. 1.<人月神话:软件工程论文集>(周年第二版) 作者:**Frederick Brooks, Jr. 这是一本比较古老的书(它的第一版诞生于1975年!),本书在我的书架上还保存着一本,因为它所传达的理念到现在任然适用.复杂的项目管理仍然是一项很大的挑战,本书不仅适用于软件工程,在其他技术领域也同样适用,比如微机处理器设计.

与技术无关,但却值得码农们好好读一读的怪书:禅与摩托车维修艺术

最近在读<禅与摩托车维修艺术>这本书,说它很奇怪,其实是因为觉得书名很有意思.看书名,很容易被误解成是一本教人修摩托车的教程,事实上它是一本非常经典的哲学书籍,很多大牛都有推介过这本书. 著名的物理学家 霍金 曾这样评价这本书: “我因为写了一部人们把它和<禅与摩托车维修艺术>相比较的书而感到甚受恭维,我希望拙作(<时间简史>)和<禅与摩托车维修艺术>一样使人们觉得他们不必自处于伟大的智慧及哲学的问题之外” 其实不单单是霍金,乔布斯也曾经极力的推崇过这本书.

痛定思痛,重新做码农——来自三年Android工程师的自省书

4年前的这个时候,9月17号,第一次听百度的宣讲会,第一次投简历,第一次笔试,最后,第一次参加三轮面试,最终,人生的第一个offer到手. 所有的职场第一次,都给了百度. 当时得知百度在长沙只收了2个本科生(一个中南大学的,一个湖南师大(我)),突然感觉自己好幸运,周围的同学也觉得不可思议. 而现在,4年后,轮番面试,惨遭一轮游. 不得不,自省! 所以,4年前的offer真是幸运吗? 在别人玩的时候,我开始研究怎么赚广告费:多少个日日夜夜,从,不懂java,不懂android,不懂数据库,不懂p

Hiwork实现全端覆盖——联合CSDN和码农周刊给各位送书啦!!

在炎炎夏日,下班之后,找一角清凉,品一杯香茶,细细阅读技术书籍,提高专业知识又能陶冶情操,岂不是一件乐事儿? HiWork发布了适用于Window.Linux.和Mac OS操作系统的HiWork 桌面客户端,到目前为止,HiWork已经做到了web.android.iphone.ipad.windows.mac.linux七个端的全端覆盖,方便使用不同系统的各类用户使用,信息完全同步. 为了记住这一时刻,HiWork联合CSDN和码农周刊给各位送书啦,大家可以通过以下链接参加活动,CSDN活动