“2024年最流行的10个前端框架”

news2024/11/27 5:24:40

        大多数时候,前端开发人员需要使用一组组合语言来构建他们的前端 Web 应用程序。 HTML 负责网页中的基本布局,CSS 管理视觉格式和结构,JavaScript 用于维护交互性和功能。在这篇文章中,我们将了解最好的前端框架,这些框架为前端 Web 开发人员在为其前端应用程序编写代码时铺平了道路。

        前端框架通过为 Web 开发人员提供可重用的代码模块、标准化的前端技术和现成的接口块来简化应用程序和用户界面的开发,而无需从头开始编写每个函数或对象的代码,从而促进 Web 开发人员的工作。

        这些前端框架附带各种开发工具,包括简化用户界面设计组件的放置和定位的网格、预定义的字体设置以及网站面板、按钮、导航栏等网站标准构建库存。

        如今市场上有很多前端框架,其中大多数都运行在 JavaScript 上。前端开发人员总是争论他们选择的最佳框架,这就是为什么您需要了解它们的功能,以便能够选择一个适合您开发 Web 应用程序的需求。为此,下面对2024年最高效、最突出、最易用的前端框架进行了详细比较。

什么是框架?

        如果您简单地查看一些 Web 应用程序,您会发现它们充满了重复和相似的功能和部分。例如,大多数 Web 应用程序都具有用户身份验证、呈现页面、 数据库连接、可查看的配置文件、风格化的信息源等等。前端开发人员每次构建应用程序时可能都需要编写这些功能背后的所有逻辑;然而,前端框架可以瞬间完成这些工作。

        由于大多数 Web 应用程序都提供非常相似(有时甚至相同)的结构,因此开发前端框架是为了提供通用结构,因此开发人员不必从头开始编写所有内容。这使他们能够重用代码,简化开发项目期间的大部分工作并节省大量时间。换句话说,没有必要重新发明轮子。

        此外,前端开发人员关心他们的代码是否可以被倾向于在其开发项目中使用该代码的其他人读取。这就是为什么开发人员喜欢使他们的编码尽可能高效且易于理解。事实上,代码被读取的次数比最初写入的次数要多得多。因此,前端开发人员必须帮助其他人知道某些任务的代码存在于他们的项目中的哪里,以便他们可以为自己使用。

        Web 框架帮助前端开发人员在其网站应用程序中实现结构并轻松添加附加功能。前端框架加快了开发项目的启动,并将开发人员的注意力集中在功能而不是配置细节上。他们还制定了如何编写和构建代码的约定,这可以标准化开发过程的发生方式。

前端框架与后端框架

        您可能听说过,框架通常分为两部分: 前端框架和后端框架。网站应用程序的前端是您可以看到并与之交互的部分。它涉及网站应用程序中的网页设计和交互工具。网站的前端几乎总是使用 HTML、CSS 和 JavaScript 语言进行设计。前端框架主要用于组织网站应用程序的开发、功能和交互性。

        另一方面,网站应用程序的后端由服务器、数据库以及与它们交互的代码组成。当您在浏览器上访问网站应用程序时,您无法看到网站应用程序的后端。网站后端的代码将动态数据传递到前端部分,以便您可以看到它。网站的后端可以用大多数编程语言编写,包括 Python、Ruby 和 Node JavaScript 以及许多其他语言。

2024 年最好的前端框架

        随着技术的进步,一些前端框架的设计是为了让开发人员获得最高的效率。所有框架都有其独特的功能,使得开发人员很难选择一个。由于每个企业都有不同的需求和目标,因此其网站和应用程序的开发也应根据其需求和梦想进行管理。

        市场上最好的前端框架一直存在争议。然而,最近的研究和调查表明,目前最流行的前端框架是 React、Vue、Angular、Svelte、JQuery、Ember、Backbone、Semantic UI、Foundation 和 Preact。下面,我们将回顾每一种,以确定它们的特性和局限性,最终为我们的项目选择一种。

