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

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建(全平台详解)

在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS 的模拟器或真机上运行应用,以及 Expo CLI 和 React Native CLI 的详细对比。此外,我们还将总结常见错误及其解决方案,帮助你顺利完成环境搭建。本文的目标是让无论是初学者还是有经验的开发者都能轻松上手 React Native 开发。

React Native 的历史和优势

React Native 由 Facebook 于2015年推出,旨在解决跨平台开发的痛点。传统的原生开发需要为 iOS 和 Android 平台分别编写代码,而 React Native 允许开发者使用一套代码同时支持两个平台,大大提高了开发效率。

与 Flutter 或原生开发相比,React Native 的优势在于:

  • 跨平台支持:一套代码,两个平台。
  • 热重载:实时预览代码修改效果。
  • 社区支持:庞大的开发者社区和丰富的第三方库。

什么是开发环境?

开发环境是指开发者用来编写、测试和调试代码的软硬件组合。对于 React Native 开发者来说,一个完整的开发环境通常包括以下组件:

  • 操作系统:macOS 或 Windows(macOS 支持 iOS 和 Android 开发,Windows 仅支持 Android)。
  • 代码编辑器:如 Visual Studio Code、WebStorm 或 Sublime Text。
  • 命令行工具:用于执行安装、运行和调试命令。
  • Node.js 和 npm:JavaScript 运行时和包管理器。
  • React Native 工具:Expo CLI 或 React Native CLI。
  • 开发工具:Android Studio(Android 开发)和 Xcode(iOS 开发,仅限 macOS)。
  • 测试设备:Android/iOS 模拟器或真机。

配置好这些工具后,你才能顺利创建 React Native 项目并运行应用。接下来,我们将分步讲解如何在不同平台上完成配置。

开发环境的重要性

配置不当的开发环境可能导致以下问题:

  • 调试失败:无法在模拟器或真机上运行应用。
  • 性能瓶颈:编译和打包速度缓慢。
  • 版本冲突:依赖库不兼容。

一个配置良好的开发环境可以:

  • 提升开发效率:快速编译和运行应用。
  • 简化调试过程:准确捕获错误信息。
  • 支持多平台开发:同时开发 iOS 和 Android 应用。
目标读者定位

本文适合以下人群:

  • 新手开发者:希望快速上手 React Native。
  • 转行开发者:从 Web 开发或其他领域转型到移动开发。
  • 经验丰富的工程师:希望了解 React Native 的最新配置方法。

macOS 配置指南

macOS 是 React Native 开发的首选平台,因为它支持同时开发 iOS 和 Android 应用。以下是详细的配置步骤:

1. 安装 Homebrew

Homebrew 是 macOS 的包管理器,可以简化软件安装过程。打开终端,输入以下命令安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装完成后,运行 brew --version 验证是否成功。

2. 安装 Node.js 和 Watchman

Node.js 是运行 React Native 的核心依赖,而 Watchman 用于监控文件变化并触发自动重载。安装命令如下:

brew install node
brew install watchman

安装后,运行 node -vwatchman -v 检查版本。

3. 安装 Java Development Kit (JDK)

Android 开发需要 JDK,推荐使用 OpenJDK 8:

brew install --cask adoptopenjdk/openjdk/adoptopenjdk8

安装完成后,运行 java -version 确认安装成功。

4. 安装 Android Studio

Android Studio 是 Android 开发的官方 IDE。下载并安装后,执行以下配置:

  • 打开 Android Studio,选择“Configure” > “SDK Manager”。
  • 在“SDK Platforms”选项卡中,选择最新的 Android API 级别(例如 Android 13)。
  • 在“SDK Tools”选项卡中,勾选并安装:
    • Android SDK Build-Tools
    • Android Emulator
    • Intel x86 Emulator Accelerator (HAXM,若使用 Intel CPU)

安装完成后,记下 Android SDK 的路径(通常位于 ~/Library/Android/sdk)。

5. 配置 Android 环境变量

编辑你的 shell 配置文件(例如 ~/.zshrc~/.bash_profile),添加以下内容:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

保存后运行 source ~/.zshrc(或 source ~/.bash_profile)使环境变量生效。运行 adb --version 检查配置是否正确。

6. 安装 Xcode

