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

新书速览|纯血鸿蒙HarmonyOS NEXT原生开发之旅

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》

本书内容

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》全面系统地介绍了基于HarmonyOS NEXT系统进行原生应用开发的实用技巧。全书共12章,内容涵盖从基础工具使用到高级功能实现的各个方面。第1章详细介绍了开发环境的搭建、ArkTS语言基础及UI描述。第2章深入探讨了Ability组件和信息传递机制。第3章和第4章分别讲解了UI开发的基础知识和进阶技巧,包括ArkUI框架和自定义组件。第5章探讨了一次开发多端部署的策略。第6章介绍了多媒体应用的开发方法。第7章讨论了进程间通信和任务管理。第8章涉及窗口管理和通知功能。第9章讲解了网络编程的基本方法。第10章关注于应用安全管理。第11章详细介绍了服务卡片的开发流程。第12章通过一个购物应用案例,将前面章节的知识综合运用,展示了一个完整的项目实战过程。

本书作者

杨春鹏,资深软件工程师,有超过十年的行业经验,曾就职于快手,容猫,四维等大厂,涉猎大前端、Python、鸿蒙等领域技术,持有鸿蒙高级开发者证书,多次参与企业和高校鸿蒙技术培训。业余时间热爱分享,阿里云、 CSDN技术社区专家博主,发表技术文章数百篇。

本书读者

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》适合初学者和转型到鸿蒙系统开发的有经验的程序员阅读,也可以作为相关培训机构和高校相关专业的教学用书。

本书目录

向上滑动阅览

目    录

第 1 章  初识鸿蒙HarmonyOS NEXT1

1.1  DevEco Studio开发工具1

1.1.1  下载和安装DevEco Studio1

1.1.2  DevEco Studio的基本使用4

1.1.3  手机运行Hello World应用6

1.1.4  了解基本工程目录7

1.2  ArkTS语言之基本UI描述8

1.2.1  基本概念9

1.2.2  创建组件9

1.2.3  属性配置11

1.2.4  事件配置14

1.2.5  子组件配置15

1.3  ArkTS语言之状态管理16

1.3.1  @State16

1.3.2  @Prop22

1.3.3  @Link26

1.3.4  @Observed和@ObjectLink28

1.3.5  @Consume和@Provide30

1.3.6  @Watch32

1.4  ArkTS语言之状态管理进阶33

1.4.1  LocalStorage:页面级UI状态存储34

1.4.2  AppStorage:应用全局的UI状态存储36

1.4.3  PersistentStorage:持久化存储UI状态38

1.5  ArkTS语言之动态构建UI元素39

1.5.1  @Builder39

1.5.2  @BuilderParam41

1.5.3  @Styles42

1.5.4  @Extend44

1.6  实战:自定义导航45

1.7  本章小结47

第 2 章  Ability开发48

2.1  Stage模型的概述48

2.1.1  重要概念48

2.1.2  应用/组件级配置49

2.2  UIAbility组件53

2.2.1  UlAbility组件的概述54

2.2.2  UIAbility组件的生命周期54

2.2.3  UIAbility组件的启动模式57

2.2.4  UIAbility组件的基本用法63

2.2.5  UlAbility组件与UI的数据同步65

2.3  信息传递的载体want67

2.3.1  want的概述67

2.3.2  显式want与隐式want的匹配规则68

2.4  实战:显示want启动Ability71

2.5  实战:隐式want打开浏览器73

2.6  本章小结75

第 3 章  UI开发基础76

3.1  ArkUI概述76

3.2  ArkTS的声明式开发范式77

3.3  常用组件78

3.4  基础组件详解80

3.4.1  AlphabetIndexer82

3.4.2  Blank84

3.4.3  Button85

3.4.4  CalendarPicker89

3.4.5  Checkbox90

3.4.6  CheckboxGroup91

3.4.7  ContainerSpan92

3.4.8  DataPanel92

3.4.9  DatePicker93

3.4.10  Divider94

3.4.11  Gauge95

3.4.12  Image97

3.4.13  ImageAnimator99

3.4.14  ImageSpan101

3.4.15  LoadingProgress101

3.4.16  Marquee102

