计算机简史:从分布式到中心化的博弈螺旋

2023-10-30

640?wx_fmt=gif

作为应用程序开发商,我们有责任为用户的隐私和信息安全考虑。用户应该拥有控制自己信息数据的权利。这些用户数据应该在初始化的时候就被加密和保护。

640?wx_fmt=jpeg作者:Eric Elliott。书籍《函数式编程的兴衰》和《编程JavaScript应用》的作者。他组建并且指导加密技术科研团队的项目,并且为Adobe Systems,Zumba,Fitness,The Wall Street Journal,ESPN,BBC等知名企业提供专业知识服务。

翻译:王琳姗

审校:唐晗

出品:碳链价值(ID:cc-value)
当我们在计算机领域提到「去中心化」时,它对于不同的人有不同的寓意。被「去中心化」的到底是什么东西呢?在加密技术行业里,当一个人提到「去中心化」的时候,他可能指的是以下几个东西:
  • 权限

  • 组织管理

  • 计算

  • 金融手段

  • 财富

我们将会从不同的角度来看待去中心化这件事情。用户权利、隐私、安全性都是重点探讨主题。
首先,什么是分布式计算?为了更清楚的了解它,我们先来看看集中式计算是什么:
集中式计算是:关键应用程序服务是通过和中央服务器进行交流之后完成的。不同的用户在不同的地点使用相同的网络地址来获取计算资源,比如数据存储和处理。
从集中式计算的定义,我们可以推出分布式计算的定义:
分布式计算是:关键应用程序服务是由在分散网络中的独立计算设备完成的。如果你不能够通过停用一个服务地址来关闭所有核心程序功能,那很大几率这就属于分布式计算。

 01 

极端的集权化:主机和分时操作技术

1950年以前,数学、逻辑和计算理论为计算机时代打下基础。1940年至1980年间,计算机行业被资金雄厚的大公司垄断。
在那个年代,计算机行业是极端中心化的。早期,计算机市场被大型计算机占领。在当时,一台计算机就有几个房间那么大,而且一次只能供一位用户使用。正是这些限制,使得当时的计算机行业非常中心化。
分时操作技术和像UNIX(由Bell Labs在1969年研发)这样的多用户操作系统开始慢慢改变这个行业。第一个分时操作系统在1960年被研发出来。其中一个最大的优点就是用户之间可以通过快捷信息传递系统共享文件和发送邮件。
多任务处理特性的其中一个关键推动力就是因为早期的电脑只能允许一位用户进行系统操作,人们想要打破这种局限性。
像UNIX这样的多任务操作系统,允许多名用户在同时使用同样一台电脑。系统会在各个用户使用的程序中自动进行任务切换。理想状态下,用户不会觉察到切换(但是当系统负荷过重时,用户还是能察觉到的)。多任务操作系统和简易终端(本质上如没有自己CPU的键盘和主机并且内存被存入一台电脑)是计算机权限“去中心化”的第一步。
1960年到1975年,电脑由“庞然大物”变为“小巧玲珑”。个人计算机时代即将拉开序幕。

 02 

极端的去中心化:每个人都有自己的计算机,可是之间没有信息共享

1970年,个人计算机革命开始。到1980年的时候,个人计算机逐渐进入大众视野。这时候计算机行业初次体会到了分布式计算的感觉。人们逐渐舍弃简易终端机,每个用户都拥有了一台属于自己的计算机。他们拥有自己的内存,自己的CPU。计算机变得足够小巧和便宜,让民众愿意购买一台计算机在家里使用。但是,大部分家用计算机都没有与其他计算机相关联。人们只能通过实体存储设备比如磁盘、卡带等工具来分享。与其说这些应用“分散”,不如说他们“支离破碎”。
在1980年前后,许多家庭进入到了计算机市场。但就在这个时候,计算机的普遍功能被个人计算机的第一个软件比下去了:电脑游戏。到了1990年,27%的美国家庭拥有一台普遍功能计算机,可30%的美国家庭拥有任天堂娱乐系统。
1980年左右,个人计算机之间很少进行联系。1983年,调查公司Louis Harris & Associates在美国成年人当中进行调查,公司询问这些美国公民是否在家中拥有电脑,如果有的话,他们是否通过电话线传送信息。结果显示,10%的美国成年人拥有个人电脑,其中14%的人曾经使用调制解调器发送或接收消息。在1980年到1995年之间,大部分使用调制解调器的用户都没有直接联系网络服务商。这时本地电子公告牌系统(BBS)占据巨大的市场份额,有些BBS甚至提供基本网络服务(比如电子邮件)直到1995年前后。
PS:第一个BBS系统于1978年在芝加哥上线,它是由Ward Christensen 和Randy Suess 创立的。对于早期的互联网使用者,XMODEM协议允许用户发送网络邮件和使用Usenet网络。Usenet和电子邮件是最早的计算机非集权化产物。

 03 

