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

十月编程语言排行榜~

        前言:TIOBE编程语言排行榜通过分析全球开发者的活动、代码搜索和问答社区的流量,提供了编程语言受欢迎度的动态图景。该指数是技术趋势的风向标,揭示了哪些编程语言在技术领域占据主导地位,哪些语言正在快速崛起或逐渐衰退。


✨✨✨这里是秋刀鱼不做梦的BLOG

✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客

在开始讲解并查集之前,先让我们看一下本文大致的讲解内容:

目录

1.十月各编程语言排名

2.编程语言排名变化趋势分析

        (1)Python:稳居榜首

        (2)C++和C:基础编程语言的强势地位

        (3)Java:稳定中求变

        (4)Rust:新秀崛起

        (5)JavaScript:依然强大

3.常见编程语言简介及优缺点分析      

1. Python

2. C++

3. Java

4. C

5. C#

6. JavaScript

7. SQL

8. Go

9. PHP

10. Swift

4.对前十名编程语言未来排名的预测

5.推荐深入学习的编程语言

1. Python

2. JavaScript

3. Java

4. Go (Golang)

5. Rust

6. Kotlin

7. SQL


1.十月各编程语言排名

        根据2024年10月的TIOBE指数, Python继续蝉联第一,而C++和C分列第二和第四位。Java、C#等传统语言保持在前五名内,Rust则凭借其内存安全和高性能优势继续上升,以下为部分编程语言排名:

        从中我们可以看到python还是独占鳌头,紧跟着的时老牌三语言C++、Java、C,第五是C#。

2.编程语言排名变化趋势分析

        (1)Python:稳居榜首

        ——Python自2019年首次登上TIOBE榜首后,已经成为全球开发者的首选语言之一。这种持续的统治地位主要得益于其简洁的语法、强大的库支持以及在数据科学、人工智能(AI)和机器学习领域的广泛应用​。Python的上升是现代计算领域发展的一个反映——随着AI的崛起,Python凭借其卓越的数据处理能力迅速成为主流。

        (2)C++和C:基础编程语言的强势地位

        ——C++和C作为两种历史悠久的语言,继续在系统级编程和嵌入式系统中占据重要地位。2024年,C++的排名再次上升,反映了其在高性能计算和游戏开发中的不可替代性​。C语言虽然相对稳定,但依旧是嵌入式开发中的核心语言,尤其是在物联网和微控制器领域。C++通过其面向对象的特性比C更适合复杂的软件开发,但C的简洁性使其在底层开发中无可替代。

        (3)Java:稳定中求变

        ——尽管Java自2020年以来排名有所下滑,但在企业应用和Android开发领域,Java的市场份额依旧庞大。近年来,Java凭借其稳定性和跨平台支持,继续吸引开发者。尤其是在企业应用和大型分布式系统中,Java以其成熟的生态系统保持着一定的地位​。

        (4)Rust:新秀崛起

        ——Rust的排名上升是2024年最大的亮点之一。这种系统级编程语言以其内存安全和高性能著称,成为C/C++的有力竞争者,尤其在需要高并发和严格内存管理的领域中​。Rust的生态正在快速发展,越来越多的开源项目和大型公司开始使用Rust,这预示着其未来的持续增长潜力。

        (5)JavaScript:依然强大

        ——JavaScript的排名虽有所波动,但作为前端开发的主流语言,其重要性不容忽视。无论是传统的Web开发,还是近年来的全栈开发和移动应用开发,JavaScript都发挥着不可替代的作用。随着Node.js的崛起,JavaScript还在后端开发中取得了显著进展。

3.常见编程语言简介及优缺点分析      

1. Python

        简介:Python 是一种通用、高级编程语言,以其简洁的语法和强大的库支持著称。由于易于学习,它深受初学者和资深开发者的欢迎。Python 是在数据科学、人工智能(AI)和机器学习领域的首选语言,也是 Web 开发、自动化和脚本编写的常用工具。

优点

  • 易学易用:简洁的语法设计降低了学习曲线,特别适合初学者。

  • 广泛的库和框架支持:Python 拥有丰富的第三方库(如 NumPy、Pandas、TensorFlow)以及框架(如 Django、Flask)来简化开发。

  • 跨平台:Python 能够在多种操作系统(如 Windows、macOS、Linux)上无缝运行。

  • 社区支持强大:大量的开源项目和社区贡献,使得开发者可以轻松找到文档、教程和支持。