3.4.17  Menu103

3.4.18  MenuItem103

3.4.19  MenuItemGroup105

3.4.20  Radio106

3.4.21  Rating107

3.4.22  RichText108

3.4.23  Select109

3.4.24  Slider110

3.4.25  Text112

3.4.26  TextArea114

3.4.27  TextClock114

3.4.28  TextInput115

3.4.29  TextPicker116

3.4.30  TextTimer117

3.4.31  TimePicker118

3.4.32  Toggle119

3.5  实战:城市列表选择案例121

3.5.1  数据模块的定义122

3.5.2  主页布局123

3.5.3  实现城市列表组件125

3.5.4  实现搜索组件127

3.5.5  项目小结128

3.6  本章小结128

第 4 章  UI开发进阶129

4.1  容器组件详解129

4.1.1  Badge130

4.1.2  Column和Row132

4.1.3  ColumnSplit和RowSplit135

4.1.4  Counter136

4.1.5  Flex137

4.1.6  WaterFlow和FlowItem148

4.1.7  Stack153

4.1.8  GridRow和GridCol153

4.1.9  Grid和GridItem156

4.1.10  Hyperlink161

4.1.11  List、ListItem和

ListItemGroup162

4.1.12  Navigator166

4.1.13  Panel169

4.1.14  Refresh170

4.1.15  RelativeContainer173

4.1.16  Scroll175

4.1.17  SideBarContainer178

4.1.18  Swiper180

4.1.19  Tabs和TabContent184

4.2  绘制组件详解188

4.2.1  Circle188

4.2.2  Ellipse189

4.2.3  Line189

4.2.4  Polyline191

4.2.5  Polygon192

4.2.6  Path192

4.2.7  Rect194

4.2.8  Shape195

4.3  画布组件Canvas199

4.3.1  画布组件及对象199

4.3.2  Canvas组件示例202

4.4  弹窗详解207

4.4.1  警告弹窗(AlertDialog)208

4.4.2  列表选择弹窗(ActionSheet)209

4.4.3  自定义弹窗(CustomDialog)211

4.4.4  日历选择器弹窗(CalendarPickerDialog)214

4.4.5  日期滑动选择器弹窗(DatePickerDialog)215

4.4.6  时间滑动选择器弹窗(TimePickerDialog)217

4.4.7  文本滑动选择器弹窗(TextPickerDialog)219

4.5  自定义组件生命周期220

4.5.1  自定义组件生命周期概述220

4.5.2  自定义组件生命周期示例221

4.6  实战:待办列表案例223

4.6.1  TODO类定义223

4.6.2  常量数据224

4.6.3  列表项页面224

4.6.4  列表项增删功能页面228

4.7  本章小结232

第 5 章  一次开发多端部署233

5.1  “一多”开发工程目录管理233

5.1.1  创建工程233

5.1.2  新建Module233

5.1.3  修改Module配置235

5.1.4  调整目录结构,修改依赖关系240

5.1.5  引用ohpm包中的代码241

5.2  自适应布局244

5.2.1  拉伸能力245

5.2.2  均分能力247

5.2.3  占比能力249

5.2.4  缩放能力252

5.2.5  延伸能力254

5.2.6  隐藏能力258

5.2.7  折行能力261

5.3  响应式布局262

5.3.1  断点263

5.3.2  媒体查询265

5.3.3  栅格布局268

5.4  实战:页签栏布局270

5.4.1  案例准备271

5.4.2  案例实现271

5.5  本章小结274

第 6 章  多媒体应用开发275

6.1  音频开发275

6.1.1  音频开发概述275

6.1.2  音频播放示例278

6.1.3  音频录制示例282

6.2  视频开发284

6.3  实战:语音录制和声音动效的实现288

6.3.1  案例要求与工程结构288

6.3.2  案例实现288

6.4  本章小结292

第 7 章  进程通信293

7.1  ExtensionAbility组件293

7.1.1  ExtensionAbility组件概述293

7.1.2  FormExtensionAbility组件294

7.2  进程间通信295

7.2.1  进程模型295

7.2.2  公共事件简介296

7.2.3  订阅公共事件297

7.2.4  发布公共事件299

7.3  线程间通信300

