上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2.3 来自艺术的启发
下面我们回到“艺术”,看看在艺术作品的创作方面能找到哪些启发。图2.5是达·芬奇的名作《蒙娜丽莎》,大家都非常熟悉,我曾经在卢浮宫隔着厚厚的玻璃罩观赏过。
图2.5 达·芬奇的名作《蒙娜丽莎》
如果我们把《蒙娜丽莎》看作一个优秀的软件,仅仅停留在“知道这张画是好画”的层面是远远不够的。作为一名软件工程师,我们希望探求的是优秀软件背后的成因,从而我们也可以开发出优秀的软件。
优秀的艺术作品是由艺术家创作的,于是我们找到《蒙娜丽莎》的作者——达·芬奇(图2.6)。但是,仅仅停留在这里仍然是不够的。很多人会说:“达·芬奇是大师,大师是天生的,是远不可及的。”仰望大师,并不能让我们创造出伟大的作品。
图2.6 达·芬奇自画像
于是,我们继续探求,找到下面这幅画(图2.7)。这幅画叫《维特鲁威人》,是达·芬奇绘制的一个关于人体比例分析的手稿。根据一些资料记载,像《蒙娜丽莎》这样的作品并不是达·芬奇随手一画就画出来的,其中使用了很多绘画方法,比如《蒙娜丽莎》中的构图、用光、前景和背景,这些都是很有讲究的,都是有一些方法论作为支撑的。通过学习这些方法,我们虽然无法成为大师,但是也可以获得很大提升。
在艺术方面,我了解得不多。只是希望通过艺术中的这些故事,带给大家在代码编写方面的一些启发。通过学习前辈大师的方法,不断修炼和提升自己,从而开发出优秀的软件,而他们在创作过程中所使用的方法,就是我们要学习和采用的。
图2.7 达·芬奇,《维特鲁威人》