编程故事接龙

我首先想声明的是,软件工程师的工作成果(软件或者系统)
完完全全是 精神的产物
原始人拿到一个锋利的石头片,然后制作了一把石刀,
在这个过程中,锋利的石头是大自然已经存在的,
没有人能凭空想象出一块锋利的石头片。而制作石刀的过程,
是原始人看到已经存在的材料,或者工具,
然后想象出石刀这个武器,于是制作了出来。
这个产品的 一半是自然的产物,一半是精神的产物
随着人类智慧的进步,我们开始制作出 完全精神的产物,比如
《禅与摩托车维修艺术》里提及:
(人们)把金属制成各种形状——管子、杆子、工具、组件—
—把这一切都组合起来,但不能违背它运作的理论,
然后让它们以实体来运作。然而从事机械铸造、
打铁或是焊接的人则不认为钢有任何形状,
如果您有很好的技巧,钢就能变化出任何形状,
如果您技巧不够的话,就做不出来了。如果您想做成梃杆,
就必须有这种技巧,而它的形状是您设计的。这一点很重要
。钢铁?钢铁也是人所设计出来的,
因为在自然界之中并没有钢铁的存在……
一切都存在于人的心中
虽然软件是完全精神化的产物,
但这并不是说整个系统都是以我们一己之力构建的。
我们会 基于他人的精神产物来工作,
比如其他人设计的工具和组件。
我们可能会以为它们是自然存在的,我们只是“使用”和“遵循”
它们,但是您应该知道,这些都是 他人的精神产物
您的软件作品,积累了所有的计算机架构师、系统设计者、
语言设计者、编译器设计者……上万人的想法在里面。
就好像我在写书,也凝聚了我阅读过的所有作者的精神积累,
他们都对我有影响。
所以,作为全栈工程师,
理解您所工作的平台和编程语言背后的特质,是非常有用的。
不同的编程语言差别很大,它们有不同的抽象偏好,
有不同的设计思想,有不同的语法风格,有不同的依赖环境,
背后有不同的人在营销。
跟编程语言的设计者们好像在玩一个故事接龙的游戏
编程是您们之间的一个互助的过程。
您真正理解了设计者讲的故事,才能把您自己的这一段故事讲好。

——《Web全栈工程师的自我修养》

发布了3 篇原创文章 · 获赞 1 · 访问量 850

猜你喜欢

转载自blog.csdn.net/Cocoa_Cat/article/details/71111035