zoukankan      html  css  js  c++  java
  • 计算机软件中的思维方式

    术业有专攻。但是一些技术思维是可以通用的。下面提到了两种可以长远应用的哲学方式。

    • 过滤器思维

    编程的过滤器思维。计算机程序本身不创造数据,只是变换数据和改变表现形式。

    一个camera应用,只是将光的影像转为模拟或者数字的信号并进行后续的所有处理。一个办公应用。所用的字都是我们输入的。UNIX编程哲学中,利用管道可以很简单地把他们连接起来。我想这个源自上世纪60年代的思维方式地确有点强大。

    真实世界里面的编程其实就是管理复杂度的问题。能够管理复杂度的工具都是好东西。但是,当这些工具的作用不是控制而是增加复杂度的时候,最好扔掉,从零开始。永远不要忘记这一点,它是unix智慧的重要组成部分。

    • 提供机制而不是策略

    在大型的系统设计中,比如操作系统设计,软件架构需要有一个原则:提供机制而不是策略,具体的细节个性化交给实际应用者自主。但是对于普通人的困难在于,我们很难去理解一个专业行业中应该提供的特定的机制。

     

    技术在有些时候并不是阻碍我们发展的唯一瓶颈。在计算机界,我们可以接触到太多的开源技术,或者说是开源标准。这些标准可以是学习的最权威的资料,可惜我们不能够找到一个切入点。冰冷冷的文字转化不成自己的思维。这才是问题所在。

    所以,对于从事技术行业的人,来说,我有以下建议:

    第一步:提出正确的问题。

    我们很容易提不出正确的问题。或者发现不了正确的问题。这其实是一件可悲的事情。因为我们的处境和视野,或者说出身就决定了我们的局限。提出正确的问题也变成了一种奢望。

    第二步:了解该领域的基础构架。

    想要了解一项特定的技术,必须先要去接触这个行业的各个方面,从一个局外人的角度,很难去看到本质。只有调查才有发言权。

    【完】

    2016年中秋节前 praiseslow

  • 相关阅读:
    阿里知识图谱首次曝光:每天千万级拦截量,亿级别全量智能审核
    LSTM简介以及数学推导(FULL BPTT)
    深度学习算法索引(持续更新)
    学界 | Yann LeCun新作,中日韩文本分类到底要用哪种编码?
    Android 常见内存泄漏的解决方式
    集成支付宝支付
    【4.29安恒杯】writeup
    sdut 3-7 类的友元函数的应用
    Linux下libsvm的安装及简单练习
    iOS 使用腾讯地图显示用户位置注意事项
  • 原文地址:https://www.cnblogs.com/praiseslow/p/5871464.html
Copyright © 2011-2022 走看看