缺点

  • 执行效率低:由于 Python 是解释型语言,执行速度相比于编译型语言(如 C 或 C++)较慢,尤其在高性能计算中表现不佳。

  • 不适合移动端开发:尽管有如 Kivy 这样的框架,但 Python 在移动开发中的表现有限。

使用场景

  • 数据科学和机器学习:Python 在数据处理、可视化、机器学习领域广泛应用(如使用 TensorFlow、Scikit-learn)。

  • Web开发:使用 Django 或 Flask 构建高效的 Web 应用。

  • 自动化脚本和系统管理:Python 被广泛用于任务自动化,如自动化系统任务或数据处理。

2. C++

        简介:C++ 是一种面向对象的编程语言,由 C 语言扩展而来,支持复杂的系统和应用程序开发。它在高性能领域有着广泛的应用,尤其在游戏开发、嵌入式系统和实时系统中。

优点

  • 高性能:C++ 可以在高效率下处理复杂的计算任务,适用于性能要求苛刻的场景。

  • 灵活性高:支持多种编程范式,包括过程式、面向对象和泛型编程。

  • 控制力强:允许开发者手动管理内存和硬件资源,适合需要精细控制的开发环境。

缺点

  • 复杂性高:相比其他语言,C++ 的语法复杂且容易引发内存管理问题,如内存泄漏和指针错误。

  • 编译时间较长:由于 C++ 的多态性和模板机制,编译时间较长。

使用场景

  • 游戏开发:C++ 是游戏引擎(如 Unreal Engine)的核心语言,广泛用于开发高性能的 3D 游戏。

  • 嵌入式系统:C++ 常用于控制硬件的嵌入式系统开发,要求高效率和低延迟。

  • 系统软件:C++ 被用于开发操作系统、驱动程序、数据库管理系统等系统级软件。

3. Java

        简介:Java 是一种面向对象、跨平台的编程语言,广泛应用于企业级应用开发。它以“编写一次,运行到处”为设计理念,在大型企业系统和 Android 应用开发中占据重要地位。

优点

  • 跨平台性:Java 通过 Java 虚拟机(JVM)实现跨平台运行,适合开发大规模的企业应用。

  • 内存管理自动化:Java 的垃圾回收机制自动处理内存分配和释放,减轻了开发者的负担。

  • 丰富的库和框架:Java 拥有庞大的生态系统,如 Spring、Hibernate,用于开发企业级应用。

缺点

  • 执行速度相对较慢:Java 的垃圾回收和虚拟机层增加了执行开销,在某些高性能场景下不如 C++。

  • 语法冗长:Java 相对其他现代语言(如 Python)语法较为冗长,开发效率较低。

使用场景

  • 企业级应用:Java 是金融、保险、医疗等大型企业系统的首选语言。

  • Android应用开发:Java 是 Android 开发的主要语言,虽然 Kotlin 近年来逐渐崛起,但 Java 仍有广泛应用。

  • 分布式系统:Java 在大规模分布式系统和云计算中有重要应用,如 Apache Hadoop 和 Apache Kafka。

4. C

        简介:C 语言是一种基础编程语言,广泛用于系统级编程和嵌入式系统开发。C 语言的简洁性和高效性使其成为编写操作系统、编译器和数据库的常用语言。

优点

  • 高性能:C 语言的编译代码非常高效,适合需要底层操作的系统开发。

  • 灵活性强:由于 C 是一种低级语言,开发者可以直接控制内存和硬件资源。

  • 可移植性:C 代码可以在不同平台上轻松编译和运行,适用于跨平台系统开发。

缺点

  • 内存管理复杂:开发者需要手动管理内存,容易引发诸如内存泄漏、缓冲区溢出等问题。

  • 缺乏高级特性:C 不支持面向对象编程,也没有内置的异常处理机制。

使用场景

  • 操作系统开发:C 是大多数操作系统(如 UNIX、Linux)的主要开发语言。

  • 嵌入式系统:C 是编写固件、驱动程序和实时系统的首选语言,因其效率高、控制力强。

  • 编译器开发:C 通常用于编写编译器和解释器,如 GCC。

5. C#

        简介:C# 是微软开发的面向对象编程语言,广泛应用于企业级应用、桌面应用和游戏开发领域。C# 与 .NET 框架深度集成,使其成为 Windows 平台上开发的首选语言。

