Lập trình thực ra là dùng ẩn dụ

Khái niệm:: Ẩn dụ

Lý do:: Chúng ta sống bằng ẩn dụ
Ta mô phỏng thế giới qua những vật thể
Ngôn ngữ lập trình không giúp con người làm được nhiều hơn những gì ngôn ngữ lập trình bậc thấp làm được. Nó chỉ giúp con người làm ra ít lỗi hơn mà thôi


Try, for a moment to imagine what “Typescript with React” visually looks like. Or “A Server-rendered ReactJS Application with Next.js”. Or the “State Monad in JavaScript

Not exactly a vivid picture in your mind, right?

This is partly because programming is an abstract activity. It has to be.
Taken literally, programming involves running enormously complex sequences of electrical currents. On a microscopic scale. Inside our machines.
That world isn’t human friendly. We can’t see what’s going on or control what happens without a thick layer of symbolic software in the middle.

So we invented programming languages.
The JavaScript snippet let fruit = banana maps onto a specific set of electrical pulses firing deep inside your hardware.

In programmer land this is called an abstraction.

Funnily enough, it also fits our definition of a metaphor. Programming is just a giant stack of metaphors. Each layer of the metaphorical stack moves us further away from machine world, and closer to human world.

Nguồn:: Maggie Appleton, How to Draw Invisible Programming Concepts: Part I