• 浅谈 计算机软件科学和技术


    计算机软件技术 的 核心技术 是 :

     

    操作系统 、 编译器 、 关系数据库 、 图形学  。

     

    操作系统 包括 操作系统 和 虚拟化,  虚拟化 又包括 虚拟机 和 容器  。

     

    在 4 个 核心 技术 中,  图形学 是 最难的 。

    如果要 按照 难度 从高到低 排一个 顺序,  那就是 :

     

    图形学 -> 编译器 -> 操作系统 -> 关系数据库

     

    搞一个 图形学   要 50 年,

    搞一个 编译器   要 30 年,

    搞一个 操作系统  要 20 年,

    搞一个 关系数据库  要 10 年 。

     

    图形学 是一个 数学问题 。

    图形学 = 60% 的 数学  +  40% 程序设计,   有网友说是 硬件问题, 好吧, 硬件问题 也包括在 程序设计 里 。

     

    跟 图形学 比起来, 操作系统 就像是 增删改查(CURD) 的  业务系统  。

    操作系统 的  门槛积累 在于 对 硬件 的 了解  。

     

    编译器 具有 很高 的 逻辑复杂性,  编译器 的 逻辑复杂性 高于 操作系统,  编译器 是 操作系统 之母 。

    有一个 好的 语言,   写 操作系统 并不难 。

     

    编译器 的 复杂 来源于 语言语法 的 复杂,  高级语言 复杂的 语法特性 会让 编译器 更加复杂,

    编译器 的 复杂 还 来源于 优化 ,   即 编译器 对 代码 的 优化  。

    优化 的 复杂 在于 需要 编译器 理解 代码 的 意图,

    优化 的 门槛积累  在于 对 操作系统 和 硬件平台 的 了解 。

     

    关系数据库 是 4 个 核心技术 中 的 小弟,  关系数据库 的 复杂 在于 数据存储格式 和 检索方式  。

    关系数据库 诞生 和 兴起 的 年代 是 以 机械存储器 作为 外部存储器 的 年代 。

    所以, 关系数据库 需要 以 顺序存储 为 基础,   但要 兼顾  查询 的 效率,  又要 兼顾 插入 修改 删除 的  效率 。

    在  内存  并不大,  也没有  快速的随机存储器  作为 外部存储器 的 情况 下,   要 达到这些 要求,  需要 精巧 的 设计,

    这个 精巧 的 设计 是 复杂的,   包括 数据存储格式, 检索(查询)操作,  插入 修改 删除 操作 。

     

    在 海量内存 和 快速的随机访问的外部存储器(如 固态硬盘) 普及 的 时代,   高速 的 离散存储 成为 可能  。

    在这样的趋势下,   也许  关系数据库 会 逐渐 淡出 历史舞台,  取而代之 的 是  NewSql 数据库(离散存储 数据库) 。

    可以参考我之前写的一篇文章  《我发起了一个 .Net 平台上的 NewSql 数据库 BabanaDB》

    https://www.cnblogs.com/KSongKing/p/10255420.html     。

     

    4 个 核心 技术 中, 图形学 更像 科学  。

    图形学 更像 科学, 也 最难   是有 渊源 的 。

    图形学 肩负 着   虚拟现实  的  历史使命,   虚拟现实 就是 将 现实世界 映射到 计算机世界 。 这是 图形学 的 先天属性 。

    所以, 图形学  最像 科学, 也是 最难的,   是 自然而然 的 。

     

    未来, 在 白盒人工智能 中,  图形学 是  基础 科学 和 技术,  白盒人工智能  就是  虚拟现实,

    就是 对  现实世界  建模,   用    模型   来 描述  现实世界  。

    白盒人工智能 是     下一代     计算机科学技术   的  基础技术 和 核心技术,  是 必争 的 高地  。

     

    说到这里, 大家会想起 现在 的  人工智能,  咦 ?    为什么 不把 人工智能 列入到 核心技术 里  ?

    现在的 人工智能 是 黑盒人工智能,  跟 游戏 AI  差不多,  只是做的更高级一点,  本质上是一样的  。

    打个比方,   就像 游戏 有   假 3D,  真 3D,  

    机器学习   就像  假 3D  +  黑盒,

    黑盒 就是   不理解 模型,    而是    提取特征 -> 学习特征 -> 适应特征  。

     

     

     

  • 相关阅读:
    常见web安全攻防总结
    想使用消息队列,先考虑下这些问题
    Nginx基本属性配置详解
    mysql 数据分析如何实现日报、周报、月报和年报?
    SQL优化
    SQL优化例子
    工厂模式,从第三方登录说起
    最常见 200+ 面试题答案全解析-面试必备
    使用sslsplit嗅探tls/ssl连接
    选择指定图层上的所有实体
  • 原文地址:https://www.cnblogs.com/KSongKing/p/10326733.html
Copyright © 2020-2023  润新知