当前位置: 首页 > news >正文

一些编程语言的发展史

计算机语言的发展史

C语言的命名由来

C语言,作为一种广泛使用的编程语言,其命名背后有着一段历史。C语言的前身是B语言,而B语言又是基于BCPL语言发展而来。BCPL(Basic Combined Programming Language)是由剑桥大学的Martin Richards在1967年为了简化CPL语言而创建的。接着,在1970年,美国贝尔实验室的Ken Thompson基于BCPL语言设计了B语言,并用它编写了第一个UNIX操作系统。

Dennis M. Ritchie,同样在贝尔实验室工作,于1972年在B语言的基础上开发出了C语言。他选择了BCPL名称中的第二个字母"C"作为这种新语言的名称。C语言的设计目的是提供一种能够简单编译、处理低级存储器、产生少量机器码的语言,同时不需要任何运行环境的支持即可运行。C语言在1973年初完成了主体设计,并被用来完全重写了UNIX操作系统。

C语言的强大移植性使其能够在不同类型的计算机上使用。与机器语言和汇编语言不同,C语言编写的程序可以在任何架构的处理器上运行,只要该架构有相应的C语言编译器和库。这种跨平台的特性,加上其对低级操作的支持,使C语言成为开发系统软件的首选语言。

随着时间的推移,C语言经历了多次标准化的过程。1977年,Dennis Ritchie发表了《可移植的C语言编译程序》,这是一个不依赖于具体机器系统的C语言编译文本。1983年,美国国家标准化协会(American National Standards Institute,ANSI)制定了C语言的标准,通常称之为ANSI C。此后,国际标准化组织(ISO)在1990年接受了ANSI C作为ISO C的标准,并在2011年发布了新的国际标准草案:ISO/IEC 9899:2011,增加了对多线程的支持和对Unicode的支持等新特性。

C++的诞生以及发展

C++ 是由 比雅尼·斯特劳斯特鲁普(Bjarne Stroustrup)在 20 世纪 80 年代初于贝尔实验室开发的一种编程语言。它的诞生源于对 C 语言 的扩展,旨在解决 C 语言在处理复杂系统时的局限性,同时引入面向对象编程的概念。

起源与动机

C++ 的开发始于 1979 年,当时斯特劳斯特鲁普在研究分布式系统时发现现有的编程工具无法满足需求。他希望创建一种语言,既能保留 C 语言的高效性和灵活性,又能支持 继承多态 等面向对象特性。最初,这种语言被称为 C with Classes,直到 1983 年正式更名为 C++,名称中的 “++” 取自 C 语言的递增运算符,象征着语言的自然演进。

语言特性与标准化

C++ 在设计上继承了 C 语言的语法和效率,同时引入了许多新特性,包括虚函数、模板、异常处理和标准模板库(STL)。这些特性使得 C++ 成为一种支持多种编程范式的通用语言,例如过程化编程、面向对象编程和泛型编程。

1998 年,C++ 被正式标准化为 ISO/IEC 14882:1998,标志着其成熟和广泛应用。此后,C++ 标准不断更新,最新版本为 C++20,引入了协程、模块和并行算法等现代特性。

影响与应用

C++ 的出现深刻影响了计算机科学的发展。它在操作系统、游戏开发、嵌入式系统和高性能计算等领域得到了广泛应用。C++ 的高效性和灵活性使其成为工业界的重要工具,同时也为程序员提供了强大的表达能力。

未来展望

尽管编程语言领域不断涌现新秀,C++ 仍然保持着强大的生命力。随着技术的进步和应用场景的扩展,C++ 将继续在高性能和复杂系统开发中发挥重要作用。它不仅是一种工具,更是一种编程思想的体现。

C++ 的发展历程是一部充满创新与挑战的传奇,它的成功离不开斯特劳斯特鲁普的贡献以及全球开发者的支持。

JAVA语言的诞生

Java 于 1995 年 5 月 23 日 在 Sun World 会议上正式发布,其前身是名为 Oak 的编程语言。Oak 的开发始于 1991 年,由 Sun Microsystems 的 James Gosling 和他的团队主导,最初设计用于嵌入式设备和家用电器。由于市场需求的变化和互联网的兴起,Oak 被重新命名为 Java,并转向网络应用开发。

