컴공 독학 커리큘럼

제가 공부하려고 개인적으로 정리한 리스트입니다.
따라서, 각 커리큘럼에 대한 문의나 질문은 여기에 해주시면 감사하겠습니다.

At Least

Must study at least these two books.

  • Computer Systems: A Programmer’s Perspective
  • Designing Data-Intensive Applications

Programming

  • SICP (Structure and Interpretation of Computer Programs)
  • Course: Brian Harvey’s Berkeley CS 61A

Architecture

  • CS:APP (Computer Systems :A Programmer’s Perspective)
  • Course: Berkeley CS 61C

Algorithms

  • the Algorithm Design Manual
  • Course: Steven Skiena’s lectures
  • (also recommended) How to Solve It, Polya, Conway

Math

  • Mathematics for Computer Science
  • Course: Tom Leighton’s MIT 6.042J

Operating Systems

  • OS:TEP (Operating Systems: Three Easy Pieces)
  • Course: Berkeley CS 162

Network

  • CN:TDA (Computer Network: a Top Down Approach)
  • Course: Stanford CS 144

Database

  • Readings in Database Systems
  • Course: Joe Hellerstein’s Berkeley CS 186

Languages & Compilers

Distributed Systems

  • Designing Data-Intensive Applications by Martin Kleppmann
  • Course: MIT 6.824
  • (also recommended) Maarten van Steen and Andrew Tanenbaum’s Distributed Systems, 3rd Edition