我可能对计算机科学这个5个字有一些误解

故事背景
  1. 从来没有思考一下或者问问自己,什么是计算机科学?
  2. 所以对计算机有一些误解
  3. 科学也有一些误解

计算机

我以为看了《深入理解计算机系统》就真的懂计算机了。其实,是一点儿也不懂。停留在什么样的层面呢?知道。就好比一个智者,经历了沧桑,最后对我说了很多有哲理的话,因为我没有相应的经历所以我也只是听听,只是知道曾经有这么一个智者告诉了我某个道理,至于我理解了吗?应该是不理解的,不懂。也许直到有一天,自己有某个机遇,经历过了类似的东西,就会豁然开朗。

那停留在什么样的层面呢?

  1. 只是知道计算机大致架构体系
  2. 只是知道需要用数字化的思维来理解这个世界
  3. 只是知道用计算思维来跟计算机交流,可是什么是计算机思维呢?好像也从来没有 问过自己。
  4. 只是知道这些硬件,操作系统,编程语言,他们好像都是一种"设计",或者说更是一种行业标准规范,而这些标准规范来得是非常不容易的,因为需要大量的人力和物力去趟坑,最后爬起来的。
  5. 只是知道系统级编程和应用级编程。
  6. 只是知道系统软件就是对硬件的一个抽象,知道CPU,RAM,磁盘,网络。而网络就是一个I/O设备。
  7. 只是知道整个存储的架构体系。
  8. 只是知道问题的抽象,系统抽象和数据抽象的能力是比较重要的。总之,抽象事物的层级能力很重要。
  9. 只是知道计算机的基本概念。进程,线程,内存,寄存器,虚拟内存。

而这些基础的概念是怎么运作的,又是怎么影响程序的。都不理解。

知道一些计算机基本思想:

  1. 空间换时间。(内存和缓存的使用)
  2. 时间换空间。空间成为瓶颈,切分数据分批次处理。
  3. 分而治之。把任务切分,分开执行,既可以做到解耦,又加快了速度。
  4. 异步处理。消息中间件的使用。
  5. 并行。利用多核的优势同时处理一个业务逻辑。
  6. 离用户近一点儿。CDN。
  7. 一切可扩展。业务模块化,服务化(无状态化)。
科学

我以为小时候,说梦想要成为科学家。就明白什么是科学了。长大了,我发现对科学这个词是有一些误解的。以为动手抄写几行代码,跑成功了,就完事了。其实不是的。


反思

计算机

  1. 这种机器是建立在数学原理上的,是建立在已知事实上的。一般在使用或者编码过程中发现的问题,理论上都是可以解决的。至少需要培养自己这么一个信念,那怕是自己骗自己。

  2. 有事没事,还是应该写几行代码,好让CPU转一转,发发热,而不是一边想着变得优秀,一边又少实践,少练习,整个就是自己骗自己。还活在一种空想的状态中不能自拔,因为动手实践是一件痛苦的事情。

  3. 博览群书的前提是先读懂一本书,甚至这本书需要读两次。并且需要实打实用手把书中的代码敲一次,然后写写心得体会。而不是看看理论,就开心地以为自己会了。当需要动手做出一个功能来的时候,才真的体会到理论的无力感,就是因为动手少了,实践少了。

  4. 把每一个小demo都敲出来,然后反复地测试,记录结果,分析记录结果的原因,最后得到一个比较好的做法。

科学

  1. 科学需要观察现象。做大量测试,然后记录每次测试的结果,去分析记录的数据,最后得到一个规律性的结果。这个才是科学的定义吧。
  2. 满足科学的条件是很辛苦的,因为很多时候,写完代码是不想做过多的测试的,累,总想着还有测试工程师呢。交给他们吧。其实错了,当真正问题发生了,就特别尴尬。所以,无论是怎样的一个小功能,自己还是需要做非常完备的测试,这个时间和精力的投入是非常有价值的

小结
  1. 建立一种信念,相信计算机技术是可以达到自己预想的结果的,并且很稳定,如果实在不相信,那么请自己做大量的实验,甚至开启服务让它不知疲惫地跑上个几天几夜,看看出现了问题了吗。
  2. 无论怎样理论都代替不了实践。实践的越多,人与人之间的差距就会越大。
  3. 引用最经典的话:“我听过了,我就忘了;我看见了,我就记得了;我做过了,我就理解了”。
  4. 告诉自己动手实践看似慢一些,其实走的更快
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值