React

        React 无疑是市场上最知名的前端框架之一,最初由 Facebook 于 2011 年开发。简单来说,React 是一个基于 JavaScript 组件的库,具有 JSX 语法。它于 2013 年转变为开源库,这一开发过程使 React 与前端框架的经典定义有些不同。

        超过 300 万活跃用户使用 React。该框架背后有一个庞大的社区支持它。近 80% 的有能力的开发人员在他们的开发项目中至少有过一次积极且轻松的 React 体验。令人惊叹的是,已经有超过 150 万个 Web 应用程序是在 React 的帮助下开发的。使用 React 设计的一些最受欢迎的现实项目包括 Facebook、 Netflix 、Vivaldi Browser、Khan Academy、BBC、Airbnb、Pinterest、Asana、Reddit 和 UberEats。

        React 前端框架的主要优势特性是具有单向数据绑定的虚拟文档对象模型 (DOM)。得益于 DOM,React 为开发人员提供了出色的性能,并被认为是开发人员可以学习的最简单的框架之一。这个前端框架非常用户友好,并且提供了简单的学习曲线,使其成为初学者或经验不足的开发人员的最佳选择。

        与其他前端框架不同,React 框架是一个库,并不维护一些必要的功能。因此,它被设计为与其他库一起完成状态管理、路由以及与API交互等任务。由于React的组件是可重用的,如果你想节省交互界面的开发时间,它被认为是正确的选择。

优点

  • 更新快
  • 由脸书支持
  • 虚拟 DOM,用于在文档中快速操作
  • 兼容很多JS库
  • 编写没有类的组件
  • 代码组件可以重用
  • 适合初学者
  • 易于在不同版本之间迁移

局限性

  • JSX 语法学习起来比较复杂
  • 缺乏详尽的文档

应用

        由于 React 配备了虚拟 DOM 功能,因此它被认为是复杂 Web 开发项目的最佳前端框架之一,这些项目有许多块(导航面板、手风琴部分、按钮等)经历变量/二进制状态,例如活动/非活动、展开/折叠、活动/禁用等。如果您想让 React 框架更加高效,您可以将其与其他库(例如 Redux)一起使用。

        对于不习惯用纯 JavaScript 编写代码的开发人员来说,React 可能不是所有前端框架中的最佳选择。对于那些不愿意花时间学习 JSX 语法的开发人员来说,JSX 语法可能是一个最初的障碍。

Vue.js

        有趣的是,据报道 40% 的开发者在其职业生涯中至少尝试过一次 Vue.js。此外,该前端框架还帮助设计了超过 700,000 个 Web 应用程序,其中包括阿里巴巴、路透社、9gag、小米和 Ride Receipts 等热门品牌。

        与其他一些流行的前端框架不同,Vue.js 并没有得到大型市场参与者的支持。该框架最初由 Evan You 于 2014 年创建,他也是 Angular 的开发者,Angular 是另一个流行的 JS 前端框架。稍后我们将讨论 Angular 的特性。

        Vue 凭借其虚拟 DOM、基于组件的架构和双向绑定提供了高速性能。这些都是前端框架更新相关组件和跟踪数据变化所需的一切,这对于所有需要实时更新的应用程序来说都是必须的。与其他前端框架相比,开发人员也可以享受 Vue 的小尺寸,因为包含它的压缩文件仅重 18 KB。

        凭借解释良好的文档和支持性社区,Vue 易于使用,并且比 Angular 和许多其他前端框架更容易适应,并且它被称为对初学者最友好的框架之一。它提供了无数的工具,包括插件安装系统、浏览器调试工具、状态管理器、端到端测试工具、服务器渲染器等等。

优点

  • 速度快、体积小
  • 全面的文档
  • 适合初学者
  • 双向数据绑定
  • 简单的语法
  • 对 SEO 的积极影响

局限性

  • 缺少插件
  • 由私人新建和开发
  • 大型项目中的应用有限
  • 没有强大企业的支持

