编程完全有派系一说,拿面向对象和函数式编程就能举一大堆的例子,在细分一点。 JAVA 与 Erlang, JavaScript 与 Go 等等这些语言也拥有他们的拥趸,甚至一些激进人士视其为宗教。语言的兴衰实际上代表着时代问题的变化,因为开发人员的实际目的是解决用户的问题。
中国的智慧中有以史为鉴的说法,即站在当时的情境下,观察特定的事件的发生与影响,启发自己对现在情况的处理。现在的编程语言,开源工具,一系列的软件百花齐放,就像中国古代的诸子百家,苦心经营自己的学说好货与帝王家一样,希望吸引到开发者的青睐。自然开源工具以作为编码人员最能表达自身风格,思想的载体。但是注意,程式存在的目的首先是满足需求,以此为核心才能构造出程序员自身的特质。
即面对同样的问题,有同样解决功能的程序,不同流派的编码人员的程序会截然不同。
这包括看待问题视角的问题。
同样是寻找问题解集空间,不同的人从一开始学习接触的路可能相同,即使如此也会造成不同的结果,很多可能是有着正确的目标却误入歧途。
这在《列子·说符》杨朱的记载 中有载:是 “学泅而学溺”的体现。如何解决呢?
“归同反一,为亡得丧”
除去自己的杂念,行八正道中的正念,回归到编码的本质,是解决问题,这样就不在会有得失的说法了。
故在学习的时候,最重要的不是那些可以获得的结果,不是你获得的那些能力。这些都是会 泅 的体现,但是于求学泅者无益。重要的是学习使用的方法,求果的经历,又可以说是如何学会不溺水,如何感受泅水的方法。我看到释迦牟尼的故事,他顿悟最后决定普度众生,也不是直接把顿悟的东西告知,传法而非传果,四谛已经交由你手了,如何选择由自己决定。
而这个法门,就是派系的思想,古时候的思想存在于各个派系学说的寓言故事,学思著述中,呈现给帝王选择。现代的就在代码中,在这个互联网上存储的资源中。在这其中体现的原则哲学直接手书者不胜枚举,随便一搜就能找到,但是非理解的人不能领会到其背后的取舍。
在信息触手可及的时代,有效地资源就存在与众多信息之中,每个派系或许只有不断地留下摸索前进的方法,解决问题的知识体系(在广博的人类知识中取一瓢),才是对整个行业有效地财富积累吧。
附原稿: