文章目录:
学习 HTML css js和PHP卖什么书比较好???
这个列表包括了 100 多本经典技术书籍,涵盖:计算机系统与网络、系统架构、算法与数据结构、前端开发、后端开发、移动开发、数据库、测试、项目与团队、程序员职业修炼、求职面试 和 编程相关的经典书籍。
计算机系统与网络
《图灵的秘密:他的生平、思想及论文解读》
《计算机系统概论》
《深入理解Linux内核》
《深入Linux内核架构》
《TCP/IP详解 卷1:协议》
《Linux系统编程(第2版)》
《Linux内核设计与实现(第3版)》
《深入理解计算机系统(原书第2版)》
《计算机程序的构造和解释(原书第2版)》
《编码:隐匿在计算机软硬件背后的语言》
《性能之颠:洞悉系统、企业与云计算》
《UNIX网络编程 卷1:套接字联网API(第3版)》
《UNIX网络编程 卷2:进程间通信》
《Windows核心编程(第5版)》
《WireShark网络分析就这么简单》
《WireShark网络分析的艺术》
编程通用
《编程原本》
《代码大全》
《UNIX编程艺术》
《代码整洁之道》
《编程珠玑(第2版)》
《编程珠玑(续)》
《软件调试的艺术》
《编程语言实现模式》
《编写可读代码的艺术》
《精通正则表达式(第3版)》
《编译原理(第2版)》龙书
《重构:改善既有代码的设计》
《七周七语言:理解多种编程范型》
《调试九法:软硬件错误的排查之道》
《计算的本质:深入剖析程序和计算机》
《设计模式 : 可复用面向对象软件的基础》
算法与数据结构
《算法(第4版)》
《算法导论(原书第2版)》
《Python算法教程》
《算法设计与分析基础(第3版)》
《学习 JavaScript 数据结构与算法》
《数据结构与算法分析 : C++描述(第4版)》
《数据结构与算法分析 : C语言描述(第2版)》
《数据结构与算法分析 : Java语言描述(第2版)》
职业修炼与规划
《大教堂与集市》
《程序员的职业素养》
《程序员修炼之道:从小工到专家》
《软件开发者路线图:从学徒到高手》
《我编程,我快乐: 程序员职业规划之道》
《程序员的思维修炼:开发认知潜能的九堂课》
《高效程序员的45个习惯:敏捷开发修炼之道(修订版)》
大师访谈
《编程大师智慧》
《编程大师访谈录》
《编程人生 : 15位软件先驱访谈录( 上卷)》
《编程人生 : 15位软件先驱访谈录( 下卷)》
《奇思妙想 : 15位计算机天才及其重大发现》
《图灵和ACM图灵奖》
架构/性能
《微服务设计》
《大数据日知录》
《企业应用架构模式》
《Web性能权威指南》
《SRE:Google运维解密》
《发布!软件的设计与部署》
《高扩展性网站的 50 条原则》
《大型网站技术架构:核心原理与案例分析》
《恰如其分的软件架构:风险驱动的设计方法》
《软件系统架构:使用视点和视角与利益相关者合作(第2版)》
Web前端
《高性能 JavaScript》
《锋利的 jQuery(第2版)》
《JavaScript 忍者秘籍》
《编写可维护的 JavaScript》
《你不知道的 JavaScript(上卷)》
《你不知道的 JavaScript(中卷)》
《JavaScript 权威指南(第6版)》
《JavaScript 语言精粹(修订版)》
《JavaScript DOM编程艺术 (第2版)》
《JavaScript 高级程序设计(第3版)》
《JavaScript 异步编程:设计快速响应的网络应用》
《Effective JavaScript:编写高质量JavaScript代码的68个有效方法》
《HTML5 权威指南》
《HTML5 秘籍(第2版)》
《HTML5 与 CSS3 基础教程(第八版)》
《CSS 揭秘》
《CSS 设计指南(第3版)》
《CSS 权威指南(第3版)》
Java开发
《Java8 实战》
《Java并发编程实战》
《Java性能权威指南》
《Java程序员修炼之道》
《实战Java高并发程序设计》
《Java编程思想 (第4版)》
《深入理解Java虚拟机(第2版)》
《Effective java 中文版(第2版)》
《Java核心技术·卷1:基础知识(原书第9版)》
《Java核心技术·卷2:高级特性(原书第9版)》
.NET
《精通C#(第6版)》
《深入理解C#(第3版)》
《CLR via C#(第4版)》
Python
《集体智慧编程》
《笨办法学Python》
《Python基础教程》
《Head First Python》
《与孩子一起学编程》
《Python学习手册(第4版)》
《Python Cookbook(第3版)》
《Python参考手册(第4版)》
《Python核心编程(第3版)》
《Python科学计算(第2版)》
《利用 Python 进行数据分析》
《Think Python:像计算机科学家一样思考Python(第2版)》
《Python编程实战:运用设计模式、并发和程序库创建高质量程序》
《Python绝技:运用Python成为顶级黑客》
《Flask Web开发:基于Python的Web应用开发实战》
Android
《Android编程权威指南(第2版)》
《移动应用UI设计模式(第2版)》
iOS
《iOS编程实战》
《iOS编程(第4版)》
《Objective-C高级编程》
《Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法》
PHP
《Head First PHP MySQL(中文版)》
《深入PHP:面向对象、模式与实践(第3版)》
C语言
《C和指针》
《C专家编程》
《C陷阱与缺陷》
《C语言接口与实现》
《C程序设计语言(第2版)》
C++
《C++标准库》
《C++编程思想》
《C++程序设计原理与实践》
《C++ Primer (中文第5版)》
《C++ Primer习题集(第5版) 》
《C++程序设计语言(第1-3部分)(原书第4版) 》
《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版) 》
《More Effective C++:35个改善编程与设计的有效方法(中文版) 》
机器学习和数据挖掘
《数据之巅》
《矩阵分析》
《机器学习》
《统计学习方法》
《机器学习导论》
《推荐系统实践》
《机器学习实战》
《Web数据挖掘》
《深入浅出统计学》
《模式分类(第2版)》
《概率论与数理统计》
《统计学习基础(第2版) 》
《数据挖掘:概念与技术(第3版)》
《数据挖掘:实用机器学习工具与技术(原书第3版)》
《大数据:互联网大规模数据挖掘与分布式处理(第2版)》
数据库
《SQL应用重构》
《SQL Cookbook》
《高性能MySQL (第3版)》
《MySQL技术内幕 : InnoDB存储引擎(第2版)》
《深入浅出MySQL : 数据库开发、优化与管理维护》
测试
《探索式软件测试》
《有效的单元测试》
《Google软件测试之道》
项目与团队
《人月神话》
《快速软件开发》
《人件(原书第3版)》
《门后的秘密:卓越管理的故事》
《极客与团队:软件工程师的团队生存秘笈》
求职面试
《程序员面试金典(第5版)》
《编程之美 : 微软技术面试心得》
《金领简历:敲开苹果、微软、谷歌的大门》
《剑指Offer:名企面试官精讲典型编程题(纪念版)》
编程之外
《暗时间》
《数学之美》
《精益创业》
《批判性思维》
《世界是数字的》
《程序员的数学》
《程序员健康指南》
《禅与摩托车维修艺术》
《关键对话:如何高效能沟通》
《写作法宝:非虚构写作指南》
《黑客与画家 : 来自计算机时代的高见》
《软件随想录(卷1)》《软件随想录(卷2)》
《如何把事情做到最好》
大家有什么好书推荐欢迎在评论中留言。
注:本文转自伯乐在线。
传说中的编程高手是如何炼成的?
我得到的结论是--人们非常急于学习计算机相关知识,或者不知道何故,计算机难以置信的比其他任何东西都要容易学。却没发现一本书是关于在多少天内学会演奏贝多芬音乐、量子物理、甚至学会养狗。让我们分析一下像《3天内学会Pascal》这样的书名的意味: * 学会:在3天内你根本没有时间写出一个像样的程序,不会有使用它编程的成功或失败过程中学习的经历。也不会有时间和一个经验丰富的程序员一起工作,更不会理解程序在实际的编程环境中是怎样的。简而言之,你没有足够的时间学习更多的。所以这样的书只能谈一些肤浅的知识,不会让你深入的理解。亚历山大说过,肤浅的学习是危险的事情。 * Pascal:3天内也许你能搞懂Pascal的语法(如果你以前过另外一种类似的语言),但是你不能学会如何利用这样的语法。简而言之,假如你是个Basic程序员,你会用Basic风格写Pascal代码,但不会明白什么是Pascal的优点(或者不足)。为什么有这样的观点?Alan Perlis说过:“一门语言没有影响你的编程思想,它就不值得学习。”另一个观点,你只是学习了Pascal(更像,Visual Basic或者JavaScript)很少的部分知识,因为你只是需要使用这样的工具去完成一个特定的任务。但是你没有学会如何编程;你只是学会如何完成一些特定的任务。 * 3天内:不幸地,如下节要说的,这根本不够。10年学会编程学者们(Hayes, Bloom)研究表明,要想成为业界专家,任何一个宽广的领域,都需要10年的时间,比如下棋、作曲、绘画、演奏钢琴、游泳、网球,和研究神经心理学、地质学。这说明没有捷径:即使莫扎特,在4岁的时候就已经显示了音乐天赋,但在他写出了世界级的音乐作品前,他也花了13年的时间。另外一个例子,披头士乐队,好像是在1964年突然在Ed Sullivan冒出来的,但其实他们在1957年就开始演出了,并在更早就组成了乐队,他们第一张震撼唱片《Sgt.Pepers》(《佩帕军士》)在 1967年才发行。Samuel Johnson认为10年可能还不够,“任何领域的卓越成就只有靠穷极一生的努力来获得,别想用更少的代价就取得。”Chaucer感叹到“生命如此短暂,而要学的东西如此多。”下面是我对如何在编程上取得成功的建议: * 保持对编程的兴趣,感觉编程有乐趣。保证你在10年后都能够有乐趣。 * 和其他程序员交流,阅读其他人的程序,这比读书和培训重要得多。 * 写程序。最好的学习方法是边做边学。用更加学术的话来讲:“在一个给定的领域中,个人能力的提高并不会是自动的获得,就像经验一样的,把已有经验的延伸、扩展,而是需要通过特别有经验的人经过很大的努力来增长”。“而且对于特定的人,最有效的学习需要一个定义良好的、有一定难度的任务、该任务还要有丰富的信息反馈、有重复和纠正错误的机会。” 书《Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life 》(《在实践中认识:心理,数学,和文化在人生中的每一天》)有趣的证明了这样的观点。 * 如果你愿意,花4年时间呆在大学里(或者在研究院呆更长的时间)。这会让你能得到那些需要学历的工作,并且会让你对这个领域有更深的理解。但是如果你不喜欢上学,你也可以(做一些贡献)在工作中得到类似的经验。无论如何,仅有书本知识是不够的。《The New Hacker's Dictionary》(《新黑客字典》)作者Eric Raymond说,“计算机科学不像绘画,当学会了画笔和颜料技巧就能成为一个专业的画家,计算机科学教育不能让任何人成为专业的程序员。”。我雇佣过的最好的程序员之一就只有中学学历,但他写出了许多绝好的软件,拥有他自己的新闻组,并且因为享有股权比我有钱得多。 * 和其他程序员一起做项目。在一些项目中做最好的程序员,在其他的一些项目中做最糟糕的程序员。如果你是最好的程序员,就试着领导一个项目以提高你的能力,通过你的远见来激发其他人。如果你是差劲的程序员,就学习其他高手是如何做的,并且去做那些他们不喜欢做的部分(因为他们让你去给他们做这些部分)。 * 在其他程序员后面接手一个项目,因为需要你理解其他人写的程序是棘手的事情。看看在原作者不在的时候你如何理解和修改他们的代码。考虑如何设计你的程序能让接手你程序的人更容易理解。 * 至少学会6种计算机语言。包括一种支持class abstractions(比如Java和C++)的语言,一种支持functional abstraction(比如Lisp和ML)的语言,一种支持syntactic abstraction(比如Lisp)的语言,一种支持declarative specifications(比如Prolog和C++模板)的语言,一种支持coroutines(比如Icon和Schema)的语言,一种支持parallelism(比如Sisal)的语言。 * 记住“计算机科学”中的“计算机”。搞懂你的计算机执行一个指令要多长时间,从内存中取一个字要多长时间(在Cache命中和没命中的情况下),从磁盘上读连续的字要多长时间,在磁盘上搜索一个新位置要多少时间。 * 参与制定一种语言标准。可以是ANSI C++委员会,也可以是把你周围人的几种编码风格统一起来,该采取几个字符缩进的锯齿状。不管是哪种,你都能弄懂其他人喜欢语言中的什么、有多喜欢、权衡他们为什么有这样的感觉。 * 对将要开始的语言标准化取得成功充满信心。做到上面的这些,光靠书籍学习就能得到是值得怀疑的。我第一个孩子降生前,我几乎读了所有的“How To”系列的书,但是还是感觉像个菜无能的初学者。30个月后,等我第二个孩子降生后,我又把这些书都又复习一遍了吗?不,没有,我认识到靠我自己的个人经验要比那些专家写到上千页的书上的东西有用和可靠得多。Fred Brooks,在他的散文《 No Silver Bullets》(其实,就是《人月神话》中提到的没有银弹…加注)提出分三步的方法,发现优秀的软件设计师: 1.尽可能早的发现设计天才。 2.指派一个职业生涯的导师为他的发展前景负责,并且仔细保持一份职业生涯的档案。 3.为成长的设计师们提供机会,使他们相互激励和影响。这样做的前提是这些人已经有发展成为伟大设计师所必备的潜质;这样的工作需要一直很有耐心。Alan Perlis更直接:“每个人都需要教雕琢:Michelangelo却被告诉什么不需要做,这个道理也同样适合于伟大的程序员。”前进一步,买这样的Java书;你会为它耗尽精力。但是你并没有改变你的生涯,你也不会在24小时、一天、几个月内成为卓越的程序员。
关于网络发展、html5、css有没有什么入门丛书推荐
这个列表包括了 100 多本经典技术书籍,涵盖:计算机系统与网络、系统架构、算法与数据结构、前端开发、后端开发、移动开发、数据库、测试、项目与团队、程序员职业修炼、求职面试 和 编程相关的经典书籍。
计算机系统与网络
《图灵的秘密:他的生平、思想及论文解读》
《计算机系统概论》
《深入理解Linux内核》
《深入Linux内核架构》
《TCP/IP详解 卷1:协议》
《Linux系统编程(第2版)》
《Linux内核设计与实现(第3版)》
《深入理解计算机系统(原书第2版)》
《计算机程序的构造和解释(原书第2版)》
《编码:隐匿在计算机软硬件背后的语言》
《性能之颠:洞悉系统、企业与云计算》
《UNIX网络编程 卷1:套接字联网API(第3版)》
《UNIX网络编程 卷2:进程间通信》
《Windows核心编程(第5版)》
《WireShark网络分析就这么简单》
《WireShark网络分析的艺术》
编程通用
《编程原本》
《代码大全》
《UNIX编程艺术》
《代码整洁之道》
《编程珠玑(第2版)》
《编程珠玑(续)》
《软件调试的艺术》
《编程语言实现模式》
《编写可读代码的艺术》
《精通正则表达式(第3版)》
《编译原理(第2版)》龙书
《重构:改善既有代码的设计》
《七周七语言:理解多种编程范型》
《调试九法:软硬件错误的排查之道》
《计算的本质:深入剖析程序和计算机》
《设计模式 : 可复用面向对象软件的基础》
算法与数据结构
《算法(第4版)》
《算法导论(原书第2版)》
《Python算法教程》
《算法设计与分析基础(第3版)》
《学习 JavaScript 数据结构与算法》
《数据结构与算法分析 : C++描述(第4版)》
《数据结构与算法分析 : C语言描述(第2版)》
《数据结构与算法分析 : Java语言描述(第2版)》
职业修炼与规划
《大教堂与集市》
《程序员的职业素养》
《程序员修炼之道:从小工到专家》
《软件开发者路线图:从学徒到高手》
《我编程,我快乐: 程序员职业规划之道》
《程序员的思维修炼:开发认知潜能的九堂课》
《高效程序员的45个习惯:敏捷开发修炼之道(修订版)》
大师访谈
《编程大师智慧》
《编程大师访谈录》
《编程人生 : 15位软件先驱访谈录( 上卷)》
《编程人生 : 15位软件先驱访谈录( 下卷)》
《奇思妙想 : 15位计算机天才及其重大发现》
《图灵和ACM图灵奖》
架构/性能
《微服务设计》
《大数据日知录》
《企业应用架构模式》
《Web性能权威指南》
《SRE:Google运维解密》
《发布!软件的设计与部署》
《高扩展性网站的 50 条原则》
《大型网站技术架构:核心原理与案例分析》
《恰如其分的软件架构:风险驱动的设计方法》
《软件系统架构:使用视点和视角与利益相关者合作(第2版)》
Web前端
《高性能 JavaScript》
《锋利的 jQuery(第2版)》
《JavaScript 忍者秘籍》
《编写可维护的 JavaScript》
《你不知道的 JavaScript(上卷)》
《你不知道的 JavaScript(中卷)》
《JavaScript 权威指南(第6版)》
《JavaScript 语言精粹(修订版)》
《JavaScript DOM编程艺术 (第2版)》
《JavaScript 高级程序设计(第3版)》
《JavaScript 异步编程:设计快速响应的网络应用》
《Effective JavaScript:编写高质量JavaScript代码的68个有效方法》
《HTML5 权威指南》
《HTML5 秘籍(第2版)》
《HTML5 与 CSS3 基础教程(第八版)》
《CSS 揭秘》
《CSS 设计指南(第3版)》
《CSS 权威指南(第3版)》
Java开发
《Java8 实战》
《Java并发编程实战》
《Java性能权威指南》
《Java程序员修炼之道》
《实战Java高并发程序设计》
《Java编程思想 (第4版)》
《深入理解Java虚拟机(第2版)》
《Effective java 中文版(第2版)》
《Java核心技术·卷1:基础知识(原书第9版)》
《Java核心技术·卷2:高级特性(原书第9版)》
.NET
《精通C#(第6版)》
《深入理解C#(第3版)》
《CLR via C#(第4版)》
Python
《集体智慧编程》
《笨办法学Python》
《Python基础教程》
《Head First Python》
《与孩子一起学编程》
《Python学习手册(第4版)》
《Python Cookbook(第3版)》
《Python参考手册(第4版)》
《Python核心编程(第3版)》
《Python科学计算(第2版)》
《利用 Python 进行数据分析》
《Think Python:像计算机科学家一样思考Python(第2版)》
《Python编程实战:运用设计模式、并发和程序库创建高质量程序》
《Python绝技:运用Python成为顶级黑客》
《Flask Web开发:基于Python的Web应用开发实战》
Android
《Android编程权威指南(第2版)》
《移动应用UI设计模式(第2版)》
iOS
《iOS编程实战》
《iOS编程(第4版)》
《Objective-C高级编程》
《Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法》
PHP
《Head First PHP MySQL(中文版)》
《深入PHP:面向对象、模式与实践(第3版)》
C语言
《C和指针》
《C专家编程》
《C陷阱与缺陷》
《C语言接口与实现》
《C程序设计语言(第2版)》
C++
《C++标准库》
《C++编程思想》
《C++程序设计原理与实践》
《C++ Primer (中文第5版)》
《C++ Primer习题集(第5版) 》
《C++程序设计语言(第1-3部分)(原书第4版) 》
《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版) 》
《More Effective C++:35个改善编程与设计的有效方法(中文版) 》
机器学习和数据挖掘
《数据之巅》
《矩阵分析》
《机器学习》
《统计学习方法》
《机器学习导论》
《推荐系统实践》
《机器学习实战》
《Web数据挖掘》
《深入浅出统计学》
《模式分类(第2版)》
《概率论与数理统计》
《统计学习基础(第2版) 》
《数据挖掘:概念与技术(第3版)》
《数据挖掘:实用机器学习工具与技术(原书第3版)》
《大数据:互联网大规模数据挖掘与分布式处理(第2版)》
数据库
《SQL应用重构》
《SQL Cookbook》
《高性能MySQL (第3版)》
《MySQL技术内幕 : InnoDB存储引擎(第2版)》
《深入浅出MySQL : 数据库开发、优化与管理维护》
测试
《探索式软件测试》
《有效的单元测试》
《Google软件测试之道》
项目与团队
《人月神话》
《快速软件开发》
《人件(原书第3版)》
《门后的秘密:卓越管理的故事》
《极客与团队:软件工程师的团队生存秘笈》
求职面试
《程序员面试金典(第5版)》
《编程之美 : 微软技术面试心得》
《金领简历:敲开苹果、微软、谷歌的大门》
《剑指Offer:名企面试官精讲典型编程题(纪念版)》
编程之外
《暗时间》
《数学之美》
《精益创业》
《批判性思维》
《世界是数字的》
《程序员的数学》
《程序员健康指南》
《禅与摩托车维修艺术》
《关键对话:如何高效能沟通》
《写作法宝:非虚构写作指南》
《黑客与画家 : 来自计算机时代的高见》
《软件随想录(卷1)》《软件随想录(卷2)》
《如何把事情做到最好》
大家有什么好书推荐欢迎在评论中留言。
注:本文转自伯乐在线。
kindle有哪些程序员看的书推介
程序员看的代码书不建议在Kindle上看,体验很不好,代码也没办法看,建议看一些与程序员有关的纯文字的,比如《黑客与画家》,《人月神话》等。
基础教程(第八版)》《CSS 揭秘》《CSS 设计指南(第3版)》《CSS 权威指南(第3版)》Java开发《Java8 实战》《Java并发编程实战》《Java性能权威指南》《Java程序员修炼
2.指派一个职业生涯的导师为他的发展前景负责,并且仔细保持一份职业生涯的档案。 3.为成长的设计师们提供机会,使他们相互激励和影响。这样做的前提是这些人已经有