应用

Vue 可能是从头开始构建单页应用程序或启动小型 Web 开发项目的最佳前端框架之一。它可以简单地与服务器页面集成,并为开发人员提供各种功能(如树摇动、捆绑、代码分割等)的支持。

Angular

        Angular,也称为 Angular 2+,是当今最流行的软件开发工具之一。它是一个基于 TypeScript 工作的现代开源前端框架。到目前为止,已经有超过 600,000 个网站使用 Angular 或 Angular 2+ 开发。它已被用于开发 Google 提供的大多数服务。

        Angular 通常用于移动和 Web 应用程序的开发。使用 Angular 可以轻松构建单页和多页 Web 应用程序。这就是为什么许多品牌都使用 Angular 或 AngularJS 进行设计,包括福布斯、乐高、UPS、宝马和 Autodesk 等知名品牌。

        Google 于 2009 年首次推出 Angular,将其作为 JavaScript 生态系统的一部分。从那时起,这个前端框架越来越受到开发者的欢迎。该前端框架的当前版本 Angular 2+ 于 2016 年开发。大约 60% 的 Web 开发人员有过在 Angular 前端框架的帮助下构建网站和应用程序的经历。一半的开发人员认为 Angular 有效地满足了他们的需求。

        Angular 实际上是 AngularJS 的增强版本,具有更强大的性能和大量有用的功能。 Angular(或 Angular 2+)和 React 之间的主要区别在于 Angular 前端框架提供了双向数据绑定。这样,您就可以确保 Angular 中模型和视图之间的实时同步。因此,使用 Angular 时,视图中的所有更改都会出现在模型中,反之亦然。

        开发人员可以利用 Angular 中的 Directives 功能对 DOM 的特定行为进行编程,并创建丰富且动态的 HTML 内容。更重要的是,Angular 提供了分层依赖注入功能,使得 Angular 中的代码组件可重用、可测试且易于控制。通过此功能,开发人员可以将代码依赖关系定义为外部元素,将组件与其依赖关系解耦。

优点

  • 双向数据绑定
  • 基于组件的架构
  • 可测试、可重用、可管理的应用程序
  • 指令功能
  • 依赖注入功能
  • 由谷歌支持
  • 强大的社区
  • 很好的培训材料
  • 增强的服务器性能

局限性

  • 对于初学者来说很难学习
  • SEO 能力有限
  • 代码臃肿且体积大

应用

        Angular 提供了创建企业级大型应用程序所需的理想框架的所有功能。如果您有一个小团队,旨在构建一个简单的应用程序,那么 Angular 可能会有点让人不知所措和复杂;因此,您可以选择另一个更简单的框架。另外,如果 SEO 对您来说太重要,那么如果您可以选择 Angular 的 SEO 友好替代品,那就更好了。

Svelte

        Svelte 最初于 2016 年推出,此后一直越来越受欢迎。它既不是一个框架,也不是一个库;它是一个框架。事实上,Svelte 是一个编译器。它现在被认为是 2024 年最好的前端框架之一。几乎 10% 到 15% 的前端开发人员对 Svelte 感到满意。

        目前,已有 3,000 多个网站和应用程序使用此框架设计,包括《纽约时报》、1Password、Philips BlueHive、Chess、Absolute Web、Godday、Cashfree、Rakuten、HealthTree、Razorpay 等。

        Svelte 是一个开源、基于组件、用 TypeScript 编写的 JavaScript 前端框架,它不仅是一个轻量级的开发选项,而且被认为是市场上最快的前端框架之一。与其他前端框架相比,它使开发人员能够用更少的编码来完成他们的 Web 开发项目。

        Svelte 没有配备 DOM,并在编码过程中提倡模块化。您将能够直接从标记访问变量,以便轻松进行开发导航。这是因为 Svelte 将模块化原则应用于不同的分组组件,并隔离逻辑、模板和视图。

        Svelte 为前端开发人员提供无样板编码。通过这种方式,您最初可以使用 HTML、CSS 和 JavaScript 创建组件;然后,在构建步骤中,编译器将您的代码处理为普通 JavaScript 中的轻量级独立模块,并在状态发生变化时将其精心集成到 DOM 中。得益于此功能,与 React 和 Vue 前端框架相比,Svelte 不需要浏览器中的高处理能力,从而无需花费资源来构建虚拟 DOM。

