加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱故事小小网_铜陵站长网 (http://www.0562zz.com/)- 视频终端、云渲染、应用安全、数据安全、安全管理!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

编程的艺术门槛

发布时间:2016-10-28 21:28:15 所属栏目:教程 来源:站长网
导读:副标题#e# 编程是门艺术,这个说法由来已久。最近在朱赟的公众号(嘀嗒嘀嗒)读到一篇文章《设计是门逻辑学,然后才是美学》,文中作者漂洋过海追寻艺术,老师却说:“设计不是艺术

就像上面一段对得整整齐齐的代码声明块,没有语法或硬性的风格要求程序员要这样写。我只是觉得这样更符合视觉感受,更容易清晰分辨。而这一点 Poul-Henning Kamp 曾在 ACM Queue 发表文章提出了一个迷人的观点:

很多编程语言的风格源自于 ASCII 字符集和基于打字机的终端。编程语言没有利用现代设备的图形属性和选项。虽然代码是按照清晰的英语语法格式编写的,但它并不是英文句子。事实上,它更像数学和表格。

而有时还会有些看起来明显不符合「好」代码规范的代码编写方式。

编程的艺术门槛

上面的代码中,if 语句后面把多句代码写在了一行,但从整体上看这样一个短小的方法,其表现形式一下就能让阅读者捕捉到,方法内部有四个分支,每行代码一个分支情况,两种正常分支,两种异常分支。

上面这些随手拈来的例子,都是作者有意为之的选择,正是在这些微妙的个人风格选择中,体现了作者自我的表达。

技艺

单独说编程艺术是不完整的,编程是从技术走向艺术。编程艺术是开在枝头的鲜花,而技术是支撑花朵的枝与根。

而在技术和艺术之间实际存在一道很高的门槛,艺术是一种自我表达,但自我表达却未必是艺术。关于这一点我们说个大家耳熟能详的人——毕加索,他说:

我十多岁就能画的像拉斐尔那么好了。

毕加索到底有没有说过这句话,我没去考证,但他的作品至少说明了一些事实。拉斐尔是文艺复兴时期的写实派画家,他的素描和油画像是下面这样的(图片来自「顾爷」公众号,一个经常谈艺术很有趣的公号)。

编程的艺术门槛

而毕加索十多岁时候的素描和油画是下面这样的。

编程的艺术门槛

写实是毕加索的绘画基础技术,而其后期的抽象主义才是他的艺术自我表达,两者相辅相成。

虽然,我也不太看得懂毕加索后期的抽象作品,毕加索相对于大众的距离依然比编程相对于大众的距离更近。编程的艺术之花也许就像花中的「满天星」,永远只是配角,只有追寻艺术的程序员方能感受到满天星所营造的那份梦境吧。

...

编程是完成功能,编程是解决 bug,编程是打磨技能,编程是修炼心性,最后编程才成了艺术。


写点程序世间的文字,画点生活瞬间的画儿。
微信公众号「瞬息之间」,遇见了不妨就关注看看。
编程的艺术门槛

(编辑:我爱故事小小网_铜陵站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读