Xcode 是 iOS 开发的必备工具。从 Mac App Store 下载并安装最新版本的 Xcode。安装完成后,打开 Xcode,同意许可协议,并安装附加组件。

7. 安装 CocoaPods

CocoaPods 是 iOS 的依赖管理工具。运行以下命令安装:

sudo gem install cocoapods

安装后,运行 pod --version 验证。

8. 安装 React Native CLI

React Native CLI 是官方提供的命令行工具,用于创建和管理项目。全局安装:

npm install -g react-native-cli

运行 react-native --version 检查安装是否成功。

至此,macOS 上的 React Native 开发环境配置完成。


Windows 配置指南

Windows 上的配置主要针对 Android 开发(iOS 开发需 macOS)。以下是具体步骤:

1. 安装 Chocolatey

Chocolatey 是 Windows 的包管理器。打开 PowerShell(以管理员身份运行),执行:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

安装完成后,运行 choco -v 验证。

2. 安装 Node.js 和 Python2

使用 Chocolatey 安装 Node.js 和 Python2:

choco install -y nodejs.install python2

安装后,运行 node -vpython --version 检查。

3. 安装 Java Development Kit (JDK)

下载并安装 Oracle JDK 8 或 OpenJDK 8。安装后,配置环境变量:

  • 右键“此电脑” > “属性” > “高级系统设置” > “环境变量”。
  • 在“系统变量”中,新建变量:
    • 变量名:JAVA_HOME
    • 变量值:JDK 安装路径(例如 C:\Program Files\Java\jdk1.8.0_281
  • 编辑 Path 变量,添加 %JAVA_HOME%\bin

运行 java -version 验证。

4. 安装 Android Studio

下载并安装 Android Studio,配置步骤与 macOS 类似:

  • 打开 Android Studio,选择“Configure” > “SDK Manager”。
  • 安装最新的 Android SDK Platform、Android SDK Build-Tools、Android Emulator 和 Intel HAXM。

记下 Android SDK 路径(通常位于 C:\Users\YourUsername\AppData\Local\Android\Sdk)。

5. 配置 Android 环境变量

在“系统变量”中,编辑 Path 变量,添加以下路径:

  • C:\Users\YourUsername\AppData\Local\Android\Sdk\emulator
  • C:\Users\YourUsername\AppData\Local\Android\Sdk\tools
  • C:\Users\YourUsername\AppData\Local\Android\Sdk\tools\bin
  • C:\Users\YourUsername\AppData\Local\Android\Sdk\platform-tools

运行 adb --version 检查配置。

6. 安装 React Native CLI

打开命令提示符,运行:

npm install -g react-native-cli

运行 react-native --version 验证。

Windows 上的 Android 开发环境配置完成。


Android 和 iOS 模拟器/真机运行

配置好环境后,接下来是运行 React Native 应用。以下是具体方法:

Android 模拟器

  1. 打开 Android Studio,点击“AVD Manager”。
  2. 点击“Create Virtual Device”,选择设备型号和系统镜像(例如 Pixel 4,Android 13),完成创建。
  3. 在 AVD Manager 中点击“Play”按钮启动模拟器。
  4. 在项目目录下运行:
    react-native run-android
    

Android 真机

  1. 在手机设置中启用“开发者选项”(通常在“关于手机”中连续点击“版本号”7次)。
  2. 在“开发者选项”中启用“USB 调试”。
  3. 使用 USB 线连接手机到电脑。
  4. 在项目目录下运行:
    react-native run-android
    

iOS 模拟器(仅 macOS)

  1. 打开 Xcode,选择“Xcode” > “Open Developer Tool” > “Simulator”。
  2. 在 Simulator 中选择目标设备(如 iPhone 14)。
  3. 在项目目录下运行:
    react-native run-ios
    

iOS 真机(仅 macOS)

  1. 在 Xcode 中登录 Apple ID(“Xcode” > “Preferences” > “Accounts”)。
  2. 使用 USB 线连接 iPhone/iPad 到 Mac。
  3. 在设备上点击“信任此电脑”。
  4. 在项目目录下运行:
    react-native run-ios --device
    

Expo CLI vs React Native CLI

React Native 提供了两种主要工具:Expo CLI 和 React Native CLI。以下是它们的对比。

Expo CLI

Expo CLI 是一个围绕 React Native 构建的工具链,简化了开发流程。

优点
  • 快速上手:无需配置 Android Studio 或 Xcode。
  • 内置功能:提供相机、地图等现成 API。
  • 实时更新:支持 OTA(Over-the-Air)更新。
  • 跨平台:支持 iOS、Android 和 Web。
缺点
  • 灵活性低:无法直接使用原生模块。
  • 应用体积大:包含 Expo SDK,增加包大小。
  • 依赖服务:部分功能需联网使用 Expo 服务器。
适用场景
  • 快速原型开发
  • 新手学习
  • 简单项目

React Native CLI

React Native CLI 是官方工具,提供更多控制权。

优点
  • 原生支持:可集成原生代码。
  • 性能优越:应用体积小,运行效率高。
  • 社区生态:支持更多第三方库。
缺点
  • 配置复杂:需手动设置开发工具。
  • 学习成本高:对新手不友好。
  • 更新麻烦:需通过应用商店发布。
适用场景
  • 复杂项目
  • 需要原生功能
  • 长期维护项目

如何选择?

  • 新手或快速开发:选择 Expo CLI。
  • 复杂需求或性能优先:选择 React Native CLI。

常见报错与解决方案汇总

以下是配置过程中可能遇到的常见问题及其解决方法:

1. 无法找到 Android SDK

错误信息SDK location not found.

解决方案

  • 确保 ANDROID_HOME 环境变量正确设置。
  • 或在项目根目录创建 local.properties 文件,添加:
    sdk.dir=/Users/YourUsername/Library/Android/sdk
    

2. iOS 构建失败

错误信息xcrun: error: unable to find utility "instruments"

解决方案

  • 运行 xcode-select --install 安装命令行工具。

3. 模拟器无法启动

错误信息Emulator: ERROR: x86 emulation requires hardware acceleration!

解决方案

  • 在 Android Studio 中安装 Intel HAXM。
  • 在 BIOS 中启用 VT-x 或 AMD-V。

4. Metro Bundler 连接失败

错误信息Unable to load script.

解决方案

  • 运行 react-native start 启动 Metro。
  • 检查网络或防火墙设置。

5. 真机调试失败

错误信息Could not connect to development server.

解决方案

  • 确保设备和电脑在同一网络。
  • 使用 USB 调试模式。

扩展内容

1. macOS 配置的深度解析

Homebrew 的全面介绍

Homebrew 是 macOS 上最流行的包管理器,它的工作原理是:

  • 下载和安装软件包:从 GitHub 等源下载软件包并安装到 /usr/local 目录。
  • 管理依赖:自动处理软件包的依赖关系。

常见命令:

  • brew update:更新 Homebrew。
  • brew upgrade:升级已安装的软件包。
  • brew install <package>:安装软件包。
Node.js 和 Watchman 的作用

Node.js 是 React Native 的核心依赖,它在开发中扮演以下角色:

  • 运行 Metro Bundler:Metro Bundler 是 React Native 的 JavaScript 打包器,负责将 JavaScript 代码打包成应用可以执行的格式。
  • 执行 npm 脚本:如 npm startnpm install

Watchman 用于监控文件变化并触发自动重载:

  • 文件监听:Watchman 可以高效地监听文件系统的变化。
  • 触发重载:当文件变化时,Watchman 会通知 Metro Bundler 重新打包应用。
Android Studio 和 Xcode 的配置细节

在配置 Android Studio 时,需要注意:

  • 选择合适的 Android API 级别:根据应用的目标用户和功能需求选择。
  • 优化模拟器性能:为模拟器分配足够的内存和 CPU 资源。

在配置 Xcode 时,需要注意:

  • 签名和证书管理:确保开发者账号和证书正确配置。
  • 选择正确的构建目标:如 iPhone 模拟器或真机。
环境变量的调试技巧

验证环境变量是否生效的方法:

  • 运行 echo $ANDROID_HOME:检查 Android SDK 路径。
  • 运行 adb --version:检查 Android Debug Bridge 版本。

如果配置失败,可以:

  • 检查配置文件:如 ~/.zshrc~/.bash_profile
  • 重新加载配置文件:运行 source ~/.zshrc

2. Windows 配置的补充内容

Chocolatey 的优势与替代方案

Chocolatey 的优势:

  • 一键安装:简化软件安装过程。
  • 版本管理:轻松升级和回滚软件包。

替代方案:

  • 手动下载和安装:适用于不熟悉命令行的用户。
  • Scoop:另一个 Windows 包管理器,专注于命令行工具。
Python2 的历史背景

React Native 依赖 Python2 是因为:

  • 历史遗留:React Native 的早期版本使用 Python2 编写脚本。
  • 兼容性:部分工具和库仍依赖 Python2。

为避免版本冲突,可以:

  • 使用虚拟环境:如 virtualenv
  • 指定 Python 版本:在命令中显式指定 Python2。
Windows 特有的注意事项

在 Windows 上配置开发环境时,需要注意:

  • 权限问题:部分操作需要管理员权限。
  • PowerShell 配置:确保 PowerShell 的执行策略允许运行脚本。
  • 非管理员账户:在非管理员账户下安装工具时,可以使用 --user 选项。

3. 模拟器和真机运行的扩展指南

模拟器的优化技巧

优化模拟器性能的方法:

  • 调整内存和 CPU 设置:在 AVD Manager 中为模拟器分配更多资源。
  • 使用快照:保存模拟器状态,加速启动。
真机调试的进阶方法

进阶调试方法:

  • Wi-Fi 调试:在 Android 设备上启用 Wi-Fi 调试,摆脱 USB 线的束缚。
  • 记录设备日志:使用 adb logcat 捕获设备日志。
  • 多设备调试:同时连接多个设备,选择目标设备运行应用。
常见问题与解决方案

Android 模拟器常见问题:

  • 黑屏:可能是模拟器配置错误,尝试重新创建 AVD。
  • 启动缓慢:检查电脑性能和模拟器设置。

iOS 真机常见问题:

  • 无法连接:确保设备已信任电脑,并检查 USB 连接。
  • 证书错误:在 Xcode 中更新开发者证书。

4. Expo CLI 与 React Native CLI 的深入比较

实际案例

我们将提供两个简单的项目示例:

  • Expo CLI 项目:一个简单的待办事项应用,使用 Expo 的内置 API。
  • React Native CLI 项目:一个带有原生模块的相机应用。
性能测试数据

根据社区测试,Expo CLI 和 React Native CLI 在性能上的差异:

  • 启动时间:Expo CLI 应用启动时间较长,因为需要加载 Expo SDK。
  • 包体积:Expo CLI 应用的包体积较大,约为 20-30MB。
迁移建议

从 Expo CLI “eject” 到 React Native CLI 的步骤:

  1. 运行 expo eject 命令。
  2. 配置 Android 和 iOS 的原生项目。
  3. 手动安装和链接原生模块。

注意事项:

  • 备份项目:在 eject 前备份项目,以防配置失败。
  • 更新依赖:确保所有依赖库与 React Native CLI 兼容。

5. 常见错误的扩展列表

新增错误类型
  • 网络相关错误:如代理设置不正确导致 npm 安装失败。
  • 依赖冲突问题:如 npm 和 yarn 版本不一致导致的包管理问题。
详细解决方案

为每个错误提供多于一种的解决方法:

  • 网络错误
    • 检查网络连接。
    • 配置 npm 代理。
  • 依赖冲突
    • 使用 npm ls 检查依赖树。
    • 手动指定依赖版本。

总结

通过本文,你应该能够在 macOS 和 Windows 上成功搭建 React Native 开发环境,并在 Android 和 iOS 的模拟器或真机上运行应用。我们还对比了 Expo CLI 和 React Native CLI,帮助你选择合适的工具,并提供了常见错误的解决方案。希望这篇指南能为你的 React Native 开发之旅奠定坚实基础!

后续文章将深入探讨 React Native 的核心组件和开发技巧,敬请期待!

相关文章:

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

模型参数、模型存储精度、参数与显存

模型参数量衡量单位 M&#xff1a;百万&#xff08;Million&#xff09; B&#xff1a;十亿&#xff08;Billion&#xff09; 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的&#xff0c;但是一个参数所表示多少字节不一定&#xff0c;需要看这个参数以什么…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...