Computer Science from Scratch: Building Interpreters, Art, Emulators and ML in Python
暫譯: 從零開始的計算機科學:在 Python 中構建解釋器、藝術、模擬器和機器學習
Kopec, David
- 出版商: No Starch Press
- 出版日期: 2025-09-30
- 售價: $1,840
- 貴賓價: 9.5 折 $1,748
- 語言: 英文
- 頁數: 280
- 裝訂: Quality Paper - also called trade paper
- ISBN: 1718504306
- ISBN-13: 9781718504301
-
相關分類:
Computer-Science
海外代購書籍(需單獨結帳)
商品描述
You know how to write Python. Now master the computer science that makes it work. If you've been programming for a while, you may have found yourself wondering about the deeper principles behind the code. How are programming languages implemented? What does an interpreter really do? How does the microprocessor execute instructions at a fundamental level? How does a machine learning algorithm make decisions? Computer Science from Scratch is for experienced Python programmers who want to fill in those gaps--not through abstract lectures, but through carefully designed projects that bring core CS concepts to life. Understanding these fundamental building blocks will make you a more versatile and effective programmer. Each chapter presents a focused, hands-on project that teaches a fundamental idea in computer science:
These projects aren't about building tools--they're structured lessons that use code to reveal how computing works. Each chapter concludes with real-world context, thoughtful extensions, and exercises to deepen your understanding. Authored by David Kopec, a computer science professor and author of the popular Classic Computer Science Problems series, this is not a beginner's book, and it's not a theory-heavy academic text. It's a practical, code-driven introduction to the essential ideas and mechanisms of computer science--written for programmers who want more than syntax. If you've been writing Python and are ready to explore the foundations behind computing, this book will guide you there--with clarity, depth, and purpose.
- INTERPRETERS: Understand syntax, parsing, and evaluation by writing a BASIC interpreter
- EMULATORS: Learn computer architecture by building an NES emulator from the ground up
- GRAPHICS: Explore image manipulation and algorithmic art through computer graphics projects
- MACHINE LEARNING: Demystify classification by implementing a simple, readable KNN model
These projects aren't about building tools--they're structured lessons that use code to reveal how computing works. Each chapter concludes with real-world context, thoughtful extensions, and exercises to deepen your understanding. Authored by David Kopec, a computer science professor and author of the popular Classic Computer Science Problems series, this is not a beginner's book, and it's not a theory-heavy academic text. It's a practical, code-driven introduction to the essential ideas and mechanisms of computer science--written for programmers who want more than syntax. If you've been writing Python and are ready to explore the foundations behind computing, this book will guide you there--with clarity, depth, and purpose.
商品描述(中文翻譯)
你已經知道如何編寫 Python。現在掌握使其運作的計算機科學。
如果你已經編程一段時間,可能會開始思考代碼背後更深層的原則。編程語言是如何實現的?解釋器實際上是做什麼的?微處理器如何在基本層面執行指令?機器學習算法是如何做出決策的? 從零開始的計算機科學 是為那些希望填補這些空白的經驗豐富的 Python 程序員而設計的——不是通過抽象的講座,而是通過精心設計的項目,使核心計算機科學概念變得生動。理解這些基本構建塊將使你成為一名更具多樣性和有效性的程序員。 每一章都呈現一個專注的、動手的項目,教授計算機科學中的基本概念:- 解釋器:通過編寫一個 BASIC 解釋器來理解語法、解析和評估
- 模擬器:通過從零開始構建 NES 模擬器來學習計算機架構
- 圖形:通過計算機圖形項目探索圖像處理和算法藝術
- 機器學習:通過實現一個簡單、可讀的 KNN 模型來揭開分類的神秘面紗
這些項目不是關於構建工具——它們是結構化的課程,利用代碼揭示計算的運作方式。每一章結尾都有現實世界的背景、深思熟慮的擴展和加深理解的練習。 本書由計算機科學教授 David Kopec 撰寫,他是受歡迎的《經典計算機科學問題》系列的作者,這不是一本初學者的書,也不是一本理論重的學術文本。這是一本實用的、以代碼為驅動的計算機科學基本思想和機制的介紹——為那些想要了解更多而不僅僅是語法的程序員而寫。 如果你已經在編寫 Python,並準備探索計算的基礎,這本書將引導你到達那裡——以清晰、深度和目的。
作者簡介
David Kopec is an associate professor of computer science at Albright College. He is the author of five programming books, including the Classic Computer Science Problems series, and spent several years as an iOS developer for startups. In addition to his teaching work, David is an avid podcaster and indie app developer with an MS in computer science from Dartmouth and an EMBA from Quantic.
作者簡介(中文翻譯)
大衛·科佩克是阿爾布賴特學院的計算機科學副教授。他是五本程式設計書籍的作者,包括《經典計算機科學問題》系列,並在初創公司擔任iOS開發者多年。除了教學工作外,大衛還是一位熱衷的播客主持人和獨立應用程式開發者,擁有達特茅斯大學的計算機科學碩士學位和Quantic的EMBA學位。