Java 的名字来源于 印度尼西亚爪哇岛,以其咖啡闻名,这也解释了 Java 标志中咖啡杯的设计。Java 的发布标志着一种全新编程语言的诞生,其核心理念是 “一次编写,处处运行”(Write Once, Run Anywhere),通过 Java 虚拟机(JVM)实现跨平台能力。

Java 的正式发布后,迅速成为开发者的热门选择,尤其是在互联网和企业级应用领域。1996 年,Sun 发布了 JDK 1.0,标志着 Java 开发环境的初步成熟。Java 的安全性、跨平台性和面向对象特性使其在全球范围内广泛应用,并奠定了其在编程语言中的重要地位。

其背后有趣的故事

Java语言的名字背后有一个有趣的故事。Java语言的创始人詹姆斯·高斯林(James Gosling)在为新语言命名时,注意到他手中的咖啡杯,这杯咖啡来自印度尼西亚的爪哇岛,那里的咖啡豆是世界著名的特产。由此,高斯林灵机一动,决定将这门新语言命名为Java。

在Java语言的开发过程中,最初的代号是Oak(橡树),因为高斯林注意到自己办公室外的一棵茂密的橡树。然而,在申请商标时,发现Oak已经被其他公司注册,所以不得不重新取名。在命名征集会上,大家提出了很多名字,当时他们正喝着印尼爪哇岛出产的咖啡,其中一位成员灵机一动,提议叫Java,大家都表示喜欢。

Java语言与咖啡豆之间的联系不仅在于名字的起源。在Java语言中,有许多库类名称都与咖啡有关。例如,JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。这些名称不仅使代码更具趣味性,也体现了Java语言与咖啡文化的紧密联系。

Java语言的名字选择与其简洁性和易记性也有关系。这个名字短小精悍,易于记忆,同时在当时是一个未被广泛使用的词汇,这意味着它在网络上的域名等资源相对容易获得。

总的来说,Java名字的由来不仅展示了命名的重要性,也提醒我们在生活中要善于发现和抓住灵感,有时候一个小小的创意就能够改变我们的生活和工作方式。

C#语言的传奇之旅:从诞生到辉煌

C#语言由微软公司开发,于2000年首次发布,作为.NET框架的一部分。它的设计目标是为开发者提供一种现代化、面向对象的编程语言,用于构建各种类型的应用程序,包括桌面、Web、移动和云服务。

C#的诞生背景可以追溯到20世纪90年代末。当时,随着互联网的迅速发展和软件复杂性的增加,传统编程语言(如C++)难以满足开发需求。微软意识到需要一种更强大、更高效的语言来应对这些挑战。

C#的设计深受C++、Java和Delphi等语言的启发,同时融入了微软的创新。它引入了诸如委托、属性、泛型和LINQ等特性,极大地提升了开发效率和代码质量。

C#的首次发布标志着微软在编程语言领域的重要一步,并迅速成为.NET平台的主要语言之一。

背后的故事

微软秘密组建了一个精英团队,而这个团队的灵魂人物,便是安德斯·海尔斯伯格(Anders Hejlsberg)。海尔斯伯格是一位传奇的程序员,他曾经参与开发了Turbo Pascal和Delphi等著名编程语言,被誉为“编程语言大师”。他的加入,为C#的诞生注入了强大的动力。

海尔斯贝格

在微软的总部,一个神秘的实验室里,海尔斯伯格和他的团队开始了艰苦的探索。他们日夜奋战,不断地讨论、设计、编写代码,试图创造出一种完美的编程语言。在这个过程中,他们面临着无数的困难和挑战。一方面,他们需要在保持C++语法风格的基础上,进行大胆的创新;另一方面,他们还要确保这种语言能够与.NET框架无缝对接,实现跨平台、跨语言的开发。

经过无数次的尝试和改进,终于在2000年,C#语言横空出世。它的名字来源于音乐中的“C#”音符,象征着它在编程语言中的独特地位和美妙旋律。C#的诞生,立刻引起了全球程序员的关注。它简洁的语法、强大的功能和高效的性能,让人们眼前一亮。许多程序员纷纷投入到C#的学习和开发中,一场新的编程革命悄然拉开序幕。