优点

  • 最快的前端框架之一,具有快速反应能力
  • 最少的编码
  • 基于组件的架构
  • 轻巧简单
  • 能够运行当前的JS库
  • SEO优化
  • 不需要虚拟 DOM

局限性

  • 有限的生态系统和工具
  • 不成熟的社区
  • 缺乏支撑材料
  • 令人怀疑的可扩展性和编码细微差别

应用

由于 Svelte 提供简单易用的语法,并且不需要 DOM 操作或较高的浏览器处理能力,因此它是初学者前端开发人员的最佳前端框架之一。它也是小型应用程序的理想框架之一。

Svelte 不太适合大型应用程序,因为它不提供强大的工具、成熟的插件池以及稳定的社区。如果您当前正在使用 React 或 Vue 前端框架,切换到 Svelte 可能不会增强您的 Web 开发项目。

jQuery

JQuery 是市场上最古老的开源 JavaScript 前端框架之一。尽管如此,它仍然是 2024 年最好的框架之一,因为它提供了现代开发条件。 JQuery 旨在最大程度地减少繁琐的 JavaScript 编码,并为您提供简单性以及来自庞大社区的强大支持。该框架已用于运行许多大型项目,包括 Twitter、Microsoft、Uber、Kickstarter、Pandora、SurveyMonkey 等。

JQuery 的简单性使其在处理事件方面具有多种用途。例如,简单的鼠标单击会被缩短为小代码片段,这些代码片段易于处理并集成到应用程序 JavaScript 逻辑的任何随机位置。

JQuery 最初并不是为构建移动应用程序而设计的,但该框架的最新版本 - JQuery Mobile - 使开发人员能够这样做。 JQuery 在处理浏览器可互换性方面是一个完美的框架,因此前端开发人员不会面临跨浏览器问题。

优点

  • 适合初学者
  • 工作舒适
  • 充满插件
  • 兼容流行浏览器
  • 强大的社区
  • 用于 DOM 操作的多种工具
  • SEO优化

局限性

  • 尺寸巨大
  • 速度稍低的应用
  • 逐渐输给功能更强大的浏览器
  • 缺少数据层

应用

JQuery 框架非常适合创建基于桌面的 JavaScript 应用程序。该框架配备了优化的代码逻辑、跨浏览器支持以及动态内容的简化方法,使前端开发人员即使在今天也能够提供完美的网站交互性和可搜索性。

与现代框架不同,JQuery 缺乏数据层。这使得该过程更加复杂,因为您每次都必须直接访问 DOM 并对其进行操作。因此,如果您的用户界面很复杂,那么最好选择现代框架而不是 JQuery,因为它可能会使您的代码变得臃肿并降低性能。

Ember

        Ember 于 2011 年推出,是一个 MVVM 开源 JavaScript Web 框架,在开发人员中获得了相当大的受欢迎。近 14% 的开发者在实践中使用了这个稳定的框架,开发了超过 30,000 个网站,包括 Tinder、Netflix、Apple Music、Chipotle、Nordstrom、Yahoo、Blue Apron、LinkedIn、Vine 和 PlayStation Now。

        Ember 是渲染服务器端最快的前端框架之一。它还提供双向数据绑定,实时同步视图和模型。它配备了庞大的生态系统和高级模板,可以帮助开发人员缩短编码时间。该平台从第一天起就提供了无数强大的功能,但如果您需要更多功能,您可以使用社区的无数插件。

        Ember 背后的社区被认为是最积极、最活跃的社区之一。 Ember 框架可能缺乏灵活性,因为开发人员在使用它时必须遵循严格且特定的工作流程。