优点

  • 与 .NET 框架集成:C# 与 .NET 框架无缝协作,提供了丰富的类库,方便开发企业级应用和 Web 应用。

  • 面向对象编程支持:C# 拥有完整的面向对象编程特性,适合大型软件项目开发。

  • 跨平台支持:通过 .NET Core 和 Xamarin,C# 可以跨平台开发应用,尤其适用于移动应用开发。

缺点

  • 微软依赖:C# 的主要开发平台依赖于微软生态系统,在非 Windows 环境中使用受限。

  • 学习曲线:虽然相对较浅,但对于没有面向对象编程背景的初学者,理解 C# 的所有特性仍然需要一定时间。

使用场景

  • 游戏开发:C# 是 Unity 游戏引擎的主要开发语言,广泛用于 2D 和 3D 游戏的开发。

  • 企业应用:C# 在开发 Windows 桌面应用和企业级解决方案(如 CRM 系统)中非常流行。

  • Web 开发:通过 ASP.NET,C# 可用于构建高效、可扩展的 Web 应用。

6. JavaScript

        简介:JavaScript 是 Web 开发的核心语言之一,最初用于前端开发,如今也用于后端(Node.js)和移动应用开发。它是客户端脚本语言的首选,帮助开发者实现交互式和动态网页。

优点

  • 跨平台支持:JavaScript 是唯一被所有主流浏览器支持的前端语言,适用于跨平台 Web 开发。

  • 全栈开发支持:随着 Node.js 的崛起,JavaScript 可用于构建前端和后端应用。

  • 大量框架和工具:如 React、Vue.js、Angular 等前端框架,以及 Node.js 使开发变得更加高效。

缺点

  • 灵活性过高:JavaScript 语法灵活,容易出现代码质量问题,如类型不一致。

  • 性能瓶颈:在计算密集型任务中,JavaScript 的性能相对较低。

使用场景

  • 前端开发:JavaScript 是构建动态网页的核心语言,用于处理客户端的交互和动画效果。

  • 后端开发:通过 Node.js,JavaScript 也可以用于构建高效的后端应用。

  • 全栈开发:使用 JavaScript,开发者可以轻松在前端和后端之间切换,提供全栈开发解决方案。

7. SQL

        简介:SQL(Structured Query Language)是一种用于管理和查询关系型数据库的标准语言。它允许用户通过简单的语法查询数据并执行复杂的操作,适合用于数据库管理系统(DBMS)。

优点

  • 简单易用:SQL 的查询语言设计简洁明了,适合非编程背景的用户快速上手。

  • 强大的数据操作功能:SQL 支持数据插入、更新、删除、筛选、排序等多种操作,方便进行复杂的数据库管理。

  • 广泛应用:SQL 是主流数据库系统(如 MySQL、PostgreSQL、SQL Server、Oracle)的标准语言。

缺点

  • 数据库依赖性强:SQL 的某些特性在不同的数据库管理系统中可能有不同的实现或限制。

  • 性能问题:在处理海量数据时,SQL 查询可能会出现性能瓶颈,需要进行优化。

使用场景

  • 关系型数据库管理:用于存储和查询结构化数据,SQL 是电商平台、金融系统、内容管理系统等的核心语言。

  • 数据分析:SQL 被广泛应用于大数据分析和商业智能工具中,处理数据查询和聚合操作。

8. Go

        简介:Go 是谷歌开发的开源编程语言,旨在提供简洁、高效的编程体验。它结合了动态语言的开发速度与系统语言的高性能,广泛应用于后端开发和云计算领域。

优点

  • 简洁且高效:Go 的语法简洁,且有内置的并发支持,能够高效处理并发任务。

  • 编译快:Go 的编译速度比 Java、C++ 更快,且编译后的代码性能较高。

  • 内置垃圾回收机制:Go 自动管理内存,减少了内存管理的负担。

缺点

  • 库和框架较少:相比于其他老牌语言,Go 的生态系统相对较小,缺少成熟的第三方库。

  • 没有泛型支持:直到最近,Go 语言才逐渐支持泛型,这可能会限制某些类型的开发。

