打代码就类似写作文,一样一样的。或许经历写代码的人儿会懂吧!在打代码的过程需要时常的思索。为何要打这段代码,及代码跟前面的代码存在什么样关系,后面又需要哪些代码出来。有趣的是代码的编写存在着一定的不确定。例如:需求的变化,代码积累多了出现意想不到的结果,代码出现错误等等。
打代码前能够知道,预知代码的过程,将可以大大缩短打代码时间,及减少出错的情况。虽然这不是绝对的说法,不过,可以知道的是,如果不知道打出某一段代码是为了什么情况,则需要付出的代价会在代码的积累过程得以体现。例如:长时间的调试、寻找未知的GUB、难以维护的代码块、难以扩展的功能。
学语文与写作。是当年老纳难以做到的事。不管往事如何,也将成为历史。不过有一点不同的是,写作的题目由自己定,文章的情感也难以出现。在这多年的学习过程。发现读书是在获取他人处理成文字的知识。而现在老纳同样模仿前人,将知识化成文字传给后人。只是今非昔比。
打代码是从自己产生出来的过程,而《进出理论》表明,只出不进是难以长久的。 不信,那找出宇宙间的例子呗。为了理解代码的编写过程,代码的组织形式,代码的功能表达,代码的解决问题方式等等。同样是让自己学会打代码及提高打代码的水准。先模仿前人的代码,显然是个不错,代码主要会两样东西,会写、会读。在老纳的大学课程中,是没有代码阅读课程的,代码编写课程倒是常见的。
会读代码,自然能够如何写,但是对难度较小的代码是相对可行的。
会写代码,自然能够如何读,但是对代码量较小的代码是相对可行的。
如果要提高自己打代码的能力,需要读不同的代码,尝试各种编写代码的方式。
如果要提高自己阅读代码的能力,需要打不同形式的代码,以便应对各种代码。
现在的问题在于,打代码的课程及练习比较多,而阅读代码的课程是基本没有。为了提高开发的效率,减少重复代码的开发,让开发水准更上一层楼,则学习使用先人所留下的代码是个可行的行为。在开源项目中,有出现不少先人分享出来的代码。有理由总是让新人从头开始呢!站在巨人的头上往向前进,方是代码编写的道路。
这门代码课的目标,是让学生学生如何阅读先人的代码,从中理解代码的写法、代码的组织形式、代码的特性。代码会受编程语言的约束,当学生专注一门编程语言时,编写代码的过程会受影响。这样是不利于学生的编程代码的,有趣的是,职业招聘时总是专注某些编程语言的。而对于编写代码的方式本就可以多种方式。问题来了,本课程会选择哪些编程语言进行讲课呢!
本课程是从代码的角度出发的,因此不明显选择某种编程语言,而是使用不同编程语言对相同问题的代码写法,进行讲解。