7.3.1  线程模型300

7.3.2  使用Emitter进行线程间通信300

7.4  任务管理301

7.4.1  Background Tasks Kit简介301

7.4.2  短时任务的开发302

7.4.3  长时任务的开发303

7.4.4  延迟任务的开发305

7.5  Stage模型的应用配置文件307

7.6  实战:在Worker子线程中解压文件309

7.6.1  工程结构和模块类型309

7.6.2  实现思路310

7.6.3  效果演示311

7.7  本章小结311

第 8 章  窗口管理312

8.1  窗口开发概述312

8.2  管理应用窗口313

8.2.1  设置应用主窗口313

8.2.2  设置应用子窗口314

8.2.3  窗口的沉浸式能力316

8.2.4  设置悬浮窗口317

8.2.5  监听窗口不可交互与可交互事件319

8.3  通知320

8.3.1  通知概述320

8.3.2  通知消息样式326

8.3.3  撤回通知消息327

8.4  实战:窗口管理应用328

8.4.1  窗口管理应用功能说明328

8.4.2  窗口管理应用的实现328

8.5  本章小结330

第 9 章  网络编程331

9.1  HTTP数据请求331

9.1.1  request接口开发332

9.1.2  requestInStream接口开发336

9.1.3  引入第三方库ohos_axios337

9.2  Web组件的页面加载339

9.2.1  加载网络页面340

9.2.2  加载本地页面341

9.2.3  加载HTML格式的文本数据343

9.3  实战:通过HTTP请求数据344

9.3.1  准备一个HTTP服务接口344

9.3.2  使用List组件进行卡片布局344

9.3.3  通过生命周期发起HTTP请求345

9.3.4  通过生命周期使用第三方库发起HTTP请求345

9.3.5  Web组件加载详情页面346

9.4  本章小结346

第 10 章  安全管理347

10.1  访问控制概述347

10.1.1  应用沙箱347

10.1.2  应用权限等级和授权方法347

10.1.3  系统控件349

10.2  访问控制开发流程349

10.2.1  权限列表349

10.2.2  申请权限351

10.2.3  授予权限352

10.3  实战:获取位置授权356

10.3.1  场景描述356

10.3.2  声明访问的权限356

10.3.3  申请授权356

10.3.4  获取地理位置357

10.4  本章小结357

第 11 章  服务卡片开发358

11.1  服务卡片概述358

11.1.1  服务卡片架构358

11.1.2  服务卡片的开发模式360

11.1.3  服务卡片的制约360

11.2  ArkTS卡片运行机制361

11.3  ArkTS卡片相关模块362

11.4  ArkTS卡片的开发364

11.4.1  创建一个ArkTS卡片364

11.4.2  配置卡片参数368

11.4.3  卡片生命周期管理370

11.5  实战:电子相册案例372

11.5.1  项目概述372

11.5.2  项目页面代码解读372

11.5.3  添加卡片事件379

11.6  本章小结381

第 12 章  项目实战:多端部署之购物应用382

12.1  项目概述382

12.1.1  购物应用的功能382

12.1.2  应用效果演示383

12.2  代码结构383

12.3  页面结构385

12.3.1  启动页385

12.3.2  主页386

12.3.3  首页标签页387

12.3.4  新品标签页388

12.3.5  购物车标签页388

12.3.6  我的标签页389

12.3.7  商品详情页390

12.3.8  订单确认页391

12.3.9  订单支付页393

12.3.10  订单列表页395

12.4  本章小结396

附录A  ArkTS语言基础397

A.1  编程语言397

A.2  TypeScript语法398

A.3  语法进阶402

A.4  类406

本书特色

《纯血鸿蒙HarmonyOS Next原生开发之旅》是一部系统介绍HarmonyOS NEXT(5.x)应用开发的技术指南,以“技术解析+案例驱动”为核心,为开发者打造通往鸿蒙原生开发的直通车。

1. 技术全景覆盖,构建系统知识体系