优点

  • 服务端渲染
  • 测试和调试工具
  • 一致的文档
  • 基于小部件的组件方法
  • 以 URL 为中心的方法
  • 双向数据绑定
  • 积极进取的社区
  • 支持 JavaScript 和 TypeScript

局限性

  • 不太适合初学者
  • 不适合小型项目
  • 重尺寸
  • 缺乏组件重用能力
  • 很少或没有定制

应用

由于 Ember 具有组件架构,因此它可以成为创建功能齐全的复杂单页 Web 应用程序的理想框架之一,无论是客户端还是移动应用程序。但是,您应该记住,它对于小型应用程序来说太大,并且不适合小型活动。开发人员只能使用框架的预定义功能,因此当您需要更专业的空间时,效率不会很高。

Backbone

        作为一个免费的开源 JavaScript 库,Backbone 最初由 Jeremy Ashkenas 于 2011 年开发。大约 7% 的开发人员表示使用 Backbone 获得了积极的体验。该平台已用于设计 600,000 个网站,包括 Trello、Tumbler、Pinterest、Uber 和 Reddit。

        Backbone 遵循 MVC/MVP 开发概念,将您的数据表示为可以创建、验证、消除并保存到服务器的模型。每次特定的用户界面操作对模型的属性进行任何更改时,模型都会生成更改事件。然后,此更改会传输到反映模型状态的所有视图,以便它们可以使用新数据做出反应并再次呈现自己。

        当 Backbone 中的模型发生更改时,更改会自动应用于视图,因此您无需手动更新 HTML 并编写特殊代码来搜索 DOM 中具有特定 ID 的元素。 Backbone 框架提供了丰富的可枚举函数 API 来组装客户端 Web 应用程序、视图的声明性事件处理,并可以轻松地通过 JSON 接口将框架与当前 API 连接起来。

优点

  • 超过 100 个扩展
  • 适合初学者轻松学习
  • 小尺寸
  • 更少的 HTTP 请求
  • 精心组织的教程
  • 将数据存储在模型中而不是 DOM 中

局限性

  • 无双向数据绑定
  • 在某些情况下架构不清晰
  • 逐渐过时
  • 需要编写更多代码

应用

Backbone 是非常适合设计单页、小型、简单网页的框架之一。然而,它也可以用于更大的应用程序,因为它使应用程序逻辑与用户界面分离,避免意大利面条代码模型,并有助于用更少的代码维护更好的设计。尽管该框架的受欢迎程度比以前有所下降,但它仍然是经验丰富的前端开发人员喜欢使用的相关、灵活、强大的工具。

Semantic UI

        由 LESS 和 JQuery 提供支持的 Semantic UI 在前端框架市场上是相当新的。它是一个CSS框架,基于有机语言语法设计。 Semantic UI 于 2014 年推出,目前是 GitHub 上顶级的 JavaScript 框架之一。 Snapchat、Accenture、Digital Services、Ovrsea 和 Kmong 都是使用 Semantic UI 的知名品牌。

        虽然 Semantic UI 背后的社区很小,但非常忠诚和活跃。他们为 UI 创建了数千个主题和众多组件,并向 GitHub 提交了数千个提交。

        Semantic UI 旨在提供人性化的 HTML;框架中的类可以采用人类语言的语法,具有有机的名词/修饰语关系、词序和流行度,帮助开发人员自然地链接概念。框架的UI设计精简、扁平、流畅。 Semantic 帮助开发人员配置主题和 CSS、JavaScript、字体文件和继承系统,以便您在创建代码后可以与其他应用程序共享代码。

优点

  • 丰富且响应灵敏的 UI 组件
  • 不言自明的有机代码
  • 提供多种主题选择
  • 与 Angular、React、Meteor 和 Ember 无缝集成