去中心化:开放式网络与早期非集权化应用

也许网络时代正在默默的等待着它的第一个轰动世界的应用:World Wide Web。在1990年,Tim Berners-Lee发明了第一个网页服务器和浏览器。现在,你依然可以使用Tim Berners-Lee创立的世界第一个网站。
到了1995年,14%的美国成年人都可以上网,但是还是有42%的美国成人从来没有听说过互联网。
在那之后,事情有了很大的转变。截至2000年,60%的美国家庭拥有至少一台电脑。46%的美国家庭可以上网。到了2010年,互联网已经到达了80%的美国家庭。
Trend Spotting Clues在《分布式计算的力量》(The Power in Distributed Computing)中写道:
在1980年-2000年间,软件是一切;从2000年至今,网络是一切。  
网络是这世界上最大的非集权应用。网络从来不属于一个人,也不受一个人的控制。任何人都能启用一个网络服务器,在上面发表自己想要的内容;任何人都可以使用他们想要的浏览器。但是在现有的网络体系下,内容本身是集权化的。这在不远的将来可能改变。
在世纪之交之际,非集权协议如电子邮件和Usenet通过计算机被大力推广。同时,一些点对点应用如Napster, BitTorrent, 和Tor 也被推广。Sean Parker 与同伴创立了Napster,并且之后出任脸书的CEO。
在1990年到2003年之间,全球超过20个机构为人类基因组计划作出贡献,目标在于得出人们所有的DNA序列。这个任务被当时的批评家认为是可能需要100年,甚至更多的时间才能完成的。但是通过共享数据和计算机资源以及借助飞速发展的科技创新,人们在13年就完成了这项计划。
这些展现了非集权应用的伟大前景,也透露了它能有改变世界的力量。
Napster的出现彻底改变了整个音乐行业的核心产业模型,并且它让世界看到了非集权化应用将在未来会有多么重要的地位。
与此同时,网络发展的无比成功,它对于人们来说有更大的吸引力。在2000年左右,人们开始以网络为基础,建立受欢迎的应用。起初,人们只是想建立一个新的媒介,没想到却发展成了应用平台。现如今,浏览器有无比精致的操作系统,提供上网、用户界面、设备权限、相机和麦克风等服务。
虽然别的系统可以挑战网络平台的技术能力,但是网络还是现有最普遍的应用平台。这使它成为计算机非集权化的重要基础。
但是有一个问题:网络平台属于主从式架构,网络浏览器并没有内置去中心化服务。不仅如此,人们暂时还未设想这些服务会是什么样子。
正因如此,网络应用程序的创造者再次回到了通向中心化的道路。

 04 

再中心化计算机:网络应用和云计算

在2004年至2010年,社交媒体网站生根发芽。今天,用户平均每天都会在社交媒体上花费数小时。不幸的是,这意味着我们今天创造的内容,我们大部分的网上足迹,在个别应用程序集中留存,比如照片墙,脸书,推特,抖音等等。
这带来各种各样的问题。如果我们想要退出这些平台却想要留存这么多年攒下的内容和好友该怎么办?如果这项服务突然中止了怎么办?对于大部分用户来说,意味着即将失去在这个平台上所有的信息数据,以及人脉资源。他们的社交网络——没了。发布的消息,照片,视频都没有了。这种损失是灾难性的。
再有,如果这些敏感的、私人的信息数据泄露了,那对于用户来说是非常可怕的。
云计算为百万用户提供了便利,人们将自己的信息传到云端。但是这些数据都集中储存在不受用户控制的“柜子里”,而不是在各个应用里。

 05 

现代去中心化应用(DApps)的前景

如果能自己管理用户档案,在不同应用之间资源共享该有多好。只需点一个按键就能快速登录,再也不需要在注册每个应用的时候重新设置用户名和密码。再也不用担心密码被盗或信息泄漏了。
新型网络服务比如3Box和Tim Berners-Lee的Solid 想要简化我们的生活。记得Tim Berners-Lee吗?那个发明网络的人,想要再次创造“网络”,只不过这一次,他想要把网络建立在去中心化构架上。
 作为应用程序开发商,我们有责任为用户的隐私和信息安全考虑。用户应该拥有控制自己信息数据的权利。这些用户数据应该在初始化的时候就被加密和保护。