全书以“工具链→语言基础→UI开发→多端适配→应用场景”为主线,串联起HarmonyOS NEXT的核心技术脉络。从DevEco Studio开发环境搭建、ArkTS语言特性,到Stage模型、Ability组件、ArkUI声明式开发,再到进程通信、窗口管理、多媒体与网络编程,层层递进,完整呈现鸿蒙原生开发的技术全景图。尤其对“一次开发,多端部署”的分布式架构进行深度拆解,通过自适应布局、响应式设计等实战技巧,帮助开发者突破多端适配的难点。

2. 实战案例赋能,从理论到落地的闭环

书中摒弃空洞的理论说教,以“问题场景+解决方案+代码实现”的沉浸式教学贯穿始终。12章内容包含大量开发场景,如动态UI构建、服务卡片开发、语音动效实现等,更通过电子相册、多端购物应用两大完整项目,模拟商业级开发流程。每个案例均提供可运行的代码片段与关键逻辑剖析,让读者在“抄代码→改代码→写代码”的演进中,真正吃透鸿蒙开发精髓。

3. 前沿技术前瞻,抢占鸿蒙生态先机

作为聚焦HarmonyOS NEXT 5.x的开发书籍,《纯血鸿蒙HarmonyOS Next原生开发之旅》不仅详解Stage模型、ArkTS状态管理等基础能力,更深入探索服务卡片、窗口管理等进阶特性,直击鸿蒙原生开发的核心差异点。无论是进程间通信的运行机制,还是安全沙箱下的权限管控,均结合最新API与最佳实践进行讲解,助力开发者在鸿蒙生态爆发期占据技术制高点。

4.资深专业作者,使用最新版本验证

《纯血鸿蒙HarmonyOS Next原生开发之旅》在软件开发领域从业超过十年,近年来致力于鸿蒙系统开发与技术推荐,并参与多家公司和学校的鸿蒙技术讲座,《纯血鸿蒙HarmonyOS Next原生开发之旅》所有代码均在目前最新的HarmonyOS NEXT版本上测试验证,确保本书的专业性和先进性。

5.谁需要这本书?

转型鸿蒙的开发者:熟悉Android/iOS但亟待掌握鸿蒙特有架构的工程师。

鸿蒙进阶者:已入门但受困于多端适配、性能优化等难题的从业者。

高校师生:寻找鸿蒙教学案例与实训项目的教育机构。

这不仅是一部技术手册,更是一把打开鸿蒙生态的金钥匙。 无论你是初次入门的初学者和学生,还是有一定经验的开发者,《纯血鸿蒙HarmonyOS Next原生开发之旅》都将为你提供从“理解鸿蒙”到“驾驭鸿蒙”的完整路径。在这个万物互联的时代,掌握HarmonyOS NEXT,就是握住了下一代智能终端的入场券。现在启程,与鸿蒙共赴全场景智慧生态的星辰大海!

本文摘自《纯血鸿蒙HarmonyOS Next原生开发之旅》,获出版社和作者授权发布。

纯血鸿蒙HarmonyOS NEXT原生开发之旅——ddhttps://product.dangdang.com/29883523.html

相关文章:

新书速览|纯血鸿蒙HarmonyOS NEXT原生开发之旅

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》 本书内容 《纯血鸿蒙HarmonyOS NEXT原生开发之旅》全面系统地介绍了基于HarmonyOS NEXT系统进行原生应用开发的实用技巧。全书共12章,内容涵盖从基础工具使用到高级功能实现的各个方面。第1章详细介绍了开发环境的搭建、Ar…...

tinyint(3)数据类型讲解

TINYINT(3) 是数据库中用于定义字段数据类型的一种写法,常见于 MySQL 等数据库系统。下面来详细了解其含义和作用: 数据类型本质 TINYINT 属于整数类型,在不同的数据库系统中,它所占用的存储空间和表示范围通常是固定的。以 MyS…...

manjaro系统详解

1. Manjaro 概述 Manjaro 是一款基于 Arch Linux 的滚动更新发行版,以 用户友好、易用性 和 硬件兼容性 为核心设计理念。它继承了 Arch 的灵活性和软件丰富性,同时通过图形化工具和稳定的更新策略降低了使用门槛,适合从新手到高级用户的广泛…...

# 实时英文 OCR 文字识别:从摄像头到 PyQt5 界面的实现