使用场景

  • 云计算:Go 是开发云计算服务的理想选择,许多云原生工具(如 Kubernetes)都是用 Go 编写的。

  • 微服务架构:Go 因其并发处理能力,适合构建轻量级、高性能的微服务架构。

9. PHP

        简介:PHP 是一种用于 Web 开发的服务器端脚本语言,特别适合构建动态内容和 Web 应用。它广泛用于小型企业和个人项目,尤其是内容管理系统(如 WordPress)。

优点

  • 易学易用:PHP 的语法简单,入门容易,且拥有大量文档和支持社区。

  • 与 Web 紧密结合:PHP 是专为 Web 开发设计的,拥有与 HTML 无缝集成的能力,适合快速构建动态网站。

  • 广泛的框架支持:如 Laravel 和 Symfony 使得 PHP 在大型 Web 项目中也能表现出色。

缺点

  • 性能有限:相比其他服务器端语言,PHP 的性能较低,尤其在处理高并发请求时。

  • 安全问题:PHP 的灵活性使得它容易出现安全漏洞,开发者需要特别注意输入验证和加密。

使用场景

  • 动态 Web 开发:PHP 广泛用于开发动态网站,特别是在构建博客、论坛、电子商务平台时。

  • 内容管理系统:如 WordPress、Drupal 等大多数内容管理系统都基于 PHP。

10. Swift

        简介:Swift 是苹果公司推出的编程语言,旨在替代 Objective-C,用于开发 iOS、macOS、tvOS 和 watchOS 应用程序。Swift 结合了现代编程语言的优点,提供了简洁、安全、高效的开发体验。

优点

  • 现代化语法:Swift 拥有简洁的语法,并支持现代编程特性,如类型安全、泛型和闭包。

  • 高性能:Swift 代码编译后运行速度快,与 Objective-C 相比性能有所提升。

  • 安全性高:Swift 的类型系统和错误处理机制降低了常见编程错误(如空指针异常)的发生率。

缺点

  • 生态系统受限:Swift 主要用于苹果生态系统,尽管有跨平台开发的尝试,但仍然主要依赖 iOS 和 macOS。

  • 学习曲线陡峭:Swift 的一些高级特性(如闭包和泛型)可能对初学者来说较为复杂。

使用场景

  • iOS开发:Swift 是开发 iPhone 和 iPad 应用的首选语言,具有苹果官方的支持。

  • macOS应用开发:Swift 也用于开发 macOS 桌面应用,能很好地整合苹果生态系统。

        以上为生活中较为常见编程语言简介及优缺点分析!!!

4.对前十名编程语言未来排名的预测

        随着AI、云计算、物联网等技术的迅猛发展,编程语言的受欢迎度也将继续变化。

  1. Python将继续占据榜首,特别是在AI和数据科学领域的扩展应用。
  2. C++和Rust的竞争将日趋激烈。C++虽然稳固,但Rust的内存安全优势和现代特性可能在未来进一步提升其排名。
  3. Java的排名可能会继续稳定在前五名内,主要由于其在大企业应用中的持久性。
  4. JavaScript将继续保持在前十名中,得益于Web开发的强大需求。
  5. Go凭借其并发编程优势和微服务开发中的应用,预计在未来几年将继续上升。

5.推荐深入学习的编程语言

        根据 TIOBE 十月的编程语言排行榜,以下是推荐开发者深入学习的几种编程语言,以及学习过程中可能遇到的问题和应对策略。

1. Python

为什么推荐: Python 是一门非常适合初学者的语言,具有简洁的语法和强大的生态系统。它的应用领域非常广泛,从数据科学、人工智能到 Web 开发都有用武之地。此外,Python 的社区非常活跃,提供了大量的库和框架,大大提高了开发效率。

  • 数据科学和机器学习的首选:Python 在数据处理和机器学习领域占据主导地位,库如 NumPy、Pandas、TensorFlow 和 Scikit-learn 使得数据分析和建模变得更加高效。
  • Web开发:Django 和 Flask 是两个流行的 Web 框架,适合开发全栈应用。
  • 自动化和脚本编写:Python 常用于自动化日常任务和系统管理脚本。

可能遇到的问题

  • 性能瓶颈:Python 的执行速度较慢,对于计算密集型任务可能不如 C++ 或 Java 高效。可以通过引入 C 扩展或使用多进程库来优化性能。
  • 并发处理:Python 的 GIL(全局解释器锁)限制了多线程的并发执行,开发者可能需要熟悉异步编程模型(如 asyncio)来处理并发问题。

