D 大调系列简介

Paul Graham在《黑客与画家》里说,“编程是一种艺术创作”。

Stephen Gary Wozniak这样描述程序员,“我们不停地添加代码,像画家添加色彩,作曲家添加音符,每一个小细节都必须有依据……努力使每件事情完美地组合在一起,以一种前人未曾做过的方式。这使得工程师称为真正的艺术家。”

对于我来说,虽然接触编程时间不到3个月,但是每次敲键盘的感觉和弹琴很像。前者以视觉的形式呈现,后者以听觉的形式呈现。

当很多人6岁就开始接触编程的时候,我压根不知道编程是什么东西。那时的我,还在房间里练贝多芬的《致爱丽丝》,虽然我当时心里很不喜欢这首曲子,但是为了在台上展示给别人看,或者展示给家里的客人看,不得不按照家长的要求,埋头练。心里却很不爽。这种不爽的感觉延续了12年。直到上大学,没有在父母的掌控下,才摆脱。

“展示”这个词,从来不属于我。因为我真心不喜欢“展示”。弹琴,不是为了证明自己,博得别人的赞扬,而是一个很纯粹的目的,让自己觉得爽。至于别人爽不爽,我不知道,也不想管。

而编程也是一样的道理。不是为了“展示给别人看”,才去编程,而是因为“I feel good”  。

弹琴时,有两个时刻让我感觉最爽,一是弹大师的曲子,二是自己弹自己创作或者改编的曲子。记得自己第一次改编的曲子是《小星星》,一个下午编了10多个版本。当我重新审视自己玩弄的曲子的时候,突然发现一点,那就是很多地方有其他曲子的影子。也是那个时刻,我突然意识到“内化”(internalize)这个词的含义。

而编程也是一样的道理。要想“内化”,必须先学习。

音乐当中,唱名,顾名思义,指唱谱时所用的音符的名称,即1234567(do re mi fa sol la si)。而音名是音乐中的各音自己的名称,用字母命名,分别为CDEFGAB。

D大调是一个基于D(re)音的大调,英文为D major。之所以要把这个系列命名为D大调,原因有两个:一,是因为这个系列主要是一些官方文档(Documentation)的学习笔记,我取这个单词的首字母;二,是因为我的身份是一个开发者(Developer), 同样,我取这个单词的首字母。

希望大家和我一起来学习,也希望大家能给我指出笔记中总结不当的地方。非常感谢。

(如需转载,请注明出处,谢谢。)

时间: 2024-11-10 10:50:40

D 大调系列简介的相关文章

SSDT–BI 系列简介

这个系列主要是介绍SSDT-BI相关知识以及在使用过程中遇到的问题和解决方案. 下载地址 可以访问如下网址: SSDT-BI (SSDT–BI for VS2013). 安装步骤 具体步骤不需多说,一路点击下一步可安装完成. 注意事项 1,由于SSDT–BI是VS的插件,所以如果你已经安装VS,请确保你的VS是已激活的,否则可能导致你的SSDT–BI不能正常使用. 2,也可以不用安装VS,直接安装SSDT-BI 即可.

Angular 2 系列: 简介

Angular 2 Series: Introduction By Max on April 2, 2015 現在, Angular 2 和 Ionic 2 呼之欲出.我們超讚的小隊正在為下一個大版本的 Ionic 和 Angular 2 在努力工作.我為我們在那麽短的時間內取得那麽大的進展感到興奮,而且我相信,Ionic 社區,肯定會愛死它的. 對許多人來說, Angular 2 把他們所鐘愛框架改得太多了(這就是相愛相殺吧).大家花了太多時間去學習 v1 的術語了(directive,有的舉

Blend_软件系列简介(Z)

随着计算机软件开发分工细节化,微软对已有的产品线进行了调整,在保持原有经典开发工具Visual Studio基础上,又推出了一套新的设计开发工具系列,Expression Studio. Expression Studio设计工具系列包含四项主要产品: Expression Blend  Expression Blend(下称Blend),是一款用于设计桌面和Web应用用户界面的可视化工具.用户可以通过拖拉控件方式创建用户交互界面:另外Blend中,包含一款软件原型建模工具SketchFlow,

html5学习系列——简介加标签

html5 的新特性: (1)用于绘画的canvas元素 (2)用于媒介回放的video和audio元素 (3)对本地离线存储有更好的支持 (4)新的特殊内容元素 (5)新的表单控件. 旧标签: (1)a标签 作用:超链接,如果没有href属性,就仅仅是一个超链接的占位符. 属性: href:链接的目标url; hreflang:规定目标url的基准语言 media:url的媒介类型,默认值为all: ping:由空格分隔的url列表: rel:规定当前文档与目标 URL 之间的关系: targ

[JQuery EasyUI系列]简介

一.jQuery EasyUI是一个基于jQuery的框架,继承了各种用户界面插件. 二.jQuery EasyUI框架提供了创建网页所需的一切,可以轻松建立站点. easyui是一个基于jQuery的框架,集成了各种用户界面插件 easyui提供建立现代化的具有交互性的JavaScript应用的必要的功能 使用easyui,您不需要写太多的JavaScript代码,一般情况下只需要使用一些html标记来定义用户界面. HTML网页的完整框架 easyui节省了开发产品的时间个规模 easyui

黑马程序员-String系列简介

一.概述 查看Java源码可以发现String类是final类型,也就是说String是不可以被继承的.字符串是一种特殊的对象,一旦被初始化就不可以被改变,程序中"abc"这种形式其实就是在内存中创建了一个字符串对象,可以使用String s = "abc";的方式创建一个字符串对象.也可以是用String s = new String("abc");的方式创建一个字符串对象,但是两者之间的不同之处在于前者在内存中只创建了一个对象,而后者在内存创

使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【开篇】【持续更新中。。。】

小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=ohmepe03 最近发现web api很火,园内也有各种大神已经在研究,本人在asp.net官网上看到一个系列教程,原文地址:http://bitoftech.net/2013/11/25/detailed-tutorial-building-asp-net-

【形式化方法:VDM++系列】1.前言

1.前言 今天开始上课学习软件需求分析与VDM++,经过一节课的学习,我又增长了见识. 软件需求工程在软件工程中处于十分核心的地位:需求分析的好坏直接决定软件工程的成败.这一点是我之前对需求工程的理解和认识,然而今天的学习又进一步扩展了我的认识. 2.需求分析的发展阶段 说起需求分析,首先想到的是用例,然后就是各种各样的用例图,功能描述:接下来我会想到产品原型,业务流程描述等等:然而这些其实都只是需求工程的某一阶段的一小部分.实际上,需求分析大致可划分为以下3个阶段: (1)上世纪70年代兴起的

STM32系列ARM单片机介绍

STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex-M3内核.按性能分成两个不同的系列:STM32F103"增强型"系列和STM32F101"基本型"系列.增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品:基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择.两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合.时钟频率72MHz时,从