实时英文 OCR 文字识别:从摄像头到 PyQt5 界面的实现 引言 在数字化时代,文字识别技术(OCR)在众多领域中发挥着重要作用。无论是文档扫描、车牌识别还是实时视频流中的文字提取,OCR 技术都能提供高效且准确的解决方案…...

9.3.云原生架构模式

目录 一、云原生架构核心概念 云原生定义与核心原则 • 四大核心要素:容器化、微服务、DevOps、持续交付 • 核心原则:弹性、可观测性、自动化、不可变基础设施 云原生技术矩阵 • 容器与编排:Docker、Kubernetes、CRI-O • 服务治理&#…...

现代化水库运行管理矩阵平台如何建设?

政策背景 2023年8月24日,水利部发布的水利部关于加快构建现代化水库运行管理矩阵的指导意见中指出,在全面推进水库工程标准化管理的基础上,强化数字赋能,加快构建以推进全覆盖、全要素、全天候、全周期“四全”管理,完…...

木马查杀引擎—关键流程图

记录下近日研究的木马查杀引擎,将关键的实现流程图画下来 PHP AST通道实现 木马查杀调用逻辑 模型训练流程...

基于libevent的异步事件驱动型线程池实现

----------------------| IFoxThread | ← 抽象线程接口|----------------------|| dispatch() || start() || stop() || ... |----------^-----------|--------------------|----------------------| …...

ArcGIS+InVEST+RUSLE:水土流失模拟与流域管理的高效解决方案;水土保持专题地图制作

在全球生态与环境面临严峻挑战的当下,水土流失问题已然成为制约可持续发展的重要因素之一。水土流失不仅影响土地资源的可持续利用,还对生态环境、农业生产以及区域经济发展带来深远影响。因此,科学、精准地模拟与评估水土流失状况&#xff0…...

#S4U2SELF#S4U2Proxy#CVE-2021-42278/42287

#S4U2SELF Win08创建普通用户 s4u2 xwj456 可以看到普通用户是没用委托属性的 Win08手动赋予委托服务属性 setspn -A wsw/wsw.com s4u2 Win10身份验证 s4u2 xwj456 AS请求 两个勾 两个勾和include-pac记得按上(蓝色) ,发包之前把wiresh…...

利用基于LLM的概念提取和FakeCTI数据集提升网络威胁情报对抗虚假信息活动的能力

摘要 虚假新闻和虚假信息宣传活动的迅速蔓延对公众信任、政治稳定和网络安全构成了重大威胁。传统的网络威胁情报(CTI)方法依赖于域名和社交媒体账号等低级指标,很容易被频繁修改其在线基础设施的对手规避。为了解决这些局限性,我…...

uniapp|实现手机通讯录、首字母快捷导航功能、多端兼容(H5、微信小程序、APP)

基于uniapp实现带首字母快捷导航的通讯录功能,通过拼音转换库实现汉字姓名首字母提取与分类,结合uniapp的scroll-view组件与pageScrollTo API完成滚动定位交互,并引入uni-indexed-list插件优化索引栏性能。 目录 核心功能实现动态索引栏生成​联系人列表渲染​滚动定位联动性…...

使用PhpStudy搭建Web测试服务器

一、安装PhpStudy 从以下目录下载PhpStudy安装文件 Windows版phpstudy下载 - 小皮面板(phpstudy) (xp.cn) 安装成功之后打开如下界面 点击启动Apache 查看网站地址 在浏览器中输入localhost:88,出现如下页面就ok了 二、与Unity交互 1.配置下载文件路径,点击…...

Qt/C++面试【速通笔记九】—视图框架机制

在Qt中,QGraphicsView和QGraphicsScene是用于构建二维图形界面的核心组件。它们的设计使得开发者能够高效地管理和渲染图形项,支持丰富的用户交互,例如缩放、旋转、平移等。 1. QGraphicsScene和QGraphicsView的基本概念 QGraphicsScene QG…...

react-diff-viewer 如何实现语法高亮

前言 react-diff-viewer 是一个很好的 diff 展示库,但是也有一些坑点和不完善的地方,本文旨在描述如何在这个库中实现自定义语法高亮。 Syntax highlighting is a bit tricky when combined with diff. Here, React Diff Viewer provides a simple rend…...

