用【游乐场】说清楚“硬件、操作系统、跨平台、应用软件、开发语言、代码”的关系

· 浏览次数 : 0

正文

经常有小伙伴对一些计算机技术和概念不太清楚,产生很多误区,甚至张冠李戴,在一起聊天时又很难给对方解释清楚,经过苦思冥想,终于想到一些比喻,能够很好地阐述了“硬件、操作系统、跨平台、应用软件、开发语言、代码”之间的关系。

1、硬件

  • 陆地(Intel)与海洋(AMD):硬件就像是一个广阔的自然环境,其中Intel和AMD就像是两块不同的地域(陆地与海洋),各自拥有独特的资源和特性。这些硬件平台为上层软件提供了运行的基础。

2、操作系统

  • 游乐场:操作系统则是建立在硬件之上的一个虚拟世界,为软件提供了一个运行的环境。
  • 城堡(Windows)与船(Linux):不同的操作系统就像是游乐场中不同风格的建筑,Windows以其丰富的功能和用户友好的界面,像是一座华丽的城堡;而Linux则以其开放性和灵活性,更像是一艘在海上自由航行的船。

3、应用软件

  • 游乐项目:应用软件就像是游乐场中的旋转木马、海盗船、过山车等游乐项目,它们为用户提供了丰富的功能和娱乐体验。每个应用软件都是基于特定的操作系统进行开发的,就像游乐项目需要建立在游乐场的某个区域内。

4、开发语言

  • 工厂:开发语言就像是生产游乐设备的工厂,它们提供了创建应用软件的工具和方法。
  • 配件工厂(中级语言C、C++)与设备工厂(高级语言Java、Python、C#等):中级语言(如C、C++)更像是配件工厂,它们提供了构建软件的基础构件,但直接编写大型软件时可能效率较低;而高级语言(如Java、Python、C#)则更像是设备工厂,它们能够更高效地生产完整的软件产品,支持多种功能和复杂的逻辑。

5、代码

  • 生产技术:代码就是这些工厂中的生产技术,不同的开发语言有不同的代码编写规则和语法,它们决定了如何将想法转化为可运行的软件。

6、跨平台

  • 搬运工:跨平台技术就像是游乐场中的搬运工,它能够将在一个操作系统(如城堡Windows)上运行的应用软件(如过山车)搬运到另一个操作系统(如船Linux)上,并保证其正常运行。这种技术使得软件能够跨越不同的硬件和操作系统平台,为用户提供一致的使用体验。

通过以上比喻,我们可以更加直观地理解这些技术概念之间的关系和它们在软件开发中的作用,有表达欠妥之处恳请小伙伴提宝贵建议!

与用【游乐场】说清楚“硬件、操作系统、跨平台、应用软件、开发语言、代码”的关系相似的内容:

用【游乐场】说清楚“硬件、操作系统、跨平台、应用软件、开发语言、代码”的关系

经常有小伙伴对一些计算机技术和概念不太清楚,产生很多误区,甚至张冠李戴,在一起聊天时又很难给对方解释清楚,经过苦思冥想,终于想到一些比喻,能够很好地阐述了“硬件、操作系统、跨平台、应用软件、开发语言、代码”之间的关系。 硬件 陆地(Intel)与海洋(AMD):硬件就像是一个广阔的自然环境,其中In

记一次 .NET 某游戏服务后端 内存暴涨分析

## 一:背景 ### 1. 讲故事 前几天有位朋友找到我,说他们公司的后端服务内存暴涨,而且CPU的一个核也被打满,让我帮忙看下怎么回事,一般来说内存暴涨的问题都比较好解决,就让朋友抓一个 dump 丢过来,接下来我们用 WinDbg 一探究竟。 ## 二:WinDbg 分析 ### 1. 到底是

推荐一个可以提高生产力的在线游戏

很久没推荐好玩的工具了,今天给家推荐一个非常有意思的游戏:Habitica Habitica除了是个游戏之外,居然还是一个生产力应用! 为什么说Habitica还是个生产力应用呢?因为它还可以帮助我们养成习惯! 通过Habitica,我们可以用它的每日目标和代办事项列表功能来跟踪和管理你的习惯 在完

2.0 熟悉CheatEngine修改器

Cheat Engine 一般简称为CE,它是一款功能强大的开源内存修改工具,其主要功能包括、内存扫描、十六进制编辑器、动态调试功能于一体,且该工具自身附带了脚本工具,可以用它很方便的生成自己的脚本窗体,CE工具可以帮助用户修改游戏或者软件中的内存数据,以获得一些其他的功能,CE可以说是目前最优秀的进程内存修改器,但需要注意的是,它的使用可能会涉及到非法或者违反游戏规则的行为,建议读者在使用 `C

《迷你世界》亿级玩家都在用的游戏场景推荐系统长啥样?

摘要:通过使用华为云企业级KV数据库GaussDB(for Redis),《迷你世界》的推荐业务不仅成本降低了60%,而且提升了画像数据承载量,让玩家更容易、更快速找到自己喜欢的游戏场景。 本文分享自华为云社区《《迷你世界》亿级玩家都在用的游戏场景推荐系统长啥样?》,作者:GaussDB数据库。 提

我用 GitHub 9.8k 的 Go 语言 2D 游戏引擎写了个游戏

游戏引擎的贡献者依旧在积极维护,是一个兼具学习 & 娱乐的项目!为此我也用这个引擎写了一个生存游戏: avoid-the-enemies

聊聊游戏业务怎么用高斯Redis

摘要:其实游戏客户对数据库的诉求是很明确的,数据库应当“放心存放心用”。 本文分享自华为云社区《华为云GaussDB(for Redis)揭秘第27期:聊聊游戏业务怎么用高斯Redis》,作者:高斯Redis官方博客。 华为云数据库团队是比较重视技术洞察的,对客户真实的业务场景也比较看重。年初出差了

看我是如何用C#编写一个小于8KB的贪吃蛇游戏的

译者注:这是Michal Strehovský大佬的一篇文章,他目前在微软.NET Runtime团队工作,主要是负责.NET NativeAOT功能的开发。我在前几天看到这篇文章,非常喜欢,虽然它的内容稍微有点过时(还是使用的.NET Core 3.0),不过其中的一些编程技巧和思维方式很受用,特

【算法】用c#实现德州扑克卡牌游戏规则

德州扑克是一种牌类游戏,可多人参与,它的玩法是,玩家每人发两张底牌,桌面依次发5张公共牌,玩家用自己的两张底牌和5张公共牌自由组合,按大小决定胜负。 使用c#完成功能Hand()以返回手牌类型和按重要性递减顺序排列的等级列表,用于与同类型的其他手牌进行比较,即最佳手牌。 可能的手牌按价值降序排列:

8KB的C#贪吃蛇游戏热点答疑和.NET7版本

在之前的一篇文章《看我是如何用C#编写一个小于8KB的贪吃蛇游戏》中,介绍了在.NET Core 3.0的环境下如何将贪吃蛇游戏降低到8KB。不过也有很多小伙伴提出了一些疑问和看法,主要是下面这几个方面: .NET Core 3.0可以做到这么小,那么.NET7表现会不会更好? 不敢在生产中用这样的