用户应该有权利允许或收回应用访问自己数据的权利。
用户应该有权利控制自己的社交图谱。
用户应该有权利控制自己的朋友圈,照片,视频,和数据。

 06 

核心DApp服务

新DApp结构的核心计算服务包括:
  • 加密货币交易:价值的基础。这些交易允许微支付流,去中心化服务不被中央个体控制,能自我运行。

  • 加密货币交换:使用智能钱包直接支付协议费用和区块链手续费。这样用户就能在享受去中心化服务的同时,无需担心支付操作,也不用直接从口袋里掏钱。

  • 用户钱包:安全的验证和授权过程。用户再也不会担心自己丢失密码。

  • 去中心化身份:使用DApps时,你的身份可以不费力的伴随你在各个应用之间。

  • 去中心化用户的信息数据:允许、撤回或拒绝访问你用户信息数据的权限。将所有用户的网络身份交给他们自己管理。并且允许用户根据不同的需求,在不同的应用软件上拥有不同的用户信息。

  • 去中心化用户内存:同上,但是主体是你的应用平台中的内存—朋友圈,视频,照片,和评论。

  • 去中心化网络和计算服务:用户拥有网状网络,可以自由的分享电脑的内存和中央处理器资源。

  • 加密散列法和电子签名:存在的证明,非集权化的授权,资源所有权的证明,或控制权。这些是非集权应用安全的最基本需求。

  • 智能合约:通过电脑编程控制的金钱交易和用户协议,通过代码保障安全,不依赖于参与者的行为。

现如今还没有网络应用程序编程接口能适应这些服务,正在开发的相关技术也“动荡不安”,缺少吸引力。
DApp系统还在最初的萌芽阶段。就连“DApp”这个词也是近期才进化来的,它代替了之前的“发散信息应用”,“p2p应用”,“区块链应用”等等。我十分期待所有应用都变成DApp的那一天,这样我们就只需称他们为“App”了。
在2018年的时候,我预测DApp的普及还需要3-5年的时间,我现在依然坚持这个预测。现如今,我连一个成功的完全非集权化网络平台的例子都找不到,更别说一个拥有百万用户的完全非集权化应用了。
但是我们正在一点点前往普及化的道路上。今天,有一些拥有百万用户的应用已经在使用DApp技术了。起初是在现存应用里(比如说Kik)加入加密货币交易功能。脸书宣布即将推出一个全新(最终将非集权化)的货币Libra。Silver.tv的用户在Theta网络上分享视频和赚取TFUEL币。这个网络的创始人是Steve Chen,他是YouTube的联合创始人之一,也是YouTube的前任技术总监。百万的Brave网络用户有机会赚取或分享BAT加密货币。Brave的创始人是Brendan Eich,JavaScript的创始人。JavaScript是网络平台的标准编程语言。
除了脸书的Libra币以外,我刚刚所提到的应用都已经有百万用户了。随着更多用户慢慢接受像应用内的加密货币交易这种DApp想法,更多的开发商就会加入我们的行列,帮助我们一起建立未来的DApp体系。
最终,我相信所有的基本DApp服务都会加入到主流浏览器当中去。与此同时,像Fortmatic的项目正在赋予Web 2.0浏览器(如Chrome浏览器)Web 3.0 功能。
这个“生态系统”还非常年轻。我们正在建立的东西正在慢慢改变着我们现有的标准。DApp世界现在还面临着大量的安全漏洞,丢失的钥匙,和隐私错误等等。(温馨提示:不要把用户的真实姓名和地址放在公共区块链上或者未加密的IPFS上,拜托了!)
虽然现在说这个还为时过早,但是DApp应用确实有潜力将一些被大企业剥夺的用户权益还给用户,也有潜力解锁很多因为加密货币或区块链技术不够成熟而受限的应用。
任何一个存在中央登记处的地方(包括授权书,地产证明,账本等等),都有潜力将这些账本变为p2p交易。
我已经迫不及待想要看事情接下来的发展了。见证奇迹的时刻到了!

推荐阅读:

等待澳本聪的将是……

大麻行业需要区块链

比特币矿业深度调查(二)

比特币矿业深度调查(一)

央行数字货币呼之欲出,但币圈人过度兴奋了