Python实例题:Django搭建简易博客

目录 Python实例题 题目 1. 创建 Django 项目和应用 2. 配置项目 3. 设计模型 blog_app templates blog_app post_list.html admin.py models.py urls.py views.py blog_project urls.py 代码解释 models.py: admin.py: urls.py&…...

Kotlin 异步初始化值

在一个类初始化的时候或者方法执行的时候,总有一些值是需要的但是不是立即需要的,并且在需要的时候需要阻塞流程来等待值的计算,这时候异步的形式创建这个值是毋庸置疑最好的选择。 为了更好的创建值需要使用 Kotlin 的协程来创建&#xff0…...

扩展:React 项目执行 yarn eject 后的 config 目录结构详解

扩展:React 项目执行 yarn eject 后的 config 目录结构详解 什么是 yarn eject?React 项目执行 yarn eject 后的 config 目录结构详解📁 config 目录结构各文件作用详解env.jsgetHttpsConfig.jsmodules.jspaths.jswebpack.config.jswebpackDe…...

(自用)Java学习-5.8(总结,springboot)

一、MySQL 数据库 表关系 一对一、一对多、多对多关系设计外键约束与级联操作 DML 操作 INSERT INTO table VALUES(...) DELETE FROM table WHERE... UPDATE table SET colval WHERE...DQL 查询 基础查询:SELECT * FROM table WHERE...聚合函数:COUNT()…...

cursor 如何在项目内自动创建规则

在对话框内 / Generate。cursor rules 就会自动根据项目进行创建规则 文档来自:https://www.kdocs.cn/l/cp5GpLHAWc0p...

C++ 迭代器

1.用途: 像我们之前学习的容器map,vector等,如果需要遍历该怎么做呢?这些容器大部分对下标式遍历,无法像数组灵活使用,也包括增删改查,因为它们的特性,所以需要一种其他的方法。 那么迭代器就…...

基于微信小程序的城市特色旅游推荐应用的设计与实现

💗博主介绍💗:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…...

最大m子段和

问题描述解题思路伪代码代码实现复杂度分析 问题描述 给定一个有n(n>0)个整数的序列,要求其m个互不相交的子段,使得这m个子段和最大。 输入:整数序列{nums},m。 输出:最大m子段和。 对于m1的情况,即求最…...

4.MySQL全量、增量备份与恢复

1.数据备份的重要性 在企业中数据的价值至关重要,数据保障了企业业务的正常运行。因此,数据的安全性及数据的可靠性是运维的重中之重,任何数据的丢失都可能对企业产生严重的后果。通常情况下造成数据丢失的原因有如下几种: a.程…...

每日算法刷题Day4 5.12:leetcode数组4道题,用时1h

7. 704.二分查找 704. 二分查找 - 力扣&#xff08;LeetCode&#xff09; 思想 二分模版题 代码 c: class Solution { public:int search(vector<int>& nums, int target) {int nnums.size();int left0,rightn-1;int res-1;while(left<right){int midleft((…...

Day 15

目录 1.chika和蜜柑1.1 解析1.2 代码 2.对称之美2.1 解析2.2 代码 3.添加字符3.1 解析3.2 代码 1.chika和蜜柑 chika和蜜柑 TopK、堆、排序 1.1 解析 1.2 代码 #include <iostream> #include <vector> #include <algorithm> using namespace std; struct …...

脑机接口重点产品发展路径分析:以四川省脑机接口及人机交互产业攻坚突破行动计划(2025-2030年)为例

引言 随着人工智能和生物技术的飞速发展,脑机接口技术作为连接人类大脑与智能设备的桥梁,正在成为全球科技竞争的新焦点。2025年5月12日,四川省经济和信息化厅等8部门联合印发了《四川省脑机接口及人机交互产业攻坚突破行动计划(2025-2030年)》,为四川省在这一前沿领域的…...

leetcode 18. 四数之和

题目描述 和leetcode 15. 三数之和用同样的方法。有两个注意点。 一是剪枝的逻辑 这是和15. 三数之和 - 力扣&#xff08;LeetCode&#xff09;问题不同的地方。 无法通过这种情况&#xff1a; 二是整数溢出 最终答案 class Solution { public:vector<vector<int>…...