2. JavaScript

为什么推荐: JavaScript 是 Web 开发的核心语言,前端开发的基础。它的全栈开发能力使其成为 Web 开发者的必学语言,尤其是使用 React、Vue.js、Node.js 等技术栈的开发者。

  • 前端开发必备:JavaScript 是所有浏览器原生支持的语言,通过 HTML5 和 CSS 构建交互式网站必不可少。
  • 后端开发的选择:Node.js 为 JavaScript 提供了后端开发能力,允许使用同一种语言实现前后端。
  • 全栈开发者的首选:能够用 JavaScript 实现从前端到后端再到数据库的全栈解决方案,极大提升了开发效率。

可能遇到的问题

  • 灵活性过高:JavaScript 允许动态类型和函数式编程,但过度灵活可能导致代码难以维护。使用 TypeScript(JavaScript 的类型安全超集)可以有效解决这个问题。
  • 异步编程的挑战:JavaScript 的异步特性要求开发者熟悉回调、Promise 和 async/await 等机制,初学者在处理复杂的异步逻辑时可能感到困惑。

3. Java

为什么推荐: Java 是一门稳健、跨平台的编程语言,企业应用开发中占据重要地位。特别是在大规模、分布式系统的开发中,Java 提供了强大的工具和框架(如 Spring、Hibernate)。此外,Java 还是 Android 应用开发的核心语言。

  • 跨平台性强:Java 的 “编写一次,运行到处” 特性使其成为大型企业系统的首选语言,尤其是在跨平台分布式系统中表现优越。
  • Android开发:尽管 Kotlin 已逐渐成为 Android 开发的主流语言,Java 仍是 Android SDK 的基础语言,学习 Java 有助于理解底层机制。
  • 企业级应用:Java 在金融、医疗、保险等领域的应用非常广泛,Spring 框架则为企业级开发提供了强大支持。

可能遇到的问题

  • 语法相对繁琐:相比 Python 或 JavaScript,Java 的语法显得较为冗长,初学者可能需要较长时间掌握面向对象编程的概念。
  • 垃圾回收机制的理解:Java 的垃圾回收虽然解放了内存管理的负担,但开发者仍需要了解如何优化垃圾回收,特别是在高性能系统中。

4. Go (Golang)

为什么推荐: Go 是由谷歌开发的现代编程语言,以其高并发性和高效编译速度著称,适合构建云计算、微服务和分布式系统。它的语法简单,代码运行效率高,是后端开发和云原生应用的理想选择

  • 并发编程的领先者:Go 的 goroutine 和 channel 模型使得并发编程变得简单高效,特别适合开发微服务和并发处理任务。
  • 云原生应用的首选:Go 是 Kubernetes、Docker 等云原生项目的核心语言,非常适合构建分布式系统。

可能遇到的问题

  • 缺乏泛型支持:尽管 Go 在最近版本中开始支持泛型,初学者可能需要时间适应它的使用模式。
  • 生态系统相对较小:虽然 Go 语言发展迅速,但相比 Java 或 Python,它的第三方库和框架生态相对较少。

5. Rust

为什么推荐: Rust 是一门系统级编程语言,提供内存安全且无需垃圾回收。它被认为是 C 和 C++ 的现代替代品,适合于开发需要高性能和内存控制的应用程序,如操作系统、嵌入式系统和区块链项目。

  • 内存安全:Rust 通过所有权系统和借用检查器有效避免了空指针和数据竞争问题,提供了类似 C++ 的性能,同时消除了内存管理错误的风险。
  • 高性能:Rust 语言可以编写出与 C++ 相媲美的高性能代码,适用于需要精确控制资源的场景。

可能遇到的问题

  • 学习曲线陡峭:Rust 的所有权模型和借用机制需要开发者深刻理解内存管理,初学者可能会感到复杂。
  • 生态系统仍在发展:虽然 Rust 的社区增长迅速,但与 C++ 等成熟语言相比,工具和库的生态系统仍在完善。

6. Kotlin

