V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wangbenjun5
V2EX  ›  程序员

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

  •  1
     
  •   wangbenjun5 · 2021-08-14 10:34:39 +08:00 · 4491 次点击
    这是一个创建于 1198 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最早学编程就听说过一个说法,编程=算法+数据结构

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

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

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

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

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

    从哪里拿数据, 怎么聚合, 如何返回
    lixiang2017
        11
    lixiang2017  
       2021-08-14 12:57:42 +08:00 via Android
    有点行尸走肉的感觉
    micean
        12
    micean  
       2021-08-14 13:22:10 +08:00
    @abcbuzhiming

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

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