在C#语言的发展过程中,也并非一帆风顺。随着开源文化的兴起,许多程序员开始呼吁C#语言开源。他们认为,开源可以让更多的开发者参与到C#语言的开发和改进中,促进C#语言的发展。然而,微软作为一家商业公司,对于开源一直持谨慎态度。他们担心开源会影响C#语言的商业价值,同时也担心开源后会失去对C#语言的控制权。

在这种情况下,C#语言面临着一个艰难的抉择。是继续坚守商业化的道路,还是勇敢地迈出开源的步伐?经过长时间的思考和讨论,微软最终决定开源C#语言。2014年,微软宣布将C#语言开源,并将其捐赠给了.NET基金会。这一决定,标志着C#语言进入了一个新的时代。

开源后的C#语言,迎来了新的发展机遇。越来越多的开发者开始参与到C#语言的开发和改进中,C#语言的社区也日益壮大。同时,开源也使得C#语言能够更好地支持跨平台开发。微软推出了.NET Core,这是一个开源的、跨平台的.NET框架。C#语言与.NET Core的结合,使得C#语言能够在Linux、MacOS等操作系统上运行,大大拓展了C#语言的应用场景。

在早期的C#语言版本中,主要的创新集中在语法的改进和一些基本功能的增强上。例如,C# 2.0引入了泛型(Generics),使得程序员可以编写更加通用的代码;C# 3.0引入了匿名类型(Anonymous Types)和扩展方法(Extension Methods),这些特性使得C#语言更加灵活和强大。

随着技术的发展,C#语言的创新也逐渐向更深层次的方向发展。C# 5.0引入了异步编程(Async Programming),使得程序员可以更加轻松地编写异步代码,提高程序的性能和响应速度;C# 6.0引入了表达式体成员(Expression-bodied Members)和字符串插值(String Interpolation),这些特性使得C#语言的语法更加简洁和易读。