为什么推荐: Kotlin 是一种由 JetBrains 开发的现代编程语言,与 Java 兼容性极高,尤其在 Android 开发中逐渐取代 Java 成为首选。Kotlin 简洁的语法、良好的空安全设计和与 Java 的互操作性,使得它成为 Java 开发者的理想替代选择。

  • Android开发的首选:Google 官方推荐使用 Kotlin 作为 Android 应用开发的主要语言,Kotlin 的简洁语法使开发效率显著提高。
  • 与 Java 完全兼容:Kotlin 可以与 Java 代码无缝互操作,现有的 Java 项目可以逐步迁移到 Kotlin,减少了学习成本。

可能遇到的问题

  • 与 Java 互操作中的陷阱:虽然 Kotlin 和 Java 可以互相调用,但一些边界情况可能导致意外行为,开发者需要熟悉两者的差异。
  • 生态系统相对较新:尽管 Kotlin 的发展迅速,但与 Java 相比,它的生态系统和社区支持仍在完善。

7. SQL

为什么推荐: SQL 是关系型数据库管理系统的核心语言,广泛用于数据查询和操作。掌握 SQL 对于从事数据分析、数据库管理或开发基于数据驱动应用的开发者至关重要。

  • 数据操作的标准语言:SQL 是查询、插入、更新和删除关系型数据库数据的标准语言,所有的主流数据库(如 MySQL、PostgreSQL、Oracle)都支持 SQL。
  • 数据分析的基础:SQL 是商业智能(BI)和数据仓库操作的基础语言,适合分析大量数据集。

可能遇到的问题

  • 数据库优化挑战:虽然 SQL 语法简单,但在处理大规模数据时,查询性能优化可能成为挑战。开发者需要深入学习索引、查询优化和数据库设计等高级主题。
  • 跨数据库兼容性问题:不同数据库管理系统对 SQL 的实现可能存在细微差异,开发者需要了解不同平台上的兼容性问题。

        以上几种编程语言涵盖了不同的领域与场景,从高性能计算到Web开发、从系统编程到数据科学。开发者可以根据自己的兴趣和职业方向选择合适的语言深入学习。在学习过程中,理解每种语言的优缺点,并结合实际项目练习是提升技能的关键。


以上就是本篇文章的全部内容~~~

相关文章:

十月编程语言排行榜~

前言:TIOBE编程语言排行榜通过分析全球开发者的活动、代码搜索和问答社区的流量,提供了编程语言受欢迎度的动态图景。该指数是技术趋势的风向标,揭示了哪些编程语言在技术领域占据主导地位,哪些语言正在快速崛起或逐渐衰退。 ✨✨…...

十三、行为型(策略模式)

策略模式(Strategy Pattern) 概念 策略模式(Strategy Pattern)是一种行为型设计模式,允许定义一系列算法,将每个算法封装在策略类中,并使它们可以互换使用。客户端可以根据需要动态选择不同的策…...

Vue环境安装以及配置

这里写目录标题 前言一、前置要求1.安装Node.js2. 安装VScode 二、创建全局安装目录和缓存日志目录三、配置环境变量四、权限五、npm换源六、vscode插件1. Vue-Offical2. Vue 3 Snippets3. Path Intellisense4. Auto Import5. Auto Close Tag6. Auto Rename Tag7.GitLens总结 前…...

Redis 数据类型hash(哈希)

目录 1 基本特性 2 主要操作命令 2.1 设置和获取字段 2.1.1 HSET key field value 2.1.2 HGET key field 2.1.3 HMSET key field1 value1 [field2 value2 ...] 2.1.4 HMGET key field1 [field2 ...] 2.2 检查字段是否存在 2.2.1 HEXISTS key field 2.3 获取所有字段…...

单一执行和循环执行的例行性工作

单一执行的例行性工作:只执行一次就结束 1.1at命令的工作过程 /etc/at.allow,写在该文件的人可以使用at命令 /etc/at.deny,黑名单 两个文件如果都不存在,只有root能使用 [rootlocalhost ~]# systemctl status atd [rootlocalh…...

单细胞分析 | Cicero+Signac 寻找顺式共可及网络

引言 在本指南[1]中,将介绍如何利用Cicero工具和单细胞ATAC-seq数据来识别共可接近网络。 为了在Seurat(Signac工具使用的格式)和CellDataSet(Cicero工具使用的格式)之间轻松转换数据,将利用GitHub上的Seur…...

人工智能创造出大量新型蛋白质

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...

Palo Alto Networks Expedition 未授权SQL注入漏洞复现(CVE-2024-9465)

