Programming as Cooking

出自ChevyneWiki
於 2021年1月26日 (二) 22:45 由 Chevyne留言 | 貢獻 所做的修訂
(差異) ←上個修訂 | 最新修訂 (差異) | 下個修訂→ (差異)
跳至導覽 跳至搜尋

如果將程式設計看作是烹飪,那程式語言就是食材或廚具。

機器語言 自己種地種麥子、自己取火、自己打獵。
組合語言 自己磨面、自己殺雞、自己做麵條、自己找鍋。
C 一把菜刀、一口炒鍋、一個很好用的灶,隔壁有個菜市場。
PHP 麥當勞的後廚。
在快餐方面口味和效率綜合起來確實很好,
但讓它秀個刀功煲個湯它就很尷尬了。
Python 大超市的冷凍櫃,要成品有成品,要半成品有半成品,什麼都有。
如果你足夠懶,甚至不用關心這東西怎麼做的,用什麼材料,只管吃就行。
加工食材方便,微波爐按幾個鈕。
它能讓你快速獲得一桌還能吃的飯,但是深究口味火候什麼的不那麼容易。
JavaScript 之前是一套很好用的野營炊具,可惜灶台是紙糊的,幹不了大活。
後來 Google 給它換了個鋼的,現在能幹的事情越來越多了。
Java 碎菜器、切菜機、絞肉機、和麵機、烤箱、微波爐......
C++ 一套頂級廚具,光刀就十幾把,切肉的、切片的、雕花的...
鍋有爆炒的、悶燒的、平底煎肉的、煎蛋的、燉湯的...
這套東西在大神手裡那是相當趁手,理論上可以做出任何食物。
一般人用著嫌麻煩,能改用別的就改別的了。
有人試圖用21天掌握這套工具的用法,結果往往是玩刀傷了自己,或者是炸了廚房。