一,物的本源
在讲究可视化编程,提倡敏捷开发的今天,借助于各种集成开发环境和框架,我们可以很方便地开发以和部署应用程序。编程似乎不再是只有计算机专业的人员才能进入的特殊领域。只要多掌握几种语言、开发工具和框架,任谁都可以成为编程高手,这显然是一个误区。但怎样的编程方式才正确合理,其实每个人心中都有自己的考量。
就笔者的而言,喜欢探其本源,好奇心使然,毕竟探究事物的本质是人类的天性,小时候拆卸玩具,长大了分析某个工具,了解其幕后的原理的感觉往往是令人激动的。而计算机差不多算是人类最重要的发明了,了解其背后的秘密,相信每个程序员都有兴趣,但即便你拆开计算机的机箱,想真正了解他,那复杂的现代电路,还是让你难以下手,更何谈编写程序了,虽然很有难度的。但笔者仍然相信一切都还是有迹可循的。
“程序=数据结构+算法” 自上世纪七十年代以来,就是程序员之间口口相传的名言,事实也确实如此,笔者相信不管技术如何地进步,编程的本质自始至终没有发生太大的改变。 但那何是其本质? 笔者想就一副图说明一下:
这幅图第一次让笔者看清了,代码,方法,过程,工程以及组织间的关系。而第一步,语言只是工具,猿之于人,最重要的区别就在于对工具的运用,但不管对语言的膜拜还是漠视,笔者相信这仅仅只是一个开始。
第二步,“程序=数据结构+算法” 这是编程的本源,也是最初始的状态。任何与编程相关的工作都会落足于这一条。