好程序员:在编程冰冷的世界里,码农有何价值?

|本文由好程序员特训营编辑

|作者:好程序员

作为码农,你有认真反思,或者认真思考过一些深层次的问题吗?

码农是一种游离于在二维世界(二进制)和人类现实世界的之间的一种奇异的生物。

人类现实世界是个很神奇的世界,很多东西经过抽象可以降维为二维世界的重复计算是非常具有经济效益的,理论上,任何逻辑存在重复性的东西都可以通过部分抽象转换为计算机的重复劳动,找到这种映射或者转换关系,就是码农这种生物的唯一生存价值。


好程序员:在编程冰冷的世界里,码农有何价值?_第1张图片

码农很多时候把简洁容易理解的代码成为某种程度的艺术,实际上这不过是一种错觉,所谓的艺术性,无非就是站在人类的角度,最大限度地使用了某种计算机语言的特性而已。程序结构性的设计(比如封装),本质上是协助了团队完成更好的交流和沟通,因为人脑的缺陷,决定了在规模以上的问题上面,须要利用团队来解决问题。另一方面,计算机语言的发展,在很大程度上可以弥补工具使用上存在的巨大鸿沟,比方说,使用高级描述性的语言,在某些方面取代低级编译型的语言,在某些领域(比如人机交互界面)方面的带来的便捷性,就像使用挖掘机取代铲子带来的开发效率提升一样。


好程序员:在编程冰冷的世界里,码农有何价值?_第2张图片

计算机算法的发展是另外一种人类世界和计算机世界映射关系科学的发展,好的算法设计看起来也像是艺术品,当然这也是相对于人类世界而言的,计算机这个冷冰冰的世界,只存在我费了多少电的困惑。

需要编程的问题都是从人类现实中来,映射之后到计算机世界里面去运算,然后运算结果再映射回人类世界,什么是最为重要的事情?是在有限的时间,资源,人力成本,和经济效益下面的一种妥协的解,所谓设计,选型,经验,模式,团队,管理,甚至后勤服务,无外乎为这种妥协服务。


好程序员:在编程冰冷的世界里,码农有何价值?_第3张图片

在众多计算机编程的相关实践中,重构是最为重要的一种活动,重复性(因为计算机就是最擅长处理重复性的)是重构的基石,只要存在重复,就可以重构。重复的代码可以重构(代码级别重构),相同的模块可以重构(模块级别重构),重复的设计可以重构(设计级别可以重构),语言的特性也可以重构(重新开发语言),平台可以重构(平台重构),重复的软件开发过程可以重构,交互当然也可以重构。重构之所以重要,是因为他在哲学意义上是一种总结和升华,日当三省吾身,每一天的点滴积累和升华,可以造就你到达越来越高的境界。

一个“大神”,当然可以在最短的时间找到最优的解决问题的办法,也许在效率上不是最优的,也许在设计上也不是足够弹性的,但他在这个程序可以要求或者可以理解的范围之类一定是稳定,可靠,可控的。

欢迎关注【“好程序员”微信公众号】毕业工资不过万,不收学费,极致高薪,最强保障——

你可能感兴趣的:(好程序员:在编程冰冷的世界里,码农有何价值?)