Fantasia1999 / what-is-computer-science

As a self-taught programmer, what inside the black box is always mysterious to me. That's why I start this project.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

what-is-computer-science

As a self-taught programmer, what inside the black box is always mysterious to me. That's why I start this project.

目录

  • 计算机科学概论
    • 读《计算机科学概论》(必读,了解计算机科学的全貌,适合初学者)⭐️⭐️⭐️⭐️⭐️
    • 读《深入理解计算机系统》(必读,从程序员的角度理解程序是怎么运行的,有配套的课程视频,有一定的深度,适合进阶的初学者)⭐️⭐️⭐️⭐️⭐️
  • 数字电路
    • 视频教程
  • 计算机组成原理和计算机体系结构
    • 《计算机是怎样跑起来的》(适合初学者)
    • 《穿越计算机的迷雾》(适合初学者)
    • 读《编码:隐匿在计算机软硬件背后的语言》(必读,用通俗易懂的方式一步一步告诉你计算机是怎么做出来的,适合初学者)⭐️⭐️⭐️⭐️⭐️
    • 下面这几本书都具备一定的专业性,而且与其他领域相关联,建议先阅读 CS:APP
      • 《计算机组成与设计:硬件/软件接口》(做应用开发的看这本就够了)
      • 《计算机体系结构:量化研究方法》
      • 《计算机组成:结构化方法》
  • 汇编语言
    • 《汇编语言》(王爽著)
  • 操作系统
  • 编译、链接(自己动手写一个编译器/解释器)
    • 《编译原理》(龙书)
    • 《现代编译原理——C 语言实现》(虎书,以例子贯穿前后端)
    • 《高级编译器设计与实现》(鲸书,主要讲后端的,轮子哥推荐)
    • 《编译器设计》(基本概念讲的比较清楚,比龙书容易理解,适合初学者)
    • 《Parsing Techniques》(轮子哥推荐,主要讲前端)
    • 《程序员的自我修养 : 链接、装载与库》⭐️⭐️⭐️⭐️⭐️
  • 离散数学
    • 《离散数学及其应用》
  • 数据结构和算法
    • 《数据结构与算法分析》(基础)⭐️⭐️⭐️⭐️⭐️
    • 《算法》(基础)
    • 《算法导论》(理论)
    • 《编程珠玑》(思维)
  • 计算机网络
    • 《图解 HTTP》
    • 《图解 TCP/IP》⭐️⭐️⭐️⭐️⭐️
    • 《网络是怎样连接的》
    • 《计算机网络:自顶向下方法》⭐️⭐️⭐️⭐️⭐️
    • 《TCP/IP 详解》
  • 数据库
    • 《数据库系统概念》
  • 程序设计、编程**
    • 设计模式
      • 《Head First 设计模式》(Java 语言)
      • 《设计模式》
    • 编程范式
    • 编码修养
      • 《代码大全》(必读)⭐️⭐️⭐️⭐️⭐️
      • 《重构:改善既有代码的设计》
      • 《修改代码的艺术》
      • 《代码整洁之道》
      • 《程序员的职业素养》
      • 《编写可读代码的艺术》
    • 程序设计**
      • 《计算机程序的构造和解释》(必读)⭐️⭐️⭐️⭐️⭐️
      • 《UNIX 编程艺术》
      • 《松本行弘的程序世界》
      • 《计算的本质:深入剖析程序和计算机》
  • 编程语言
    • C
      • 《C 程序设计语言》
      • 《C 语言程序设计现代方法》
    • C++
      • 《Accelerated C++》
      • 《C++ Primer》
      • 《C++ 编程**》
    • Objective-C
    • Java
    • Python
      • 《Python 编程:从入门到实践》
      • 《Python 编程快速上手》
    • JavaScript
    • Ruby
    • Swift
  • 细分领域
    • 音视频
    • 图片
    • 文字排版
    • 前端
    • 移动端(iOS、Android)
    • 后端
    • 大数据
    • 机器学习
    • 安全

参考资料

About

As a self-taught programmer, what inside the black box is always mysterious to me. That's why I start this project.


Languages

Language:C++ 75.0%Language:Objective-C 25.0%