0x01 产品介绍: Palo Alto Networks Expedition 是一款强大的工具,帮助用户有效地迁移和优化网络安全策略,提升安全管理的效率和效果。它的自动化功能、策略分析和可视化报告使其在网络安全领域中成为一个重要的解决方案。 0x02 漏洞描述&am…...

c 语言 sprintf

在C语言中,sprintf是一个非常常用的函数,它用于将格式化的数据写入字符串中。sprintf函数的原型通常定义在stdio.h头文件中。 sprintf函数的原型如下: int sprintf(char *str, const char *format, …); 参数说明: str&#xf…...

stm32单片机个人学习笔记10(TIM编码器接口)

前言 本篇文章属于stm32单片机(以下简称单片机)的学习笔记,来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记,只能做参考,细节方面建议观看视频,肯定受益匪浅。 STM32入门教程-2023版 细…...

如何在Android中存储数据?

在Android中存储数据是开发过程中至关重要的一环,根据数据的类型、大小、访问频率及安全性需求,开发者可以选择多种存储方式。以下是Android中存储数据的几种主要方式,每种方式都有其特定的应用场景和优缺点。 一、SharedPreferences Share…...

13.3寸工业三防平板数字化工厂产线数采手持终端

在数字化工厂的建设浪潮中,高效可靠的数据采集终端至关重要。尤其在水处理、食品加工等特殊工业环境下,设备的耐用性和数据安全性面临严峻挑战。传统的平板电脑难以应对复杂的工业现场,而一款性能卓越、坚固耐用的工业三防平板则成为提升生产…...

ssh连接慢的问题或zookeeper远程连接服务超时

问题原因: 在SSH登录过程中,服务器会通过反向DNS查找客户端的主机名,然后与登录的IP地址进行匹配,以验证登录的合法性。如果客户端的IP没有域名或DNS服务器响应缓慢,这可能导致SSH登录过慢。为了解决这个问题&#xf…...

perf工具使用指导

linux perf工具使用指导 perf 是 Linux 内核自带的性能分析工具,主要用于分析系统性能瓶颈和程序的性能问题。通过合理使用 perf 工具,可以有效地分析和优化系统性能。 安装 perf 在大多数 Linux 发行版中,perf 工具通常随内核源代码包一起…...

WordPress 禁用上传媒体图片自动生成缩略图及多尺寸图片教程

一、在 设置-媒体-媒体设置 中几个尺寸大小的设置不勾选或设置为 0&#xff0c;如下图&#xff1a; 二、找到主题文件 function.php 文件&#xff0c;打开后&#xff0c;在 <?php 后面添加如下代码&#xff1a; function.php 文件路径一般为&#xff1a;WordPress网站根目录…...

锥线性规划【分布鲁棒、两阶段鲁棒方向知识点】

1 锥线性对偶理论 本部分看似和分布鲁棒、两阶段鲁棒优化没什么关系&#xff0c;但值得优先学习&#xff0c;原因将在最后揭晓。 二阶锥 二阶锥&#xff08;second-order cone&#xff0c;又称ice-cream/Lorentz cone&#xff09;的形式为&#xff1a; 非负象限锥 半正定锥 …...

linux环境下的程序设计与git操作

目录 前言&#xff1a; 进度条小程序&#xff1a; 先介绍几个背景知识 代码实现 Git操作 总结 其他指令 前言&#xff1a; 本文将重点介绍1. linux下的程序设计&#xff0c;并使用linux下的几个函数接口。实现一个简单的小程序 2.本着开源精神&#xff0c;进行git操作。…...

Matlab中HybridFcn参数的用法

在 MATLAB 中&#xff0c;HybridFcn 参数允许你在全局优化&#xff08;如遗传算法 ga 或粒子群算法 particleswarm&#xff09;之后使用局部优化算法进一步微调解的精确度。HybridFcn 通过在全局优化找到的解基础上&#xff0c;进一步调用局部优化器&#xff0c;如 fmincon、pa…...

Leetcode 3316. Find Maximum Removals From Source String

Leetcode 3316. Find Maximum Removals From Source String 1. 解题思路2. 代码实现 题目链接&#xff1a;3316. Find Maximum Removals From Source String 1. 解题思路 这一题思路上的话就是一个动态规划的题目&#xff0c;我们仿照lcs&#xff0c;考察每一个位置是否可以…...

