编程的术与道之辩

来源:互联网 发布:java获取网站数据 编辑:程序博客网 时间:2024/04/30 03:19

 

新版三国上映好长时间了,,但是一直由于种种原因没能得看,作为一个三国迷不可不谓之遗憾也,真好这学期事情挺少,于是乎在学校的ftp站点上下下来(学校的网速真是相当给力啊),总体来说拍的还不错,,陆毅扮演的诸葛孔明相比唐国强而言也算是有所突破吧。电视剧中印象最深的一段对白莫过于孔明与姜维的术道之辩,孔明曰:凡兵法战阵,变换万千,但是道才是根本,术乃表象也,,感觉此番言论及其真切也。

最近一年来一直在用业余的时间进行编程的学习,,感受颇多,,前段时间终于拜读完了Bruce Eckle的经典巨著《Thinking in Java》,中文译名为《Java编程思想》我想译名中的最关键的字应该是思想二字吧,,的确作为一门优秀的编程语言Java自从推出后得到了极大的发展,一些书籍也基本上是以Java的语法为重点,是教你如何利用Java语言去写程序,但是你可能根本体会不到这门语言的精髓所在,或许你能利用Java的GUI编写一些小程序,但是我想你可能不会认识到程序的内部的运行原理,如果对多态,动态绑定,继承,反射,动态代理等技术有着深刻的体会的话我想你根本没有认识到Java的精髓所在,,或许你可以熟练的运用一些开源框架进行开发,但是如果你对那些开源框架没有足够的认识,当面对一大堆的异常的时候我想你也许会手足无措吧,,这或许就是编程中的术与道吧,当你对面向对象的思想有着深刻的了解认识,无论什么那一种面向对象语言我想给你半个月的时间你都能学习个大概,再给你一些类库你应该就可以进行简单的开发了,古人云形而上者谓之道,形而下者为之器也,我想其中所包含的内在道理不言自明了,

由此联系到其他知识的学习,就像是操作系统的学习,有的人觉得很难学习,,但是当你剖开操作系统外面那层shell,系统的内部或许原理都类似,,进程,线程的概念,内存管理,文件系统,进程之间的通信与调度,我想无论是linux还是windows亦或是uniux亦或是vxworks等等,,这些基本的原理我想大概都是相通的,而这些原理一般都是建立在一些数据结构与算法的基础之上,我想这或许也就是一些大公司招聘的时候对应聘者的基本知识,数据结构与算法很看重的很重要的一个原因吧,因为从计算机发展的历史来看无论什么系统我想都是在已有的一些技术积累的基础上进行的改进,如果没有伽利略,开普敦等科学先驱的工作,我想牛顿或许也不会获得如此成就的吧。

关于编程的术与道之辩,我想金庸的武侠小说也给出了更为详尽的比喻,在武侠小说中,华山两位前辈岳肃和蔡子峰因时机巧合,得以一窥当世无上武学密籍,但却又因见解不同,一人主张以修气为本,教导弟子重修气,另一人却以为因当以剑法为主而教导弟子重剑法,华山派至此竟分裂为剑、气二宗。二宗各持己见,终于水火不容,兄弟阋墙,同门操戈!我想一开始的时候三五年之内或许练气士肯定非练剑士的对手,但是八年九年之后,练剑士肯定非练气士的对手,,因为有根基所在,无论什么招式都可以进行心随所动,这或许就是独孤求败到最后的时候可以用柳条为剑得缘故吧,由此而及到编程的学习,,我开始的时候一直觉得在java编程领域里学习那些框架,struts,hibernate,spring等这些框架可以达到事半功倍的效果,的确这些框架带来了无与伦比的开发的简易性,但是却忽略了java语言的精髓的学习,对于java的多线程,持有对象的容器等不知云云,虽然是会用了很多东西,但是这些东西,如果有两个月的时间不去碰它,可能再去用的时候就会觉得相当的生疏,到头来还是不知云云,什么都没学会。。。

所以我想学习的曲线应该是这样的,先学会基础的东西,不要觉得自己写了一个小程序就很了不起,自己连java的多线程是什么都不知道就吹嘘自己是java编程高手的是肯定只是在吹嘘,,然后对于一些设计模式有着深刻的理解,然后再去接触那些框架就是件很轻松的事情了,虽然这篇文章没有讲太多编程的事情,反而更多的是武侠,电视剧的台词,但是我想理解的人应该都会知道我要表达的意思,

原创粉丝点击