有时,编程就像写作一样
无论是编程还是写作,都类似于一种创作。通俗一点说就像炒菜:用已有的材料,在一定的规则基础上,根据经验和灵感进行随意挥洒。
暂且不论编程状态是个什么东西?先来说说如何会有好的编程状态。
- 熟练掌握语言
就像炒菜要对食材很了解,写作要对文字很了解,编程要对所使用的编程语言很了解。
需不需要全部都了解呢?其实能够轻松Cover你所编的东西就足够了。如同:炒红烧肉,不需要对鱼肉很了解;写抒情散文,不需要对电子专业名词很了解。 - 有一定的经验
大家都有走路的经验,走一条很熟悉的回家路,也许你都不需刻意,想着事情或唱着歌就回家了。走一条陌生的路,你不由地就在彷徨,不断确认着路标、修正着自己的方向,最终探索地走向你的目标。
编程这个事情容易出Bug,如果你对编的东西没有多少经验的话,没写多少就想运行一下,怕写成一坨翔,心里没底。程序猿被戏称为码农,也就是因为很多时候,细小的程序逻辑都很类似,重复性很高,如果能有些经验,能像种地一样不假思索,就该如此,效率自然高。 - 胸中有个全景
让你去伐些木头用来造船,即使你再有力量(熟练掌握了语言),技巧再好(经验老道),砍错了树木也是无济于事的。比如需要杉木来造船,你砍了一堆檀木,砍得再多又有什么用呢?(况且檀木那么贵,造船你傻么?)要编的东西无论大小,都应该在胸中有个全景,有目标并且有设计。 - 专注
专注和创造力之间有着诡异的关系(需要一篇专门的文章好好聊聊)。当你无比专注的时候,你在不断修正着你那已经很漂亮的设计,精益究竟,锦上添花,不觉间工程就插上了艺术的翅膀。这时,信手拈来、化腐朽为神奇都不再是小说里面的情节,这些都可能发生在你身上。
如果你具备有了上述四点,我想说你必须会有好的编程状态,毋庸置疑。
呵呵,如何能具备上述四点呢,需要多久能具备呢?不好意思,这个有点像问诊一样,因人而异,每个人天赋特点不同,实难准确回答。
但是!!!有一剂方是万灵丹,相信大家都不陌生——10000小时原理。你有规律地编程10000小时,你一定会有极好极好、非常牛逼的编程状态!
(其实也不难,这样的人还真不少,每天8小时,一年:360* 8 = 2880小时,3年:3 * 2880 = 8640小时。有规律,好好编程3年多而已~)
那时候,你会发现,所谓的编程状态就是:
一旦开始,噼里啪啦,思如泉涌,难有竭时!
待到完时,不由感叹,此程(program)只应天上有,人生能得几回闻 : )