华盛顿对比特币的渗透与战争

比特币市值占近70%,我们为什么仍需隐私币?

Circle CEO听证词

「数字货币监管」听证会重磅来袭

一文读懂波卡

纽约州推出全新的加密货币监管机构

Libra参众两院听证会前瞻

欧洲央行将迎来继任者拉加德

Libra负责人致美国参议院信件全文

诺奖得主:傻子才会相信Libra

用数据告诉你美国人的加密货币现状

Libra:一场覆盖27亿人的革命?

官方社群已开通,欢迎加小编微信。

640?wx_fmt=jpeg

< END >

640?wx_fmt=jpeg

640?wx_fmt=gif

640?wx_fmt=jpeg

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机简史:从分布式到中心化的博弈螺旋 的相关文章

  • 一个成熟期货交易系统需要解决哪些问题?

    一个成熟期货交易系统需要解决哪些问题 交易系统绝对不仅仅是时机选择 资金管理 情绪控制这么简单 他是一个系统性的思维 交易系统是一组包含了入场信号 风险控制 资金管理 加减仓机制 可以没有 离场方式等等基本元素的的规则组合 成熟的交易系统是
  • AngularJS概述&指令

    AngularJS 指令 AngularJS 应用组成如下 View 视图 即 HTML Model 模型 当前视图中可用的数据 Controller 控制器 即 JavaScript 函数 可以添加或修改属性 指令 描述 ng app 定
  • android studio cmake 编译找不到ninja解决方案

    https forum cocos com t android studio cmake ninja 77324
  • 偶数斐波那契数列

    斐波那契数列中的每一项都是前两项的和 由和开始生成的斐波那契数列的前项为 1 2 3 5 8 13 21 34 55 89 考虑该斐波那契数列中不超过四百万的项 求其中为偶数的项之和 解题思路 这里我们要是用for循环肯定会超过范围 所以我
  • 警告:隐式声明函数‘xxx’ [-Wimplicit-function-declaration]

    在c编译中 出现此类警告的原因 没有声明原始函数 一般的解决方式 在程序前面增加函数头说明即可 否则是用默认说明 隐式说明 来解释函数调用规则 比如返回值默认是int就是在你不说明时起作用的 以下是摘录的比较好的一篇说明 点击打开链接 1
  • HTML空格占位符 空行,整理,待以后查看

    32 普通的英文半角空格 160 nbsp xA0 no break space 普通的英文半角空格但不换行 12288 中文全角空格 一个中文宽度 8194 ensp en空格 半个中文宽度 8195 emsp em空格 一个中文宽度 8
  • java跨库分页_微服务架构跨库分页解决的四种方案

    引言 微服务架构是一项在云中部署应用和服务的新技术 大部分围绕微服务的争论都集中在容器或其他技术是否能很好的实施微服务 而红帽说API应该是重点 微服务可以在 自己的程序 中运行 并通过 轻量级设备与HTTP型API进行沟通 关键在于该服务
  • JS代码延时执行

    延时执行代码使用window对象的setTimeout函数 第一个参数为要延时执行的代码 第二个参数为延时时间 毫秒单位 例子
  • css置灰属性 模糊属性 滤镜遮罩属性 (一行代码实现)

    网站一行代码置灰 原因都知道 是为了纪念一位伟人 这种把整个页面都变成灰色 下面是css便捷属性 置灰实现方式 filter grayscale 1 效果 模糊度实现方式 filter blur 5px 效果 最后一种是 backdrop
  • 程序员必会的git语法及gitlab、github应用

    文章目录 3分钟掌握git语法及gitlab github应用 关于作者 作者介绍 前言 一 控制版本 1 1 什么是版本 1 2 什么是控制版本 1 3 版本管理工具 二 git 版本管理 2 1 git 介绍 2 2 git 安装 2
  • VSCode下使用markdown导出pdf,导出图片或插入LaTeX公式等使用记录(1)

    记录一下自己觉得比较好用的markdown插件 以及在VSCode下编辑并将markdown的渲染结果导出pdf为或png等格式 1 Markdown All in One VSCode下的markdown插件 目前这个用起来比较丝滑 而且
  • 微服务架构下的移动架构实践

    转载本文需注明出处 EAII企业架构创新研究院 违者必究 如需加入微信群参与微课堂 架构设计与讨论直播请直接回复此公众号 加群 姓名 公司 职位 微信号 大家好 我是普元信息移动产品的负责人 郝振明 很高兴又与大家见面了 今天和大家分享的主
  • 怎么使用51单片机实现人脸识别?

    使用 51 单片机实现人脸识别可以通过以下步骤来实现 准备必要的硬件设备 包括 51 单片机 摄像头和相应的连接线 安装并配置相应的开发环境 如 Keil IAR 等 准备人脸识别所需的人脸数据库 这可以通过手动收集人脸图像并进行标记来实现
  • linux内核态和用户态(通俗易懂)

    一 内核态 用户态概念 内核态 也叫内核空间 是内核进程 线程所在的区域 主要负责运行系统 硬件交互 用户态 也叫用户空间 是用户进程 线程所在的区域 主要用于执行用户程序 二 内核态和用户态的区别 内核态 运行的代码不受任何限制 CPU可
  • 在为水质担忧吗?——水质检测大屏展示系统启动(inscode直观运行)

    前言 作者主页 雪碧有白泡泡 个人网站 雪碧的个人网站 推荐专栏 java一站式服务 React从入门到精通 前端炫酷代码分享 从0到英雄 vue成神之路 uniapp 从构建到提升 从0到英雄 vue成神之路 解决算法 一个专栏就够了 架
  • 动态规划法求解编辑距离问题

    问题描述 设A和B是两个字符串 现在要用最少的字符操作次数 将字符串A转换为字符串B 这里所说的字符操作共有3种 1 删除一个字符 2 插入一个字符 3 将一个字符替换另一个字符 例如 A sfdqxbw B gfdgw 结果为4 问题求解
  • STM32超声波模块测距

    特别注意 单独t link只能提供3 3v电压 模块接5v电压只能收到3 3V 供电的时候请接上micro口 模块介绍 HC SR04超声波模块可提供2cm 400cm的距离感测功能 测量精度可以达到3mm 通过声音340m s t 2可以
  • TCP3次握手连接协议和4次握手断开连接协议

    TCP IP 状态机 如下图所示 在TCP IP协议中 TCP协议提供可靠的连接服务 采用三次握手建立一个连接 如图1所示 SYN包表示标志位syn 1 ACK包表示标志位ack 1 SYN ACK包表示标志位syn 1 ack 1 1 第
  • 关于stm32f429的MDA2D的M2M模式

    LTDC的使用问题 可参考官方例程的配置 需要注意的是 它只是一个LCD控制器 需要定义缓存的地址 可以设置在flash里 但是不便于操作 一般还是建议设置外部SDRAM里 LTDC中DMA2D的使用问题 429中LTDC的2D加速功能还比
  • 记Tomcat删除war包问题

    由于不清楚tomcat部署原理 误认为tomcat部署完成之后 可以把war删除 然后以后每次部署 只需要增量部署就行了 然后还怕由于war包的存在 增量部署的内容会被覆盖掉 不清楚war包什么时候会自动重新部署 于是 rm rf mm w

