计算机学习书籍推荐(个人向)

个人学习计算机知识的一点心得体会在此分享:

一. 基础知识

  1. 《计算机科学概论(第11版).(美)布鲁克希尔》(《Computer Science: An Overview》 J. Glenn Brookshear)
    从总体上描述了计算机科学的各个内容,对计算机科学的总面貌有了解。

  2. 视频推荐(B站有):
    哈佛大学公开课:计算机科学CS50 CS50 Live
    十分钟速成课:计算机科学 Crash Course Computer Science

  3. 最好有不错的数学基础知识(以下书籍都较难,不会的话用到再查…):
    《离散数学及其应用》(《Discrete mathematics and its applications》
    Kenneth H·Rosen)
    《具体数学》(《Concrete Mathematics: A Foundation for Computer Science》Ronald L.Graham / Oren Patashnik / Donald E.Knuth)
    《概率论与数理统计(陈希孺)》
    《线性代数及其应用》(《Linear Algebra and Its Applications》
    David C. Lay )
    《高等数学引论(华罗庚)》

二. 基础语言

  1. 汇编:
    《汇编语言》 王爽
  2. C语言:
    《C语言程序设计现代方法》(《C Programming: A Modern Approach》 K. N. King )相对来说清晰明了,适合入门)
    《C程序设计语言》
    (《The C Programming Language》 Dennis
    M.Ritchie&Brian W.Kernighan, C经典之作)
  3. C++语言:
    《c++ Primer(第5版)》(《C++ Primer, 5th Edition》
    Stanley B. Lippman /Josée Lajoie / Barbara E. Moo, C++经典之作)
    《C++程序设计语言》
    (《The C++ Programming Language》
    比雅尼·斯特劳斯特鲁普 Bjarne Stroustrup(C++之父))
    Effective系列:对C++有更深的理解
    《Effective C ++ 》 Scott.Meyers
    《MoreEffective C++ 》Scott.Meyers
    《Effective STL 》Scott.Meyers
  4. Python语言:
    《Python从入门到实践》 (《Python Crash Course》Eric Matthes)
    《流畅的Python》(《Fluent Python》 Luciano Ramalho)

三. 进阶
(1) 算法与数据结构:

  • 《数据结构(C语言版)].严蔚敏》 可配合严老师的视频学习
  • 《算法导论》(《Introduction to Algorithms》 Thomas H.Cormen / Charles E.Leiserson / Ronald L.Rivest / Clifford Stein,较难可配合算法导论视频课程食用)
  • 《计算机程序设计艺术》(《The Art of Computer Programming》 Donald.E.Knuth, 读过一点点,能读完的都是牛人)

(2)计算机组成原理/操作系统
这两块我认为息息相关,密不可分的。

  • 《编码:隐匿在计算机软硬件背后的语言(美)佩措尔德》(《Code: The Hidden Language of Computer Hardware and Software》 Charles Petzold,语言诙谐幽默,比喻贴切,值得一读)
  • 《深入理解计算机系统》 (《Computer Systems: A Programmer’s Perspective》 Randal E.Bryant / David O’Hallaron,读懂你就通计算机了)
  • 《Linux内核设计与实现》 (《Linux Kernel Development》 Robert Love,深入Linux内核源码层一窥,期待能贡献出Linux内核代码…)
  • 《程序员的自我修养—链接、装载与库》潘爱民(讲述了系统软件的运行机制和原理,让你明白软件运行的方方面面)
  • 《UNIX环境高级编程》(《Advanced Programming in the UNIX Environment》W.Richard Stevens,Unix编程圣经)
  • 视频推荐:哈工大的计算机组成原理;哈工大李志军的操作系统

(3)网络相关:
网络是操作系统的重要组成,也是普通人用电脑的最大需求

  • 《计算机网络》Andrew S·Tanenbaum (原理性的书籍,介绍了各种概念,很理论)
  • 《计算机网络 自顶向下方法》(《Computer Networking:A Top-Down Approach》James F.Kurose / Keith W.Ross,自顶向下讲述网络,个人认为更加清晰)
  • 《TCP/IP详解》三卷(《TCP/IP ILLustrated》W.Richard Stevens,据说这是网络饭碗的碗底了)
  • 《UNIX网络编程》二卷(《Unix Network Programming》W.Richard Stevens,又是Stevens大神)
  • 《数据库系统概念》(《Database System Concepts》Abraham Silberschatz / Henry F.Korth / S.Sudarshan,介绍数据库原理)
  • 《mysql必知必会》(《MySQL Crash Course》Ben Forta,轻松入门MySQL)
  • 视频推荐:韩立刚的计算机网络,配合教材《计算机网络 谢希仁》

四. 更高层
站的高看的远,不拘泥于细节

  • 《代码大全》(《Code Complete》 Steve McConnell,授之于渔的一本书,介绍了软件开发的方方面面)
  • 《软件需求最佳实践:SERU过程框架原理与应用》徐峰(分析软件需求,无论是产品经理还是开发者都应该阅读)
  • 《UML用户指南》(《The Unified Modeling Language User Guide》Grady Booch / James Rumbaugh / Ivar Jacobson,使用UML语言去分析去建模)
  • 《设计模式:可复用面向对象软件的基础》(《Design Patterns: Elements of Reusable Object-Oriented Software》 Erich Gamma / Richard Helm / Ralph Johnson / John Vlissides ,对23种设计模式进行了细致的讨论,实践中应多多体会)
  • 《设计心理学》(《The Design of Everyday Things》 Donald Norman,日常用品的设计哲学,与软件是相通的)

五. 最后说两句
以上书籍都是个人阅读过觉得很不错的(英文书籍有能力推荐读原文),个人审美不要求普遍性。
推荐书籍都是总括性的,视频的话上B站即可。如果要学习具体的行业会有更加详细的书籍,比如图形学编程可以用opencv,opengl,人工智能用深度学习框架,通信需要学习802.11协议,Linux驱动要学习Linux内核等等。
还有重要的是要有健康的身体,这需要规律的饮食作息和锻炼,不妨再推荐一本《精准拉伸:疼痛消除和损伤预防的针对性练习 克里斯蒂安·博格》。就先这么多,以后再补充。

  • 2
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值