• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wangbenjun5
V2EX  ›  程序员

越来越能理解在计算机中数据的重要性

  •  1
     
  •   wangbenjun5 · Aug 14, 2021 · 5039 views
    This topic created in 1744 days ago, the information mentioned may be changed or developed.
    最早学编程就听说过一个说法,编程=算法+数据结构

    其实想想算法其实经常用的就是那些,除去特定领域(比如 AI ),最要的还是数据,以及数据的存储结构。

    最常见的数据存储就是数据库,大多数每天干的 CURD 就是围绕着数据库各种操作,大多数人处理数据用的最多无非就是数组、Map 这 2 个结构。所谓算法,用的最多估计还是循环遍历、查找、排序等等。

    程序员每天变着法子对这些数据各种处理,得到一层又一层的数据,基于这些数据再得到另一层数据。。。
    26 replies    2021-08-16 11:14:34 +08:00
    gravitybox
        1
    gravitybox  
       Aug 14, 2021
    要和实际业务结合
    Cbdy
        2
    Cbdy  
       Aug 14, 2021 via Android
    冯诺伊曼:程序也是数据啊
    iloveoovx
        3
    iloveoovx  
       Aug 14, 2021
    你就理解相当于人脑的记忆,你说重要不重要
    yangzhezjgs
        4
    yangzhezjgs  
       Aug 14, 2021
    数据就是现实世界里各种信息在计算机里的映射
    abcbuzhiming
        5
    abcbuzhiming  
       Aug 14, 2021   ❤️ 9
    数据结构在编程中从来都是放在第一位的,Fred Brooks 在《人月神话》中说:

    向我展示你的流程图,而隐藏你的表结构,我依然会非常迷惑;如果给我展示你的表结构,通常我就不需要你的流程图了,因为它们显而易见
    levelworm
        6
    levelworm  
       Aug 14, 2021 via Android   ❤️ 1
    数据结构我觉得是和算法绑在一块的
    wangbenjun5
        7
    wangbenjun5  
    OP
       Aug 14, 2021
    cpstar
        8
    cpstar  
       Aug 14, 2021
    单纯的数据有意义也没有意义。有意义在于它确实能够描述客观状态,但是没有意义在于它只能描述某一时刻的状态,而随着时间的推移,这些数据就变得无用——数据有自己的生命周期。
    加上业务的数据,就变得丰满,可以随着时间的推移,产生随动的变化——生命周期得以延长。

    当然后边还有数据管理治理等等各种维度的东西。但是根本上讲,无论电子化与否,人类社会的存续既是数据的存续。
    raaaaaar
        9
    raaaaaar  
       Aug 14, 2021 via Android
    数据抽象+过程抽象,看语言范式吧
    Jooooooooo
        10
    Jooooooooo  
       Aug 14, 2021
    业务编程主要是

    从哪里拿数据, 怎么聚合, 如何返回
    lixiang2017
        11
    lixiang2017  
       Aug 14, 2021 via Android
    有点行尸走肉的感觉
    micean
        12
    micean  
       Aug 14, 2021
    @abcbuzhiming

    以前我也是这么认为的,直到我遇上了屎山
    aguesuka
        13
    aguesuka  
       Aug 14, 2021
    我比较怀疑 "编程=算法+数据结构" 的正确性. 合理的应该是 "编程=算法+数据结构+副作用", 比如定时删除日志的代码只有副作用. 但即使加上它也是正确的废话, 就像程序员要学好英语和数学一样, 其实比它更重要的还有很多.
    James369
        14
    James369  
       Aug 14, 2021
    数据是信息、是情报、是知识、是智慧。计算机依然只是那个工具,手段。
    iOCZ
        15
    iOCZ  
       Aug 14, 2021
    软件就是产生数据和显示数据
    minikyu
        16
    minikyu  
       Aug 14, 2021
    AI 也是数据为王,搞深度学习的就知道,一大半的问题可以通过增加数据样本的方法解决。谁家的数据集够大够全,谁的人工智能就搞得更好(说的就是谷歌)🤣
    chenshun00
        17
    chenshun00  
       Aug 14, 2021
    我觉得模型越来越重要了,可能某一种形式上模型就等同于数据,现在 99%的人都是面向数据库编程(我也是),当然好理解,写起来应该是人花点时间都可以看懂,但是代码的复用率低的不行,搞得几年,就感觉是重复了。

    但是领域模型又有点看不明白。麻木了
    xe2vherd
        18
    xe2vherd  
       Aug 14, 2021
    其实大部分业务程序都是对「数据库」中数据的展示。
    handuo
        19
    handuo  
       Aug 14, 2021 via Android
    @minikyu 他们那个上亿的 JFT 数据集用来发文章完全就是玩赖啊!
    Jface
        20
    Jface  
       Aug 14, 2021
    数据, 数据 科幻的未来不是各种数据的应用吗
    脑后插管输入知识, 数据进入晶体管实现永生
    J55s5
        21
    J55s5  
       Aug 14, 2021
    一直做的客户端开发,使用的架构都是 MVVM,利用数据来数据驱动视图
    musi
        22
    musi  
       Aug 14, 2021
    计算机为什么叫计算机?说明这个机器是用于计算的,计算的对象是什么?那不就是数据。
    建议去看下爱民老师的《程序原本》
    gadzookssY4
        23
    gadzookssY4  
       Aug 15, 2021
    我是做前端的,最近在开发一个交互相对复杂的页面,就有你这个体会
    passerbytiny
        24
    passerbytiny  
       Aug 15, 2021
    知道面向对象开发最大的好处是什么吗,把编程分为开发类库和使用类库进行业务逻辑开发。前者的核心是算法+数据结构,后者的核心是对象——又叫做数据。
    abcbuzhiming
        25
    abcbuzhiming  
       Aug 16, 2021
    @micean 如果数据结构本身设计没问题,那清理屎山的最好方法就是重写,但是往往屎山是屎到数据结构都被污染了,这就很难恢复了
    rpman
        26
    rpman  
       Aug 16, 2021
    ai 最重要的也是数据.. 花式清洗数据
    做 ml 底层优化的主要思路也是从数据依赖性的角度
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1171 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 75ms · UTC 23:39 · PVG 07:39 · LAX 16:39 · JFK 19:39
    ♥ Do have faith in what you're doing.