随机推荐

  • Python将.py文件打包成.exe可执行文件

    1 安装Pyinstaller库 pip install pyinstaller 2 在 py文件的所在文件夹Shift 右键 打开后输入pyinstaller F 要打包的文件名称 例如Mqtt py F参数表示覆盖打包 如果有旧的会覆盖
  • [电路设计]按键方案

    电路设计 按键方案 本文记录和介绍几种按键解决方案 包括普通按键 按键编码电路 ADC按键的工作原理 1 普通按键 一般使用的按键原理图如下图所示 由按键 上拉电阻和消抖滤波电容组成 按键断开时 K e y I i n
  • 级数求和公式

    级数求和公式是用于求解有限的或无限的等差 等比数列的总和 它的一般形式为 Sn a1 a2 a3 an 其中 a1 为该级数的首项 an 为该级数的末项 Sn 表示该级数的和 1 如果是有限等差数列 其求和公式为 Sn n a1 an 2
  • Spring Cloud Eureka注册中心组件搭建

    第一步 Idea 新建spring boot项目 选中Cloud 中 Eureka Server 第二部 配置文件 将application application 后缀改为application yml 也可以不修改 我是用的yml 粘贴
  • 计算机指令格式

    计算机的指令格式与机器的字长 存储器的容量及指令的功能都有很大的关系 从便于程序设计 增加基本操作并行性 提高指令功能的角度来看 指令中应包含多种信息 但在有些指令中 由于部分信息可能无用 这将浪费指令所占的存储空间 并增加了访存次数 也许
  • idea中处理依赖注入爆红问题

    1 这是idea里的编译异常 这里会出现依赖注入爆红的情况 有以下两种方式 1 1 方式一 在进行注入的时候 并没有UserMapper这个接口 所以爆异常 解决方式 需要创建一个UserMapper接口并交给Spring容器管理 1 2
  • 【转】伺服电机三环控制的原理(位置环,运动环,电流环)

    运动伺服一般都是三环控制系统 从内到外依次是电流环速度环位置环 1 首先电流环 电流环的输入是速度环PID调节后的那个输出 我们称为 电流环给定 吧 然后呢就是电流环的这个给定和 电流环的反馈 值进行比较后的差值在电流环内做PID调节输出给
  • 剑指offer(C++版本)

    剑指offer c 版本 二维数组查找 替换空格 从尾到头打印链表 重建二叉树 用两个栈实现队列 旋转数组的最小数字 斐波那契数列 跳台阶 矩阵覆盖 二进制1的个数 数值的整数次方 调整数组顺序使奇数位于偶数前面 链表中倒数第k个结点 反转
  • 【ANN预测】基于遗传算法优化 ANN附matlab代码

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 matlab项目合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 更多Matlab仿真内容点击 智能优化算法 神经网络预测 雷达通信 无线传感器 电力系统 信号
  • qt在windows下交叉编译arm架构程序

    1
  • 《Kubernetes部署篇:Ubuntu20.04基于二进制安装安装kubeadm、kubelet和kubectl》

    一 背景 由于客户网络处于专网环境下 使用kubeadm工具安装K8S集群 由于无法连通互联网 所有无法使用apt工具安装kubeadm kubelet kubectl 当然你也可以使用apt get工具在一台能够连通互联网环境的服务器上下
  • 单淘汰赛制两队相遇算法

    对于这种单循环赛制acm也是常遇到这样的题那么 对于这样的比赛我们要怎么模拟所有的可能是一个问题 我们如何判断两个队在某一轮是否会遇到呢 我们其实可以利用二进制的性质 设某一轮比赛为i 求j和k两只队伍是否能比赛 下面我们用二进制来表示队伍
  • vp8-vp9-ivf文件格式

    经常遇到ivf格式 下面看看它的头 typedef struct ivf header 0 3 固定的 DKIF 字符串 4 5 version 应该为0 6 7 header的字节长度 8 11 编码器的FourCC e g VP80 1
  • 在内嵌窗口中调用父窗口的javascript代码

    noname1 html noname2 html
  • 【原创】【硬件电路】AltiumDesigner18规则检查含义

    文章首发于同名微信公众号 DigCore 欢迎关注同名微信公众号 DigCore 及时获取最新技术博文 Layout时最常用的错误检查 这需要在布局布线前做好规则设置 所谓磨刀不误砍柴工 尤其是在Layout时 如果违反规则 就会亮起绿色
  • vue.config.js配置详解

    1 vue inspect rule 命令获取vue config js中的chainWebpack配置项 2 vue inspect rule svg 筛选配置项 const path require path function reso
  • Rattle :基于R的数据挖掘工具(3):载入数据

    数据 数据是进行数据挖掘工作的基础 要是没有数据 那也就没什么可挖的了 当今时代 数据的丰富超乎想象 它可以是数字 也可以是文本 图像 声音 视频等各种形式的存在 但是要把数据变成知识和信息 并不是一件简单的事 关于数据的一般术语 一个数据
  • C语言有参函数调用时参数间数据传递问题

    C语言有参函数调用时参数间数据传递问题 C语言中在发生有参函数调用时 实参变量与形参变量之间的数据都是单向的 值传递 方式 包括指针变量和数组名作参数的情况 C语言要求函数的实参要有确定的值 在函数调用时给形参分配相应的内存单元 同时将实参
  • 一文讲清 c++ 之队列

    队列也是一种特殊的 表 使用队列时插入是在一端操作 而删除则是在另外一端 1 队列模型 队列的基本操作是enqueue 入队 它是在表的末端 称为队尾 插入 个元素 dequeue 出队 它是删除 并返回 表的开头 叫作队头 的元素 下图显
  • 计算机简史:从分布式到中心化的博弈螺旋

    作为应用程序开发商 我们有责任为用户的隐私和信息安全考虑 用户应该拥有控制自己信息数据的权利 这些用户数据应该在初始化的时候就被加密和保护 作者 Eric Elliott 书籍 函数式编程的兴衰 和 编程JavaScript应用 的作者 他