局限性

  • 小社区
  • 对于初学者来说不容易学习
  • 最近更新很少
  • 需要熟练开发自定义配置

应用

        语义 UI 允许 UI 设计师优雅地设计他们的用户界面。尽管如此,缺乏经验的开发人员和 UI 设计师可能会觉得合作起来并不容易。您需要成为一名足够合格的开发人员,才能在不使用准备好的功能的情况下在应用程序中开发自定义功能。这就是为什么初学者开发人员可能不希望使用语义 UI。

最后的话

        选择上述前端框架之一作为 2024 年最好的前端框架并不容易,因为它们各自提供了不同的优点和局限性。此外,它们中的大多数都会定期更新以提供最新功能,这使得比较过程更加复杂。更重要的是,市场上还有其他很棒的框架,尽管我们无法在本文中全部介绍。

        读完本文后,如果您仍然不确定哪种前端框架技术最适合您的项目,您可以向该领域的专家寻求帮助。他们可以制定您的业务需求并为您选择合适的技术。首先,您要彻底、生动地了解您的期望,以便能够将它们与框架的关键功能结合起来,看看哪个最适合您的需求。无代码平台AppMaster可以在这方面为您提供帮助。该平台专门用于创建 Web 应用程序和移动应用程序,当然,它的后端是现有最强大的no-code后端。无需任何编码技能,您就可以使用AppMaster通过 可视化编码方式创建独特的应用生态系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2190003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FL Studio 24.1.2.4381中文版免费下载及FL Studio 24最新使用学习教程

家好呀,作为一个资深的音乐爱好者和制作人,今天我要安利一个我最近超级痴迷的数字音频工作站软件——FL Studio24.1.2.4381中文版。这款产品可是让我的音乐创作之路如虎添翼,快来跟我一起看看它的炫酷功能吧! 最近接到很多小伙伴的…

2024 ciscn WP

一、MISC 1.火锅链观光打卡 打开后连接自己的钱包,然后点击开始游戏,答题八次后点击获取NFT,得到有flag的图片 没什么多说的,知识问答题 兑换 NFT Flag{y0u_ar3_hotpot_K1ng} 2.Power Trajectory Diagram 方法1: 使用p…

操作系统实验之银行算法

一、实验目的 采用高级语言编写一个动态分配系统资源的程序,模拟死锁现象,观察死锁发生的条件,并采用适当的算法,有效地防止死锁的发生。 二、实验内容 本次实验采用银行算法防止死锁的发生。设有3个并发进程共享10个系统资源。在…

1c语言基础

1.关键字 一、数据类型关键字 A基本数据类型(5个) void:声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果char:字符型类型数据,属于整型数据的一种int:整型数据&#x…

Ollama 运行视觉语言模型LLaVA

Ollama的LLaVA(大型语言和视觉助手)模型集已更新至 1.6 版,支持: 更高的图像分辨率:支持高达 4 倍的像素,使模型能够掌握更多细节。改进的文本识别和推理能力:在附加文档、图表和图表数据集上进…

Github界面学习

之前并没有使用到其他功能大多数是看代码,然后看discussion; now,在做毕设的时候发现了一个gymnasium关于异步环境的bug,查看github发现已经被修复了; 因此希望学习一下修复者是在哪个module修复以及如何修复以及提交代码&#…

Spring Boot框架在大学生就业招聘中的应用

3系统分析 3.1可行性分析 通过对本大学生就业招聘系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本大学生就业招聘系统采用JAVA作为开发语言,S…

kaggle实战3RossmanStore商店销售额预测XgBoost解决回归问题案例1

kaggle实战2信用卡反欺诈逻辑回归模型案例1 数据集下载地址 https://download.csdn.net/download/AnalogElectronic/89844637 https://tianchi.aliyun.com/dataset/89785 加载数据 #预测销售额 回归问题 import numpy as np import pandas as pd import matplotlib.pyplot a…

无神论文解读之ControlNet:Adding Conditional Control to Text-to-Image Diffusion Models