(C#语言来源材料作者:槐月)

PHP语言的发展史

PHP 最初由程序员 Rasmus Lerdorf1994 年 开发。最初的版本是一个用 C 语言 编写的工具套件,名为 Personal Home Page Tools,用于统计他个人网页的访问量。这一工具的发布标志着 PHP 的起点。

1995 年 6 月 8 日,Rasmus 将 PHP Tools 的源代码公开发布,这一事件被视为 PHP 的正式诞生。此时的 PHP 主要用于实现简单的网页功能,例如访客计数器和留言板,为网页注入了动态交互的能力。

随后,PHP 经过多次迭代和改进,从一个简单的工具逐步演变为功能强大的编程语言,成为互联网开发的重要基石。

JavaScript 语言的诞生

JavaScript 的诞生可以追溯到 1995 年,当时网景公司(Netscape)主导了浏览器市场,但意识到静态网页的局限性。为了让网页具备交互能力,网景决定开发一种轻量级的脚本语言。Brendan Eich 在短短 10 天内设计出了 JavaScript 的第一个版本。

这门语言最初被称为 Mocha,随后改名为 LiveScript,最终因网景与 Sun 公司合作而命名为 JavaScript,以借助 Java 的热度进行市场推广。

设计理念与技术来源

Brendan Eich 的设计融合了多种编程范式的精华:

  • C 语言的基本语法,降低学习门槛。
  • Java 的数据类型和内存管理。
  • Scheme 的函数式编程思想,将函数提升为“一等公民”。
  • Self 的原型继承机制。

因此,JavaScript 是一种结合了 函数式编程面向对象编程 的混合语言。

初期应用与局限

JavaScript 最初的目标是处理简单的网页交互,例如表单验证和动态内容更新。通过 DOM 操作事件处理,开发者可以实现动态网页效果。

然而,由于设计时间短暂,JavaScript 的早期版本存在许多不严谨之处,导致代码混乱。Brendan Eich 后来坦言,他对 JavaScript 的设计并不满意,甚至称其为“C 和 Self 的一夜LOVE产物”。

JavaScript 的命名误解

尽管名字中包含“Java”,但 JavaScript 与 Java 几乎没有直接关系。这个名字纯粹是网景的营销策略,旨在借助 Java 的流行度推广 JavaScript。

影响与发展

JavaScript 的诞生为网页注入了“灵魂”,从静态内容转向动态交互。它不仅成为浏览器中的核心语言,还随着技术的演进扩展到服务器端(Node.js)、移动端(React Native)和桌面应用(Electron)等领域。

JavaScript 的成功证明了简单性与灵活性的力量。尽管起初被视为“玩具语言”,它如今已成为改变世界的全能编程语言。

背后的趣事

JavaScript的诞生于浏览器的鼻祖网景公司(Netscape),大约是1994年左右,网景公司(Netscape)发布了Navigator浏览器0.9版,这是一款很经典的浏览器,网景公司(Netscape)的用户数因此而出现了井喷的态势,但是Navigator0.9不具备和访问者互动的能力,在那个上网速度比蜗牛还慢的时代,网景公司(Netscape)急需一种脚本语言,使得浏览器和网页进行交互,从而提升用户的体验。

针对这个问题,网景公司(Netscape)有两种选择,一是采用现有的脚本语言,二是自己发明一个新的脚本语言。当时网景公司(Netscape)的高层对这个问题争论不休。在这些喋喋不休的争论里,时间走到了1995年,这一年发生了一件创造历史的大事件编程语言Java横空出世,Java凭借"一次编写,到处运行的"强大宣传,大有未来主宰的霸气,这些让网景公司(Netscape)高层们一下子被Java所俘获,如是网景公司(Netscape)和sun公司结盟,网景公司(Netscape)不仅允许Java程序以applet的形式嵌入到浏览器,直接在浏览器里面运行,甚至还打算把Java作为脚本嵌入到网页,只是最后发现网页会变的过于复杂而放弃,但是JavaScript的Java印记永远都挥之不去。

事情的转折发生在1995年4月,网景公司(Netscape)录用了BremdanEich(布兰登·艾奇)(虽然BremdanEich(布兰登·艾奇)是JavaScript的祖师爷,但是他的介入或许也是JavaScript悲剧的开始)。我们还是接着说网景公司(Netscape)吧,1995年5月,网景公司(Netscape)做出了决策,未来的网页脚本语言必须看上去和Java足够相似,但是比Java简单,使得非专业的网页作者能很快的上手。

BremdanEich(布兰登·艾奇)被任命为这个简化版的Java的设计师。但是BremdanEich(布兰登·艾奇)对Java一点兴趣都没有,为了应付公司的安排的任务,他只用10天时间就设计出了JavaScript。悲剧就这么诞生了。

BrendanEich的主要方向和兴趣是函数式编程,网景公司招聘他的目的,是研究将Scheme语言作为网页脚本语言的可能性。BrendanEich本人也是这样想的,以为进入新公司后,会主要与Scheme语言打交道。(没想到美国公司也有这样的恶习,我以前有家公司非常的BT,特别是对刚毕业或者工作时间不长的程序员,你想做Java我偏偏不给你做,让你做C#,你想做C#,别天真,你去倒腾Java,很多程序员就是这么被致残的)。

10天诞生一种语言,不管怎么说我还是把BrendanEich当神看。但是神创造世界也不能太一蹴而就了,我们这些凡夫俗子很多时候做个小功能模块如果领导就给你10天时间,也会叫苦连天的,10天诞生一种语言这不是神还是啥啊。由于JavaScript设计的时间实在太短,导致很多细节考虑不周,因此JavaScript写出的程序混乱不堪,成了许多程序员的梦魇,差点被人抛弃,直到ajax的出世,才让人们终于找到理由忍受他的畸形。

其实一直到现在BrendanEich还是看不起讨厌Java。假如不是公司决策BrendanEich绝对不会把Java作为JavaScript的设计原型,即使是现在,BrendanEich还是讨厌自己的作品。他曾经说过:"与其说我爱JavaScript,不如说我恨它。它是C语言和Self语言的产物。十八世纪英国文学家约翰逊博士说得好:'它的优秀之处并非原创,它的原创之处并不优秀。"

相关文章:

一些编程语言的发展史

计算机语言的发展史 C语言的命名由来 C语言,作为一种广泛使用的编程语言,其命名背后有着一段历史。C语言的前身是B语言,而B语言又是基于BCPL语言发展而来。BCPL(Basic Combined Programming Language)是由剑桥大学的Martin Richards在1967年为了简化CPL语言而创建的。接着…...

mysql生成uuid,3种实用方法详解

你知道MySQL中有几种生成唯一标识符的方法吗?作为数据库开发者,我们经常需要为数据记录生成全局唯一的ID。与自增ID相比,UUID具有全局唯一性和分布式友好的特性,特别适合微服务架构下的数据库设计。 UUID基础概念 RFC4122标准定义了UUID(通用唯一识别码),它是一个128位的数…...

vmware ubuntu共享文件夹

sudo apt update sudo apt install open-vm-tools open-vm-tools-desktop sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other,uid=1000,gid=1000 开机自动挂载 编辑/etc/fstab文件,添加以下行(需确保共享文件夹名称正确): .host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_othe…...

【10章】n8n+AI工作流:从入门到企业级AI应用实战

【10章】n8n+AI工作流:从入门到企业级AI应用实战 网 盘 地址:……/s/14l-lQhw9M2TuBny5O4Ru8A 提取码:0hm4 在数字时代的浪潮中,自动化已成为提升效率的关键驱动力。当灵活的n8n工作流平台与强大的人工智能相遇,一场生产力革命正悄然发生。这种融合不仅重新定义了工作流…...

CodeGPT AI代码狂潮来袭!个人完全免费使用谷歌Gemini大模型 超越DeepSeek几乎是地表最强

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享 🐋 希望大家多多支持, 我们一起学习和进步! 🏅 欢迎评论 ❤️点赞💬评论 📂收藏 📂加关注CodeGPT是什么 CodeGPT是一款基于AI人工智能的编程辅助插件,它就像一个贴心的编程小助手,能帮你更高…...

Android 安卓 困难处理记录 腾讯IM和厂商离线推送难题 点击离线推送无法唤醒APP启动页但某些Service服务和Application被启动

Android 安卓 困难处理记录 腾讯IM和厂商离线推送难题 点击离线推送无法唤醒APP启动页但某些Service服务和Application被启动pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "…...

9.18

1...

Codeforces Round 1051 (Div 2)

cf1051 Div2 ABCD1D2E题解Problem - A. All Lengths Subtraction 思路: 我们希望 n 和 n - 1 相邻,n - 1, n 和 n - 2 相邻 ... 不断往外扩展 所以我们可以维护 l 和 r 表示当前扩展到了哪里 通过判断下一个数是否和 l 或者 r 相邻,判断 YES/NO 核心代码: void solve() {in…...

Python numba jit加速计算

安装pip install numba使用示例import timefrom numba import jit# 原始函数 def python_sum(n):total = 0for i in range(n):total += ireturn total# Numba 加速版本 @jit(nopython=True) def numba_sum(n):total = 0for i in range(n):total += ireturn total# 性能测试 n =…...

人机协作开发新体验:花两天时间与Cursor共同打造一个微信小程序

前言 在过去的几天里,我完成了一个完整的微信小程序项目——双色球机选应用。 这个项目的独特之处在于,所有的代码编写工作都是由 Cursor 完成的,而我主要负责需求分析、功能规划和调试测试。项目概述 应用功能 我开发的是一款双色球机选微信小程序,主要功能包括:开奖信息…...

OEC-Turbo刷群晖Armbian流程记录

记录OEC-Turbo的刷机流程,为以后反复折腾做参考。 设备版本:OEC L2.0,不清楚1.0和2.0的区别 系统:Windows 11 准备工具瑞芯微驱动 瑞芯微烧录工具 Loader文件 固件 镊子 Type-C数据线工具下载链接:https://pan.quark.cn/s/a719af4c2816 安装驱动下载:01-瑞芯微驱动\Drive…...

01_网络分层模型

一、OSI 七层网络模型 所谓七层就是基于 URL 等应用层信息的负载均衡,四层就是基于 IP + 端口的负载均衡,同样的还有基于二层 MAC 地址,三层 IP 地址的负载均衡。 而 OSI(Open System Interconnection,开放式通信互联) 是由 ISO(International Organization for Standardiz…...

SaaS 是什么?一文带你看懂 SaaS 与传统软件的区别

SaaS 发音类似于「萨斯」,是 Software as a Service 的缩写,直译过来就是「软件即服务」。你可以这样理解: 在 SaaS 模式下,软件变得和水电气很相似,你只需要每月缴纳固定的费用即可享受服务。再举个比较具体的例子: 如果是在10年前,我想画设计图,需要使用 Photoshop,…...

FreeCAD-即时入门-全-

FreeCAD 即时入门(全)原文:zh.annas-archive.org/md5/ba46ce5f33da4fa68df84701f1baaf8a 译者:飞龙 协议:CC BY-NC-SA 4.0前言 FreeCAD 是一个面向工程世界的通用建模工具。与为动画师和艺术家设计的其他建模工具(如 Blender 或 Maya)不同,FreeCAD 对参数化和基于特征的…...

UOS统信服务器操作系统V20(1070)安装mysql8.0.41(建议安装glibc2.28版本)

环境:OS:UOS Server 20 统信服务器操作系统V20(1070)mysql:8.0.41 glib.2.17 操作系统下载https://www.chinauos.com/resource/download-server查看系统glibc版本[root@localhost yum.repos.d]# ldd --versionldd (GNU libc) 2.28Copyright (C) 2018 Free Software Foundation,…...

MyEMS:重新定义人与能源的关系 —— 一场藏在数据里的能源管理革命

能源,这个推动现代文明运转却始终隐形的主角,正通过数字技术与我们建立全新的对话方式。MyEMS作为开源能源管理系统,正在悄然引领这场变革——它不仅改变我们管理能源的方式,更在重新定义人与能源之间的关系。 从被动消费者到主动管理者 传统能源使用中,人类扮演着被动消费…...

刀齿磨损智能检测APP

...

TJOI2007--线段

题目传送门代码点击查看代码 #include<bits/stdc++.h> using namespace std; const int N=2e4+10; int n; int l[N],r[N],len[N]; int dp[N][2]; //dp[i][0]表示停留在本行左端点 //那么就要到右端点在再回到左端点 //dp[i][1]表示停留到本行右端点 //就从本行左端点到右…...

ceph集群的部署

需要准备三台虚机,下载好cephadm包 安装命令:ceph bootstarp --mon-ip=192.168.10.3 --allow-fqdn-hostname 像这样把下列命令对应要求填写命令,就可以安装ceph --allow-fqdn-hostname :允许使用主机作为域名访问mgr --initial-dashboard-user :指定dashboard的用户名 --ini…...

充电桩测试:守护绿色出行的安全密码

在新能源汽车蓬勃发展的时代浪潮下,充电桩作为核心配套设施,其质量与安全性至关重要。每一次稳定的充电过程背后,都离不开严谨细致的测试工作。那么,在充电桩测试中究竟需要注意哪些关键点呢? 电气性能是首要考量因素。电压和电流的稳定性犹如人的脉搏跳动般关键,必须精准…...

如何写好一个缺陷报告?让开发无法拒绝修复的10个要素

记住,测试人员与开发人员不是对立关系,而是协作共赢的伙伴。我们共同的目标是交付高质量的产品,为用户创造价值。当你用专业、细致、合作的态度对待每一个缺陷时,开发人员会更加重视你的报告,团队协作也会更加顺畅高效。在软件开发的世界里,测试人员和开发人员之间的关系…...

不重启、不重写、不停机:SLS 软删除如何实现真正的“无感数据急救”?

SLS 全新推出的「软删除」功能,以接近索引查询的性能,解决了数据应急删除与脏数据治理的痛点。2 分钟掌握这一数据管理神器。作者:屈岳(尧道) 引言 日志服务 SLS 作为云原生观测与分析平台,为 Log、Metric、Trace 等数据提供大规模、低成本、实时的平台服务。在常规场景中…...

C#记录类型与集合的深度解析:从默认实现到自定义比较器

本文深入探讨C#记录类型与不可变集合在实际应用中的挑战,包括默认相等性实现的局限性、自定义比较器的需求、引用相等性的应用场景,以及Visual Studio工具支持方面的不足,并提出了具体的语言和工具改进建议。记录与集合 这篇文章在某种程度上是我在使用选举网站中的记录和集…...

安徽京准:NTP时间服务器助力网络数据安全稳定

安徽京准:NTP时间服务器助力网络数据安全稳定 安徽京准:NTP时间服务器助力网络数据安全稳定安徽京准:NTP时间服务器助力网络数据安全稳定 京准电钟官微——ahjzsz NTP时间服务器确实是保障网络数据安全与稳定的重要基石。它通过提供高精度、高可靠、高安全的时间同步服务,为…...

UOS统信服务器操作系统V20(1070)安装mysql5.7.42

环境:OS:UOS Server 20 统信服务器操作系统V20(1070)mysql:5.7.42 操作系统下载https://www.chinauos.com/resource/download-server查看系统glibc版本[root@localhost yum.repos.d]# ldd --versionldd (GNU libc) 2.28Copyright (C) 2018 Free Software Foundation, Inc.This …...

响应式问题

今天遇到一个问题,组件已经设计为响应式,但是在移动端字体太小,多次调试无果,最终发现原因就在于我在main.js入口文件中引用了如下函数/*** 设置根元素的字体大小,以实现页面的自适应布局。* @param {number} bs - 基准字体大小,默认值为 16* @param {number} width - 设…...

Python 函数缓存

作用缓存不同参数组合的计算结果,命中缓存可以直接返回结果。使用示例import time from functools import lru_cache@lru_cache(maxsize=128) # 指定128个不同参数组合的调用结果,lru策略,设置为None表示无上限 def test(step: int, turns: int) -> int:total = 0for _ i…...

乐蜂直播购物商城小程序介绍

一、概述总结 乐蜂直播购物商城小程序系统,是一款依托微擎系统交付的直播电商解决方案。微擎系统是基于 PHP 开发的开源应用生态系统,可快速搭建微信公众号、小程序等应用,同时支持 Web 系统开发与部署,乐蜂直播购物商城小程序系统借助这一基础,实现了微信小程序内直播带货…...

基于C#实现基恩士PLC通信

一、通信协议选择 基恩士PLC支持多种通信协议,推荐优先采用以下两种方案:TCP/IP Socket通信(通用性强,适用于以太网接口设备) Modbus TCP协议(标准工业协议,兼容性强)二、Socket通信实现(基于TCP/IP) 1. 基础通信类设计 using System.Net.Sockets; using System.Text…...

VIPSHOP 门店会员营销管家:助力实体商家数字化运营

一、概述总结 VIPSHOP 门店会员营销管家是针对实体商家在微信生态开展会员营销与销售的工具,依托微擎系统实现交付与更新。其核心目标是帮助商家解决 “获客难、留客难、老客激活难” 的痛点,通过构建会员等级体系、整合多元营销功能,将线下流量转化为线上私域资产,形成 “…...

Rhino 8.10 中文版下载安装步骤(附详细图文说明)

软件介绍 犀牛Rhino 8.10是一款功能强大的三维建模软件,它是基于NURBS(非均匀有理B样条)技术的建模工具,广泛应用于工业设计、建筑设计、珠宝设计、三维动画等多个领域。以下是犀牛Rhino 8.10的简介: 1. 功能特点: – NURBS建模: Rhino 8.10以NURBS建模功能为核心,能够…...

深入解析:第十四届蓝桥杯青少组C++选拔赛[2022.12.18]第二部分编程题(2、字符翻转)

深入解析:第十四届蓝桥杯青少组C++选拔赛[2022.12.18]第二部分编程题(2、字符翻转)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", …...

指令的执行过程

指令周期 cpu从主存中每取出一条指令所需要的全部时间 开始->取指令->对指令译码->执行指令->取下一条指令pc+1 指令周期常常使用若干个机器周期来表示,机器周期又叫cpu周期 一个机器周期包含若干个时钟周期(也被称作节拍,t周期,cpu时钟周期 也是cpu操作的基本…...

ALINX 助力希腊 SpaceDot AcubeSAT 卫星任务,2026 将入太空

ALINX 助力希腊 SpaceDot AcubeSAT 卫星任务,2026 将入太空pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New",…...

Ubuntu 安装JDK8

# 卸载当前的 JRE sudo apt remove openjdk-8-jre-headless# 安装完整的 JDK sudo apt install openjdk-8-jdk# 验证安装 java -version javac -version jps -l...

负载均衡层详解part 4

# keepaviled高可用 ## 一、keepaviled简介 负载均衡由七层负载均衡衍生出多级负载均衡,多出来四层负载均衡,再往前分就是DNS轮询,各种简单的、复杂的场景搭配用就可以了,有一个问题始终没有解决,整个集群架构中有的点是有单点故障问题的,怎么解决这个单点故障问题呢?就…...

重磅!中国科学引文数据库(CSCD)收录期刊(2025-2026)目录公布!共收录1464种期刊!

经过中国科学引文数据库(Chinese Science Citation Database,简称CSCD)定量遴选、专家定性评估, 2025-2026年度中国科学引文数据库收录来源期刊1464种,其中英文版期刊418种,中文版期刊1046种。 中国科学引文数据库来源期刊列表(2025-2026年度),因为篇幅较长,感兴趣(C…...

Flash Attenion算法原理

Flash Attenion算法原理 1.1 Flash Attention Step-by-Step1.2 Softmax \( \text{softmax}(x_i) = \frac{e^{x_i}}{\sum_{k=1}^{N} e^{x_k}} \)import torch A = torch.randn(2, 6) A_exp = torch.exp(A) A_sum = torch.sum(A_exp, dim=1).unsqueeze(1) P = A_exp / A_sum #广…...

电流探头消磁失败的原因与解决策略

在电子测量领域,电流探头的精准度是确保测试数据可靠性的关键因素,而消磁操作则是维持其测量精度的重要环节。消磁的主要目的是消除探头内部磁芯的剩磁,防止其对后续测量造成干扰。然而,在实际操作过程中,电流探头的消磁失败现象时有发生,这不仅会降低测量结果的准确性,…...

【算法】双指针(四)-盛最多水的容器 - 实践

【算法】双指针(四)-盛最多水的容器 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !impo…...

程序设计小学期小计

小学期游记程序设计小学期小计 昨天奋斗到晚 12 点,算是完成了小游戏的所有功能,小游戏的主体流程算是全部完成了。写一篇小计记录一下。 截至目前,这个项目已经有了 \(233\) 次提交,若干次的合并,构筑起了这个小游戏。 过程 我们组当初提出制作 3D 的网页游戏,这是往届前…...

3dma渲染噪点成因排查及优化方案 - 详解

3dma渲染噪点成因排查及优化方案 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !importa…...

hadoop配置日志聚集

日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。日志聚集功能好处:可以方便地查看到程序运行详情,方便开发调试。 注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryServer。[hadoop@hadoop101(192.168.0.101) /opt/modul…...

vxe-tree-select 树形下拉框当使用懒加载数据时如何回显

vxe-tree-select 树形下拉框当使用懒加载数据时如何回显 当使用懒加载或者当某个选项被删除时,显示自定义回显;比如使用懒加载树列表,由于数据未被加载,这时候已选的数据就不能被回显,导致显示了 value值,而不是 label。 还有一种场景就是组织架构人员选择,当选择某个人…...

GPT PMBR 大小不符解决方法

GPT PMBR 大小不符解决方法服务器输入fdisk -l 报GPT PMBR 大小不符(104857599 != 209715199),将用写入予以更正。The backup GPT table is not on the end of the device. This problem will be corrected by write. 通过采用parted -l就行修复,如下图 修复后,fdisk -…...

CodeFormer一款既能图像修复、还能视频增强去码的AI软件(下载介绍)

CodeFormer是一款强大的人工智能工具,主要用于图像和视频的修复和增强。它基于深度学习技术,特别是人脸复原模型,可以轻松修复和增强面部图像,提升照片和视频的质量和视觉效果工作原理 1、通过自动编码器实现人脸的变换,包括色彩化、清晰化、去马赛克修复等功能 2、采用了…...

PCB的导线电阻阻抗批量自动计算EXCEL表格工具 公式

https://wwqx.lanzoul.com/iv1Fg36h5xwh 密码:hcko...

微信协议开发个微API

微信协议开发个微API常见开发功能: 好友管理: 维护好友列表:包括添加、删除、修改好友信息。 分组管理:创建、编辑、删除标签,以便更好地组织好友。 消息管理: 信息发送:支持发送各种类型的消息,包括文本、图片、名片、动图表情、小程序、文件、视频和URL链接及防撤回等…...

Milvus Lite

Milvus (标准版):就像一个部署在专业机房、由多台服务器组成的大型数据中心。它性能强大、稳定可靠、支持高并发,是生产环境的不二之选。部署它,通常需要使用Docker或在Linux服务器上进行。Milvus Lite (轻量版):就像一台功能强大、开箱即用的个人开发笔记本。它把数据中心…...

如何解除 pip install 安装报错 ModuleNotFoundError: No module named ‘win32api’ 问题

如何解除 pip install 安装报错 ModuleNotFoundError: No module named ‘win32api’ 问题pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&quo…...