jeecg3版本的vue,离线启动

jeecg的vue2版本已经停止维护&#xff0c;所以只能用vue3的版本。3版本中使用的是pnpm&#xff08;npm的增强版本&#xff09;下载依赖。使用pnpm安装的node_modules&#xff0c;不能直接复制到离线主机中&#xff08;因为在 pnpm安装过程中&#xff0c;会给依赖的配置文件写死…...

C++的内存管理

[TOC} C的内存管理 各个区储存内容 1.栈 局部变量和在执行函数时&#xff0c;函数中创建的局部变量都会在栈上创建&#xff0c;函数执行结束时会被自动释放。从高地址向低地址储存。 2.堆 是new/malloc/calloc/realloc分配的代码块&#xff0c;需要手动释放。如果程序员没…...

YZ系列工具之YZ09:VBA_Excel之读心术

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。我的教程一共九套一部VBA手册&#xff0c;教程分为初级、中级、高级三大部分。是对VBA的系统讲解&#xff0c;从简单的…...

嵌入式系统---看门狗

在嵌入式系统中&#xff0c;看门狗定时器&#xff08;Watchdog Timer&#xff0c;WDT&#xff09;是一种常用的机制&#xff0c;用于检测和恢复系统在异常情况下的故障。如果系统因为某种原因&#xff08;如软件死循环&#xff09;而变得无响应&#xff0c;看门狗定时器可以自动…...

从MySQL5.7迁移到8.0时,有哪些重要的参数调整或新参数需要注意?

从 MySQL 5.7 迁移到 MySQL 8.0 时&#xff0c;有一些重要的参数调整和新参数需要注意。MySQL 8.0 引入了许多新功能和改进&#xff0c;同时也对一些现有参数进行了更改或废弃。 1. lower_case_table_names 说明: 控制表名是否区分大小写。重要性: 在迁移过程中&#xff0c;确…...

完整发布/上传uniapp Ios应用到App Store流程

使用uniapp打包&#xff0c;假如使用app store证书打包出来的ipa文件&#xff0c;需要上传到app store上才能上架。假如你还没有app store证书&#xff0c;还没有打包&#xff0c;你可以参考下面这篇文章&#xff0c;先创建打包证书再继续看这篇上架的教程&#xff1a;https://…...

CodeActAgent :Executable Code Actions Elicit Better LLM Agents解读

论文地址 https://arxiv.org/pdf/2402.01030.pdf 项目地址 https://github.com/svjack/CodeActAgent-Gradio/blob/main/README.md 代码智能体的优势 选择代码智能体有以下几个关键原因&#xff0c;它们相较于使用类似JSON的字典输出具有显著优势&#xff1a; 1. 代码的高…...

中小型医院网站开发:Spring Boot入门

2 相关技术简介 2.1 Java技术 Java是一种非常常用的编程语言&#xff0c;在全球编程语言排行版上总是前三。在方兴未艾的计算机技术发展历程中&#xff0c;Java的身影无处不在&#xff0c;并且拥有旺盛的生命力。Java的跨平台能力十分强大&#xff0c;只需一次编译&#xff0c;…...

Java读取PDF后做知识库问答_SpringAI实现

​​​​​​​​​​​​​​ 核心思路&#xff1a; 简单来说&#xff0c;就是把PDF文件读取并向量化&#xff0c;然后放到向量存储里面&#xff0c;再通过大模型&#xff0c;来实现问答。 RAG&#xff08;检索增强生成&#xff09;介绍&#xff1a; 检索增强生成&#x…...

打开exe程序显示没有适当的访问权限

打开exe程序显示没有适当的访问权限 打开.exe可执行程序&#xff0c;显示Windows 无法访问指定设备、路径或文件。你可能没有适当的权限访问该项目。 解决方法 鼠标选中该文件或文件夹&#xff0c;右键单击选择属性&#xff0c;在弹出的属性选项卡中切换到安全选项卡&#xf…...

Python异步编程:使用`create_task`并发执行协程

Python异步编程&#xff1a;使用create_task并发执行协程 1. 什么是create_task&#xff1f;2. 为什么需要create_task&#xff1f;3. 如何使用create_task&#xff1f;3.1 基本用法3.2 任务的返回值 4. 注意事项5. 总结 在Python的异步编程中&#xff0c;asyncio库为我们提供了…...