一、什么是ControlNet ControlNet是一种能够控制模型生成内容的方法,能够对文生图等模型添加限制信息(边缘、深度图、法向量图、姿势点图等),在当今生成比较火的时代很流行。 这种方法使得能够直接提供空间信息控制图片以更细粒…

招联2025校招内推倒计时

【投递方式】 直接扫下方二维码,或点击内推官网https://wecruit.hotjob.cn/SU61025e262f9d247b98e0a2c2/mc/position/campus,使用内推码 igcefb 投递) 【招聘岗位】 后台开发 前端开发 数据开发 数据运营 算法开发 技术运维 软件测试 产品策…

【课程学习】随机过程之泊松过程

随机过程之泊松过程 泊松分布泊松过程 泊松分布 二项分布是离散性的分布,泊松分布是把二项分布取n趋于无穷得到的连续分布。也就是在一段时间内不停的观察某件事情发生的次数。 如:一个小时内观察一段路上经过行人的数目,如果每个半个小时观…

nginx和gateway的关系和区别

在技术选型时,选择 Nginx 和 Spring Cloud Gateway(或简称为 Gateway)主要取决于具体应用场景和技术需求。下面是两者的一些关键差异和适用场景。 一、Nginx 概念 Nginx 是一个高性能的 Web 服务器和反向代理服务器,常被用作静…

智能手表(Smart Watch)项目

文章目录 前言一、智能手表(Smart Watch)简介二、系统组成三、软件框架四、IAP_F411 App4.1 MDK工程结构4.2 设计思路 五、Smart Watch App5.1 MDK工程结构5.2 片上外设5.3 板载驱动BSP5.4 硬件访问机制-HWDataAccess5.4.1 LVGL仿真和MDK工程的互相移植5…

CSRF | CSRF 漏洞介绍

关注这个漏洞的其他相关笔记:CSRF 漏洞 - 学习手册-CSDN博客 0x01:CSRF 漏洞简介 CSRF(Cross-Site request forgery,跨站请求伪造)也被称为 One Click Attack 或者 Session Riding,通常缩写为 CSRF 或者 X…

【Java】IntelliJ IDEA开发环境安装

一、下载 官方地址:https://www.jetbrains.com/idea/ 点击Download直接下载 二、安装 双击安装包,点击Next 选择安装路径,点击Next 勾选安装内容 安装完成。 三、创建项目 打开IDEA,填写项目名称,选择项目安装路径…

S7-200 SMART的数据类型说明

S7-200 SMART的数据主要分为: 与实际输入/输出信号相关的输入/输出映象区: I:数字量输入(DI)Q:数字量输出(DO)AI:模拟量输入AQ:模拟量输出 内部数据存储区…

STM32 Hal库SDIO在FATFS使用下的函数调用关系

STM32 Hal库SDIO在FATFS使用下的函数调用关系 本文并不将FATFS的相关接口操作,而是将HAL在使用FATFS通过SDIO外设管理SD卡时,内部函数的调用逻辑,有助于当我们使用CUBEMX生成FATFS读取SD卡的代码时无法运行时Debug。本文也会说明一些可能出现…

如何编写一个优雅的commit message

在Git中,git commit 命令扮演着至关重要的角色。它的主要作用是将暂存区(staging area)里的改动内容提交到本地仓库(repository)中,形成一个新的版本或提交(commit)。这个过程是 Git…

渗透测试入门学习——使用python脚本自动识别图片验证码,OCR技术初体验

写在前面 由于验证码在服务端生成后存储在服务器的session中,而标用于标识用户身份的sessionid存在于用户cookie中 所以本次识别验证码时需要用requests.session()创建会话对象,模拟真实的浏览器行为,保持与服务器的会话才能获取登录时服务…

wsl2 ubuntu 桥接以太网卡

注意:此方法需要至少 Windows 11 22H2。桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。 在桥接的作用下,类似于把宿主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,宿主机也同样插在这…