CentOS部署Collabora Online

1.安装Docker CentOS7安装Docker(超详细)-CSDN博客 2.拉取镜像 docker pull collabora/code:latest 3. 启动容器&#xff08;直接暴露HTTP端口&#xff09; docker run -d --name collabora -p 9980:9980 -e "usernameadmin" -e "password123456" -e …...

《Spring Boot 4.0新特性深度解析》

Spring Boot 4.0的发布标志着Java生态向云原生与开发效能革命的全面迈进。作为企业级应用开发的事实标准框架&#xff0c;此次升级在运行时性能、云原生支持、开发者体验及生态兼容性四大维度实现突破性创新。本文深度解析其核心技术特性&#xff0c;涵盖GraalVM原生镜像支持、…...

FFmpeg 与 C++ 构建音视频处理全链路实战(一)—— 环境配置与视频解封装

在数字媒体的浩瀚宇宙中&#xff0c;FFmpeg 就像一艘功能强大的星际战舰&#xff0c;承载着处理音视频数据的重任。而 C 作为一门高效、灵活的编程语言&#xff0c;犹如一位技艺精湛的星际工程师&#xff0c;能够精准操控 FFmpeg 战舰&#xff0c;完成各类复杂的音视频处理任务…...

什么是 NoSQL 数据库?它与关系型数据库 (RDBMS) 的主要区别是什么?

我们来详细分析一下 NoSQL 数据库与关系型数据库 (RDBMS) 的主要区别。 什么是 NoSQL 数据库&#xff1f; NoSQL (通常指 “Not Only SQL” 而不仅仅是 “No SQL”) 是一类数据库管理系统的总称。它们的设计目标是解决传统关系型数据库 (RDBMS) 在某些场景下的局限性&#xf…...

AI需求分析话术 | DeepSeek R1

运行环境&#xff1a;jupyter notebook (python 3.12.7) Dash 场景&#xff1a; 收集了小程序的问题点和优化建议&#xff0c;一键AI分析&#xff0c;快速排优先级 指令话术&#xff1a; 对收集的小程序问题点和建议&#xff0c;做需求分析并总结形成报告&#xff0c;报告结构…...

【Redis】键值对数据库实现

目录 1、背景2、五种基本数据类型对应底层实现3、redis数据结构 1、背景 redis是一个&#xff08;key-value&#xff09;键值对数据库&#xff0c;其中value可以是五大基本数据类型&#xff1a;string、list、hash、set、zset&#xff0c;这五大基本数据类型对应着不同的底层结…...

