孩子特别喜欢学计算机,我觉得这很好。可能我的思想比较传统,觉得这总比去学什么唱歌跳舞要强。 可是,孩子上了初中,我就把他的编程课给停了。 孩子特别委屈,我就跟他说,没事的,你以后要学计算机有的是时间和机会,而且只要你把数理学好了,学计算机不会比别人差。反倒是你现在正处于打基础的阶段,要把时间和精力都到放到基础学科上面去,基础打好了才能走得更长远…… 孩子非常不能理解!弄得我一个上大学时才接触到计算机的糟老头绞尽脑汁地跟他解释计算机的基本原理。 计算机分硬件和软件,硬件就是指所谓的装备,这个领域就跟家电、配件一样的,你学好了可以去做硬件的更新换代,比如笔记本电脑的散热装置和技术问题。计算机的软件则主要指基于语言转译的算法实现,比如你一个核桃和另一个核桃放一起是两个核桃,这是语文描述,用数学描述就是一加一等于二,计算机语言就是采用二进制的与非逻辑进行编码,比如你手绘的二维码就是这个道理,一个描黑的单元格和空白的单元格各代表0和1,然后经过一种特定秩序的组合,就形成一个独特的二维码。 计算机语言为什么叫语言呢?就是跟我们的语文一样的。笔画构成文字,文字构成语句,语句构成文章,文章构成文集……计算机不也是如此吗?信号(指令)就是书写笔划,然后多个指令构成一个代码,多个代码构成一个模块,多个模块变成一个链条,多个链条构成一个平台…… 你们现在学的编程其实就是跟你们玩乐高一样,就是老师教你们怎么去组装已经准备好了的模块,体验体验就行了。真正要把计算机学好,要把数理学好,要夯实自己的逻辑思维能力。等你的逻辑思维能力训练好了,再花点时间去学一些计算机语言工具,熟悉一下计算机的应用环境,学计算机是能够事半功倍的。 磨刀不误砍柴工,别幻想自己可以成为某一个领域的神童,真正的大神都是千锤百炼出来的。其实你以后就会明白,学计算机真正牛逼的不是那些程序员,而是架构师。什么是架构师呢?就是根据一个应用场景或者一个复杂的功能需求,去做功能和结构拆分,通过逻辑和功能的拆分与架构完成整体的设计要求。 打个比方,架构师是项目的总设计师,程序员则是某个具体功能的实现者,相当于众多施工者中的一个。 怎么样才能成为一个优秀的架构师呢?超强的逻辑思维能力是必不可少的,当然过硬计算机技术能力也是必要的。不然你根本理不清一个复杂项目的架构,更无法去统筹兼顾。 打个比方,你善于生产制造发动机、轮胎、方向盘,不代表你可以生产出一辆好汽车。但你要想成为一个好的汽车产品经理,对发动机、轮胎、方向盘这些东西都需要有所了解。 总之,你要学好计算机,就有较强的逻辑能力,逻辑能力其实也就是合理的组装与构建能力,跟排列组合一样,这个和那个放一起、这个放前面那个放前面,分别会演变出什么结果,然后功能和功能以什么样的逻辑串联到一起能完成一个什么样的复杂动作,各个复杂动作怎么组合能实现你设计的目标…… 孩子陷入沉思之中,我又继续跟他说,不是不让你学计算机了,而是为了你将来能把计算机学明白,所以希望你现在努力去打基础,跟你要建房子一样,你得先了解地基、砖木、钢材、泥工、木工、电工等各个基本功能,然后还有懂点材料力学、结构力学,最后才是装修美学…… 好说歹说,总算跟孩子唠得差不多明白了。真是苦了我这个连PPT都做不好的老爹呀!
