Code (英語) ペーパーバック – イラスト付き, 2000/10/11
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Charles Petzold wrote the classic Programming Windows®, which is currently in its fifth edition and one of the best-known and widely used programming books of all time. He was honored in 1994 with the Windows Pioneer Award, presented by Microsoft® founder Bill Gates and Windows Magazine. He has been programming with Windows since first obtaining a beta Windows 1.0 SDK in the spring of 1985, and he wrote the very first magazine article on Windows programming in 1986. Charles is an MVP for Client Application Development and the author of several other books including Code: The Hidden Language of Computer Hardware and Software.
|星5つ 81% (81%)||81%|
|星4つ 14% (14%)||14%|
|星3つ 3% (3%)||3%|
|星2つ 1% (1%)||1%|
|星1つ 1% (1%)||1%|
I purchased this as I had started to do a little coding myself but wanted to know how everything worked underneath the hood. This answered those questions to enough of a depth that satisfied my needs - very happy with this book.
I am an amateur programmer and wanted to understand how it all works. I still don’t fully understand because I probably lack the intelligence but a smarter person would be able to grasp the theory using this book.
I can only recommend this book to people who are not satisfied with 20 min. youtube summaries and want to dig deeper.
I own a great many awesome CS books. But this one went to the top of my list very quickly, perhaps just barely 20 pages in. It's not a description of who did what, or how a particular piece of technology works. It's a story of how our modern world came to be. And it's a brilliant story.
Petzold challenges the reader right at the start - assume you're 10 years old and in your home, trying to talk to your friend on the other side of the street. Of course, you don't have a phone or anything like that. You need to use technology which is freely available and will not wake up your parents. Step by step, you discover Morse code (discarding several options prior to reaching this stage). Then you solve various challenges, like assuming your friend does not live in a direct line of sight.
Little by little, we learn about Braille code, simple flashlights, relays, then go on to more ambitious concepts like logic gates, flip-flops and, ultimately, a fully functional computer made of relays and other simple components (which is, I should point out, purely fictional, of course). And I enjoyed every step of this journey.
The book is written with the general reader in mind, it does not target software developers or engineers. I cannot say how someone with no prior computer knowledge would find it; it is beyond my ability to imagine myself without everything I've learned since I began my career path as a programmer. Perhaps the point where assembly is introduced would be a bit too much, or the descriptions of Intel's 8080 and Motorola's 6800. But hey, we do get from flashlights to computers within 400 pages, so it can't all be a smooth ride.
Also, I should mention, the reader is bound to notice how old the book is :) Many technologies that were all around us at the time of writing are already gone and that was barely 20 years ago...
All in all, I probably didn't learn much I didn't already know, but if I ever recommend a computer book to a non-programmer this would be it. Very enjoyable and informative. You will not regret buying this.
As an example of this book's greatness, it introduces the concept of binary mathematics through simple, intuitive examples (e.g. trying to communicate with someone in the dark using a torch). By the end of the first chapter you feel as though you understand the base-2 system—not as some kind of arbitrary standard chosen by figures from the past, but because of the immense power available from just two states (on/off, etc.). Petzold explains the logic behind Morse code and Braille, before one of the best introductions to basic physics I have ever read.
The greatest pleasure of this book, I think, is that after each chapter you never know whether you're going to learn about hardware or software—and that leads to the kind of excitement that can only be generated by a truly wonderful teacher. It is no exaggeration to say that this book is a masterpiece, and you should pick it up whether you're interested in understanding the inner workings of the technology inside the tools you use every day, or whether you want to continue your scientific education.
The first third or so explains the concepts of information, data representation, number systems, communication, Boolan logic, and logic gates.
The next third uses this foundation to describe and explain how differetn chipsets operate, inputs/outputs, and how operations such as arithmetic, looping, and memory allocation are conducted. This section can get a little dry in places, which is my only negative thing to say about this book.
The final section explains how programming langauges work, starting from Assembler, through to C, and on to thier high level languages. It also discusses things such as ASCII, graphics, OOP, buses and user space.
As an electronic and software engineer, I thought this book would just be light reading, but it was actually very informative and more useful than a lot of textbooks I have read. I highly recommend it to anyone even remotely interested in how hardware or software operate, or even anyone who has always assumed that computing is too complicated to understand. This book will prove you wrong!
The first third of the book is fairly easy going, and could probably by read by most people to get a flavour of how things work, starting from electrical relays. After that it gets more involved, with a lot of logic circuits, but most technical people should be able to understand it.
The author starts off at a very basic conceptual level and is very very informative, which helps you get a feel for some of the key concepts in computer programming.
As you gain more and more knowledge through the course of the book the level of detail also increases to match your learning.
I highly recommend this book and I am now training to be a software developer.