MySQL 8.0 OCP 英文题库解析(三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题16~25 试题16:…...

互联网大厂Java求职面试:优惠券服务架构设计与AI增强实践-1

互联网大厂Java求职面试&#xff1a;优惠券服务架构设计与AI增强实践-1 在一间简洁明亮的会议室里&#xff0c;郑薪苦正面对着一位技术总监级别的面试官&#xff0c;这位面试官拥有超过十年的大型互联网企业经验&#xff0c;以技术全面性与落地能力著称。 第一轮面试&#xf…...

object的常用方法

在面向对象编程中&#xff0c;Object 类是所有类的根类&#xff0c;它提供了一些基本的方法&#xff0c;这些方法可以被所有对象继承和使用。以下是一些在 Java 中 Object 类的常用方法&#xff0c;以及它们的作用和使用示例&#xff1a; 1. equals(Object obj) 作用&#xff…...

解决vue create 创建项目,不能使用上下键选择模板的问题

使用 git bash 创建vue项目时候&#xff0c;无法使用上下键盘按键选择创建模板 处理&#xff1a; 1.当前界面&#xff0c;按CTR C终止创建命令&#xff1b; 2.使用 alias vuewinpty vue.cmd&#xff0c;更新命令环境&#xff1b; 3.再次使用 vue create demo创建项目&#xf…...

AI Agent开发第64课-DIFY和企业现有系统结合实现高可配置的智能零售AI Agent(上)

开篇 我们之前花了将近10个篇章讲Dify的一些基础应用,包括在讲Dify之前我们讲到了几十个AI Agent的开发例子,我不知道大家发觉了没有,在AI Agent开发过程中我们经常会伴随着这样的一些问题: 需要经常改猫娘;需要经常改调用LLM的参数,甚至在一个流程中有3个节点,每个节点…...

3.Redis-set集合类型

1.用集合做差集、并集&#xff08;共同关注&#xff09;、交集...

软考 系统架构设计师系列知识点之杂项集萃(57)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之杂项集萃&#xff08;56&#xff09; 第93题 美国著名的卡内基梅隆大学软件工程学研究所针对软件工程的工程管理能力与水平进行了充分研究&#xff0c;提出了5级管理能力的模式&#xff0c;包括临时凑合阶段、简单模仿…...

Cabot:开源免费的 PagerDuty 替代品,让系统监控更简单高效

在当今复杂的IT环境中,及时发现并解决系统问题至关重要。而Cabot作为一款开源免费的监控工具,为开发和运维团队提供了强大而简单的解决方案。本文将详细介绍Cabot的核心功能、优势以及快速部署方法,帮助你更好地保障系统稳定性。 Cabot简介 Cabot是一个功能类似PagerDuty的开…...

AI中的MCP是什么?MCP的作用及未来方向预测 (使用go-zero 快速搭建MCP服务器)

AI是当下最热的风。在当今AI技术飞速发展的时代&#xff0c;AI的应用已经渗透到我们日常生活的方方面面。然而&#xff0c;随着AI系统的复杂性不断增加&#xff0c;如何让AI具备更强的自主性和灵活性成为了业界关注的焦点。这就引出了Model Context Protocol&#xff08;MCP&am…...

字节开源FlowGram与n8n 技术选型

字节跳动开源的 FlowGram 和 n8n 是两款功能强大但定位不同的工作流编排工具&#xff0c;以下是两者的技术选型对比分析&#xff0c;结合其核心特性、适用场景和优劣势&#xff1a; 一、核心特性对比 维度FlowGram&#xff08;字节开源&#xff09;n8n定位面向AI场景的可视化工…...

面试专栏-03-Git的常用命令

二、Git常用命令学习 git本质上&#xff0c;就是一个 git类型的文件夹 1、基础配置信息 git -v&#xff1a;查看 git 版本信息 git config --global user.name "dz.cn"&#xff1a;配置用户名&#xff0c;注意&#xff0c;这里配置的用户名在进行版本提交时&#xf…...

使用 Syncthing 在两台电脑之间同步文件:简单教程

&#x1f9e9; 什么是 Syncthing&#xff1f; Syncthing 是一个开源、跨平台、点对点的文件同步工具&#xff0c;类似于 Dropbox&#xff0c;但不依赖第三方服务器。它直接在你的设备之间同步文件&#xff0c;更加安全、可控&#xff0c;非常适合个人或团队内部使用。 支持操…...

spdlog日志格式化 标志全指南

一、spdlog格式化核心机制 SPDLOG通过set_pattern()函数实现灵活的日志格式定制&#xff0c;该函数解析用户提供的格式字符串&#xff0c;生成包含时间、源代码、进程等信息的结构化日志。其底层由pattern_formatter类处理&#xff0c;通过识别%标志符的组合动态生成格式化器对…...

http接口性能优化方案

设计高响应时间的HTTP查询接口&#xff08;<80ms&#xff09; 要实现跨机房调用的HTTP接口并保持响应时间在80ms以下&#xff0c;确实面临多个技术挑战。以下是关键点和解决方案&#xff1a; 主要技术难点 网络延迟&#xff1a;跨机房物理距离导致的传输延迟 TCP握手/挥手…...

Express知识框架

一、核心概念 1. Express 简介 Node.js 的 Web 框架&#xff0c;提供 HTTP 服务器封装 轻量级但灵活&#xff0c;支持中间件扩展 基于路由&#xff0c;支持 RESTful API 和传统 MVC 架构 无内置 ORM 或模板引擎&#xff0c;但可集成第三方库 2. 核心对象 express() - 创建…...

调出事件查看器界面的4种方法

方法1. 方法2. 方法3. 方法4....