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

Day2——需求分析与设计

教师端签到应用软件的需求分析;

产品经理如何写好产品需求文档(附模板)
需求分析是软件开发过程中的关键步骤,它确保了开发的软件能够满足用户的需求。以下是进行需求分析的具体步骤:

1. 确定分析目标

  • 明确教师端签到系统的目标和范围。
  • 确定需求分析的主要参与者和利益相关者。
  • 为什么要确定分析目标
  • 具体操作

2. 收集需求信息

  • 访谈:与教师、学校管理人员进行一对一访谈,了解他们的需求和期望。

  • 问卷调查:设计问卷,广泛收集教师和学生的意见和建议。

  • 工作坊/研讨会:组织研讨会,邀请相关人员进行讨论,收集需求。

  • 观察:实地观察教师的签到流程,了解现有系统的不足。

  • 为什么要收集需求信息

  • 具体操作

3. 分析需求信息(该过程省略)

  • 整理数据:将收集到的信息进行整理,去除重复和不相关的需求。
  • 识别需求:从收集到的数据中识别出功能性需求、非功能性需求、约束条件等。
  • 分类需求:将需求按照功能模块进行分类,如用户管理、签到管理、课堂管理等。

4. 验证需求(该过程省略)

  • 需求确认:与利益相关者一起审查需求,确保需求的准确性和完整性。
  • 原型验证:创建原型或模拟,让用户测试并反馈,验证需求的可实现性。

5. 编写需求文档

  • 需求规格说明书:详细记录所有需求,包括功能需求、性能需求、界面需求、安全需求等。
  • 用户故事/用例:编写用户故事或用例,描述用户与系统的交互过程。
  • 需求文档

6. 评审需求文档

  • 内部评审:开发团队内部对需求文档进行评审,确保文档清晰、无遗漏。
  • 外部评审:邀请外部专家或用户参与评审,获取更多反馈。

7. 维护需求

  • 需求变更管理:在开发过程中,对需求进行变更管理,记录变更原因和影响。
  • 需求跟踪:确保每个需求都能在设计和开发中得到体现和跟踪。

8. 输出需求分析报告

  • 最终报告:将所有经过验证和评审的需求整理成最终的需求分析报告,作为后续设计和开发的依据。

最后画出组织结构图
在这里插入图片描述


使用 UML 进行软件设计(Rational Rose、StarUML、Visual Paradigm 等自选一个。UML 的基本概念和符号,UML 中的各种图的使用);

UML 建模的步骤和方法(类图、顺序图的绘制与理解)

1. 用例图

在这里插入图片描述
在这里插入图片描述

2.活动图

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 类图

在这里插入图片描述

4.顺序图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


问题回答:

为什么要确立分析目标

确定分析目标在需求分析过程中的重要性体现在以下几个方面:

为什么要确定分析目标:

  1. 明确方向:分析目标为整个需求分析过程提供了明确的方向,确保所有参与者都朝着同一个目标努力。
  2. 聚焦重点:帮助团队识别和专注于项目最关键的部分,避免资源浪费在不重要的功能上。
  3. 范围界定:明确项目的范围,防止需求蔓延,即需求无限制地增加,导致项目延期和超预算。
  4. 决策依据:为项目决策提供依据,帮助确定哪些需求是必须的,哪些可以推迟或放弃。
  5. 沟通基础:为项目团队与利益相关者之间的沟通提供一个共同的基础,确保大家对项目目标有共同的理解。
  6. 评估标准:为项目完成后评估成果提供标准,便于衡量项目是否成功达成既定目标。

为什么要收集需求信息

收集需求信息是软件开发过程中的关键步骤,它为整个项目奠定了基础。以下是收集需求信息的原因和具体操作:

收集需求信息的原因:

  1. 理解用户需求:明确用户(在本例中为教师、学生和管理员)对系统的期望和需求,确保开发出的系统能够满足用户的实际使用场景。
  2. 确定系统功能:通过需求收集,可以确定系统应该具备哪些功能,以及这些功能的优先级。
  3. 指导系统设计:需求信息是系统设计和架构的基础,它们将直接影响系统的结构和用户体验。
  4. 降低风险:通过收集和验证需求,可以减少项目因需求不明确或不完整而产生的风险。
  5. 资源规划:需求信息帮助项目团队评估所需资源,包括时间、人力和资金。
  6. 建立共识:确保所有项目参与者对项目目标、范围和预期成果有共同的理解。

具体步骤:

确立分析目标具体操作步骤:

步骤1:确定教师端签到系统的目标和范围:

目标:
  1. 提高效率:简化教师管理签到流程,减少手动操作,提高课堂管理效率。
  2. 实时监控:实时记录学生的出勤情况,便于教师掌握班级动态。
  3. 数据统计:自动统计和分析学生的出勤数据,生成报告供教师参考。
  4. 促进互动:通过签到数据,促进教师与学生之间的互动和沟通。
  5. 安全可靠:确保签到数据的安全性和准确性,防止代签和误签。
范围:
  1. 功能范围
    • 教师,学生账户管理:注册、登录、密码找回等。
    • 签到管理:发起签到、结束签到、查看签到结果。
    • 班级管理:添加班级,删除班级,添加学生,删除学生。
    • 出勤记录:记录学生签到时间、状态(出勤、迟到、缺勤)。
    • 数据报告:生成班级出勤统计报告。
    • 系统设置:签到时间设置、提醒设置等。
  2. 用户范围
    • 教师:使用系统发起和管理签到。
    • 系统管理员:维护系统运行,处理技术问题。
    • 学生:进行签到行为,查看签到信息。
  3. 技术范围
    • 适用于Web端和移动端的用户界面。
    • 数据库管理学生信息和签到记录。
    • 网络通信实现实时数据同步。

步骤2:确立需求分析的主要参与者和利益相关者:

主要参与者:
  1. 教师

    • 作为系统的直接用户,教师将提供关于签到流程、功能和界面设计的需求和建议。
  2. 学生

    • 虽然不是系统的直接用户,但学生的签到行为是系统的核心功能,他们的需求和反馈对系统设计至关重要。
  3. IT技术人员

    • 负责系统的开发和维护,他们将基于用户需求进行技术实现。
  4. 项目管理者

    • 负责项目的整体规划和进度控制,确保需求分析按时完成。
  5. 系统管理员

    • 作为利益相关者,系统管理员对系统的稳定运行和安全性有直接利益。
利益相关者:
  1. 教务管理人员
    • 他们关心系统的出勤数据是否准确,以及是否能够帮助提高教学管理效率。
  2. 学校领导
    • 对系统的实施效果和成本效益负责,可能需要定期接收系统运行报告。
  3. IT部门
    • 负责系统的技术支持和维护,对系统的稳定性和安全性有直接利益。
  4. 家长
    • 虽然不直接使用系统,但可能对子女的出勤情况感兴趣,间接影响系统的设计和功能。
      通过明确这些参与者和利益相关者,可以更全面地收集需求,确保系统设计满足各方期望。

收集需求信息具体操作步骤:

这里使用Pingcode 智能化研发管理工具

PingCode 功能介绍

  1. 需求管理(Ship):
  • PingCode的需求管理工具可以帮助您收集和整理教师端签到系统的需求。您可以创建需求文档,记录功能需求和非功能需求,并对其进行分类和优先级排序

2.项目管理(Project):

  • 利用PingCode的项目管理工具,您可以规划项目进度,创建任务和子任务,并将需求与具体的开发任务关联起来,确保需求得到有效实施
  1. 目标管理(Goals):
  • 通过目标管理工具,您可以设定项目目标,并将其与需求和任务关联,确保所有团队成员对项目目标有清晰的认识,并集中精力实现这些目标
  1. 知识库(Wiki):
  • 您可以使用PingCode的知识库功能来记录和共享项目相关的文档和知识,包括需求分析文档、设计文档等,以便团队成员随时查阅和更新
  1. 集成企业级账号目录(Access)
  • PingCode支持集成企业微信、飞书、钉钉、LDAP、Microsoft AD等第三方账号平台,实现组织架构同步和单点登录,方便团队成员的管理和权限控制
  1. 平台级开放能力:
  • PingCode提供开放性接口,帮助研发团队连接第三方工具/平台,实现端到端闭环管理。这意味着您可以将PingCode与其他工具集成,比如代码托管平台、CI/CD流水线、自动化测试工具等,以实现更流畅的需求到部署的流程
  1. AI研发项目管理工具:
  • PingCode AI可以帮助您实现需求判断和分析,形成需求优先级和排期自动化。AI技术的应用可以提高需求收集和处理的效率
  1. 效能度量(Insight):
  • 通过效能度量工具,您可以监控项目进度和效率,确保需求按时完成,并对需求变更进行有效管理

以下是如何使用 PingCode 收集需求信息的具体步骤:

步骤 1:创建项目

  1. 注册/登录 PingCode:首先,你需要有一个 PingCode 账户。如果没有,请注册一个新账户。
  2. 创建新项目:登录后,点击创建新项目,填写项目名称、描述等信息,选择适合的项目模板。

请添加图片描述

步骤 2:设置需求收集模板

  1. 访问需求模块:在项目中,找到“需求”模块。
  2. 创建需求模板:点击“新建需求”按钮,然后选择“模板”来创建一个需求模板。这个模板将包含你在收集需求时需要的信息字段,如需求描述、优先级、状态等。

在这里插入图片描述

步骤 3:收集需求信息

  1. 新建需求
    • 点击“新建需求”,填写需求的基本信息,如标题、描述、优先级等。
    • 使用之前创建的模板,确保所有需求都有统一的结构。
  2. 访谈记录
    • 在进行访谈时,记录下关键信息,并在访谈结束后将其输入到 PingCode 中作为需求条目。
  3. 问卷调查
    • 如果使用了问卷调查,可以将问卷结果导入或手动输入到 PingCode 中,转化为具体的需求。
  4. 用户故事地图
    • 使用 PingCode 的用户故事地图功能,将用户的需求转化为用户故事,并排列在故事地图上。

步骤 4:整理和分析需求

  1. 分类和标签
    • 使用分类和标签来组织需求,便于管理和搜索。
  2. 优先级排序
    • 根据需求的重要性和紧迫性,对需求进行优先级排序。
  3. 讨论和评审
    • 利用 PingCode 的讨论功能,邀请团队成员对需求进行讨论和评审。
    • 可以在需求条目下添加评论,进行协作沟通。

步骤 5:需求确认

  1. 需求评审会议
    • 在 PingCode 中安排需求评审会议,邀请相关利益相关者参与。
    • 在会议中,对需求进行确认和最终定稿。
  2. 更新需求状态
    • 根据评审结果,更新需求的状态(如“待开发”、“设计中”、“已确认”等)。

步骤 6:需求跟踪

  1. 迭代规划
    • 将已确认的需求分配到不同的迭代(Sprint)中。
  2. 进度监控
    • 通过 PingCode 的仪表盘和报告功能,监控需求的完成情况。
  3. 变更管理
    • 当需求发生变更时,确保在 PingCode 中记录变更历史,并通知相关团队成员。
      通过以上步骤,你可以使用 PingCode 高效地收集、整理、分析和跟踪需求信息,为教师端签到应用软件的开发提供坚实的基础。

相关文章:

Day2——需求分析与设计

教师端签到应用软件的需求分析; 产品经理如何写好产品需求文档(附模板) 需求分析是软件开发过程中的关键步骤,它确保了开发的软件能够满足用户的需求。以下是进行需求分析的具体步骤: 1. 确定分析目标 明确教师端签到…...

aosp15上winscope离线html如何使用?

背景: aosp15上的如何使用Winscope前面已经有分享过相关的blog,这块其实和aosp14没啥大的差别,具体可以看如下2个文章: 手把手教你aosp14编译Winscope 安卓aosp15手机上如何离线获取winscope文件 文章中也说明在aosp15如果直接使…...

AttributeError: module numpy has no attribute int .报错解决

AttributeError: module numpy has no attribute int .报错解决方案_attributeerror: module numpy has no attribute i-CSDN博客 以上为参考教程,试了卸载再安装,不行,报错: Found existing installation: numpy 1.24.3 error: …...

python爬虫常用数据保存模板(Excel、CSV、mysql)——scrapy中常用数据提取方法(CSS、XPATH、正则)(23)

文章目录 1、常用数据保存模板2.1 保存为Excel格式2.2 保存为CSV格式2.3 保存至mysql数据库2、scrapy中常用数据提取方法2.1 XPath选择器2.2 CSS选择器2.3 正则表达式1、常用数据保存模板 2.1 保存为Excel格式 # 1、导入模块 from openpyxl import workbook# 2、创建一个exce…...

【面试题】简述rabbitmq的组织架构

[面试题]简述rabbitmq的组织架构 RabbitMQ 是一种流行的消息中间件,其架构设计围绕消息生产者, 消息消费者和消息中转(Broker)展开。以下是 RabbitMQ 的主要组织架构组件和它们之间的关系: 1. 核心组件 1.1 Producer&#xff0…...

C#-WPF 常见类型转换方法(持续更新)

目录 一、普通类型转换 1、Convert类 2、Parse(转String) 3、TryParse(转String) 4、ToString(转String) 5、int转double 6、String转DateTime 7、自定义类型的显示/隐式转换 二、byte[]转ImageSource 方法一 方法二 一、普通类型转换 1、Convert类 提供了一种安全…...

c基础加堆练习题

1】思维导图: 2】在堆区空间连续申请5个int类型大小空间,用来存放从终端输入的5个学生成绩,然后显示5个学生成绩,再将学生成绩升序排序,排序后,再次显示学生成绩。显示和排序分别用函数完成 要求&#xff…...

做了一份前端面试复习计划,保熟~

前言 以前我看到面试贴就直接刷掉的,从不会多看一眼,直到去年 9 月份我开始准备面试时,才发现很多面试经验贴特别有用,看这些帖子(我不敢称之为文章,怕被杠)的过程中对我的复习思维形成影响很大…...

虚幻引擎开发命名规则

UE的命名规则如下: 模版类以T作为前缀,例如TArray, TMap, TSet。UObject派生类都以U前缀。AActor派生类都以A前缀。SWidget派生类都以S前缀。全局对象使用G开头,如GEngine。抽象接口以I前缀。枚举以E开头。bool变量以b前缀,如bPe…...

【蓝桥杯每日一题】砍竹子

砍竹子 2024-12-7 蓝桥杯每日一题 砍竹子 STL 贪心 题目大意 这天, 小明在砍竹子, 他面前有 nn 棵竹子排成一排, 一开始第 ii 棵竹子的 高度为 h i h_i hi​. 他觉得一棵一棵砍太慢了, 决定使用魔法来砍竹子。魔法可以对连续的一 段相同高度的竹子使用, 假设这一段竹子的高度为…...

Lambda表达式随记

学习链接 目录 作用定义[capture list] 捕获列表(paramter) 参数列表mutable 可变规格throw() 异常说明-> return-type 返回类型{function statement} lambda函数体 Lambda表达式的优缺点Lambda表达式工作原理适用场景STL算法库短小不需要复用函数场景 作用 Lambda表达式&…...

Vulhub:Log4j[漏洞复现]

CVE-2017-5645(Log4j反序列化) 启动靶场环境 docker-compose up -d 靶机IPV4地址 ifconfig | grep eth0 -A 5 ┌──(root㉿kali)-[/home/kali/Desktop/temp] └─# ifconfig | grep eth0 -A 5 eth0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 in…...

ubuntu系统生成SSL证书配置https

自签名【Lets Encrypt】的测试证书&#xff0c;有效期三个月。 第一步&#xff1a;安装acme&#xff0c;如果没有安装git&#xff0c;需要提前安装 下载came资源 git clone https://github.com/Neilpang/acme.sh.git 无法访问&#xff0c;可以试用gitee的资源&#xff0c;安…...

记录 idea 启动 tomcat 控制台输出乱码问题解决

文章目录 问题现象解决排查过程1. **检查 idea 编码设置**2. **检查 tomcat 配置**3.检查 idea 配置文件4.在 Help 菜单栏中&#xff0c;修改Custom VM Options完成后保存&#xff0c;并重启 idea 问题现象 运行 tomcat 后&#xff0c;控制台输出乱码 解决排查过程 1. 检查 id…...

C++ unordered_map和unordered_set的使用

1.unordered_set系列的使用 1.1unordered_set和unordered_multiset参考文档 unordered_set和unordered_multiset参考文档 1.2unordered_set类的介绍 • unordered_set的声明如下&#xff0c;Key就是unordered_set底层关键字的类型 • unordered_set默认要求Key⽀持转换为整…...

【探商宝】OpenAI 发布 Sora:视频生成领域的重大突破

2024 年 12 月 10 日&#xff0c;OpenAI 正式推出了备受瞩目的人工智能视频生成模型 Sora&#xff0c;这一举措在科技界引起了轩然大波&#xff0c;为视频创作领域带来了全新的可能性和变革. 一、Sora 的功能与特性 1. 强大的视频生成能力 Sora 能够根据用户输入的文本描述生…...

[代码随想录Day32打卡] 理论基础 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯

理论基础 题型 动归基础&#xff08;这一节就是基础题&#xff09;背包问题打家劫舍股票问题子序列问题 动态规划五部曲 确定dp数组及其下标的含义确定递推公式dp数组如何初始化遍历顺序打印dp数组 509. 斐波那契数 简单~ dp数组及下标含义&#xff1a; dp[i]表示第i各斐…...

【实操GPT-SoVits】声音克隆模型图文版教程

项目github地址&#xff1a;https://github.com/RVC-Boss/GPT-SoVITS.git官方教程&#xff1a;https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e/tkemqe8vzhadfpeu本文旨在迅速实操GPT-SoVits项目&#xff0c;不阐述技术原理&#xff08;后期如果有时间研究&#…...

开发一套SDK 第一弹

自动安装依赖包 添加条件使能 #ex: filetypesh bash_ls 识别 达到预期,多个硬件环境 等待文件文件系统挂在完成 或者创建 /sys/class/ 属性文件灌入配置操作 AI 提供的 netlink 调试方法,也是目前主流调用方法,socket yyds #include <linux/module.h> #include <linux…...

2024149读书笔记|Hans的阿狸五部曲——成长的路上分离在所难免

2024149读书笔记|Hans的阿狸五部曲——成长的路上分离在所难免 1. 《阿狸和小小云》2. 《阿狸和小玉》3. 《阿狸呓语》4. [202480读书笔记|《阿狸和弯月亮》——生的再普通&#xff0c;也是限量版](https://blog.csdn.net/qq_40985985/article/details/139731131)5. 《阿狸永远…...

外包干了5天,技术明显退步。。。。。

先说一下自己的情况&#xff0c;本科生&#xff0c;19年通过校招进入南京某软件公司&#xff0c;干了接近3年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了2年的功能测试&…...

Ubuntu22.04 安装Isaac Lab

目录 1.1 安装IsaacLab 1.1.1 下载文件 1.1.2 创建Isaac Sim符号链接 1.1.3 创建并激活conda环境 1.1.4 安装依赖 1.1.5 安装IsaacLab扩展 1.1.6 安装完成&#xff0c;要source一下 1.2 验证IsaacLab安装 1.1 安装IsaacLab 1.1.1 下载文件 将 Isaac Lab 仓库克隆到您的…...

unity 2D像素种田游戏学习记录(自用)

一、透明度排序轴 改变sprite的排序方式&#xff0c;默认按照z轴进行排序&#xff08;离摄像机的远近&#xff09;。可以将其改变成y轴的排序方式&#xff0c;这样可以使2D人物走在草丛的下方就不被遮挡&#xff0c;走在草丛上方就被遮挡&#xff0c;如下图。 在项目设置-图形…...

NIFI使用

1 从Kafka接收消息&#xff0c;存储到数据库中。 &#xff08;1&#xff09; ConsumerKafka processor &#xff08;2&#xff09;Execute Scripts Processor 我这里是使用JS脚本进行处理。 还有很多其他语言的脚本。 var flowFile session.get(); if (flowFile ! null) {v…...

vue3+vite+ts 使用webrtc-streamer播放海康rtsp监控视频

了解webrtc-streamer webrtc-streamer 是一个使用简单机制通过 WebRTC 流式传输视频捕获设备和 RTSP 源的项目&#xff0c;它内置了一个小型的 HTTP server 来对 WebRTC需要的相关接口提供支持。相对于ffmpegflv.js的方案&#xff0c;延迟降低到了0.4秒左右&#xff0c;画面的…...

Nanolog起步笔记-9-log解压过程(3)寻找meta续

Nanolog起步笔记-9-log解压过程-3-寻找meta续 当前的目标新的改变decompressNextLogStatementmetadata查看业务面的log语句注释掉 runBenchmark();改过之后&#xff0c;2条记录之后&#xff0c;这里就直接返回了 小结 当前的目标 没有办法&#xff0c;还要继续。 当前的目标&a…...

未来网络技术的新征程:5G、物联网与边缘计算(10/10)

一、5G 网络&#xff1a;引领未来通信新潮流 &#xff08;一&#xff09;5G 网络的特点 高速率&#xff1a;5G 依托良好技术架构&#xff0c;提供更高的网络速度&#xff0c;峰值要求不低于 20Gb/s&#xff0c;下载速度最高达 10Gbps。相比 4G 网络&#xff0c;5G 的基站速度…...

【北京迅为】iTOP-4412全能版使用手册-第六十八章 U-boot基础知识

iTOP-4412全能版采用四核Cortex-A9&#xff0c;主频为1.4GHz-1.6GHz&#xff0c;配备S5M8767 电源管理&#xff0c;集成USB HUB,选用高品质板对板连接器稳定可靠&#xff0c;大厂生产&#xff0c;做工精良。接口一应俱全&#xff0c;开发更简单,搭载全网通4G、支持WIFI、蓝牙、…...

go 中线程安全map

在 Go 语言中&#xff0c;官方包 sync.Map 确实提供了线程安全的映射数据结构。然而&#xff0c;正如你所提到的&#xff0c;使用 sync.Map 时&#xff0c;有时需要进行类型断言&#xff0c;这可能会让代码显得冗长或不直观。 如果你希望使用一个更加易用的线程安全映射&#…...

封装类与普通类的区别

1 封装类的好处 数据隐藏&#xff1a;通过封装&#xff0c;我们可以将类的内部实现细节隐藏起来&#xff0c;只暴露有限的接口。这样&#xff0c;外部代码就不能直接访问或修改类的内部状态&#xff0c;从而保证了数据的安全性和完整性。 数据保护&#xff1a;封装可以…...

StarRocks-hive数据类型导致的分区问题

背景&#xff1a; 有个hive的表&#xff0c;是月分区的&#xff08;month_id&#xff09;&#xff0c;分区字段用的是string类型。数据量比较大&#xff0c;为了保证计算性能&#xff0c;所以把数据导入到SR里&#xff0c;构建一个内部表。但是在建表的时候想使用月分区使用pa…...

Java面试题精选:设计模式(二)

1、装饰器模式与代理模式的区别 1&#xff09;代理模式(Proxy Design Pattern ) 原始定义是&#xff1a;让你能够提供对象的替代品或其占位符。代理控制着对于原对象的访问&#xff0c;并允许将请求提交给对象前后进行一些处理。 代理模式的适用场景 功能增强 当需要对一个对…...

【JavaEE】多线程(7)

一、JUC的常见类 JUC→java.util.concurrent&#xff0c;放了和多线程相关的组件 1.1 Callable 接口 看以下从计算从1加到1000的代码&#xff1a; public class Demo {public static int sum;public static void main(String[] args) throws InterruptedException {Thread …...

技术型企业如何高效搭建企业博客以增强品牌影响力和市场竞争力

在数字化时代&#xff0c;技术型企业面临着激烈的市场竞争和快速变化的行业环境。为了在这场竞争中脱颖而出&#xff0c;企业需要寻找新的营销渠道和品牌建设工具。企业博客作为一种低成本、高效率的在线内容平台&#xff0c;已经成为技术型企业增强品牌影响力和市场竞争力的重…...

【qt环境配置】windows下的qt与vs工具集安装\版本对应关系

vs工具集安装通过vs的在线安装器勾选工具集即可 工具包下载路径&#xff1a;https://www.microsoft.com/zh-cn/download/details.aspx?id40784 配置工具集在qt中可以自动扫描到 《正确在 Windows 上配置 MSVC(2019) 作为 Qt 编译器》https://b3logfile.com/pdf/article/15922…...

XTuner 微调实践微调

步骤 0. 使用 conda 先构建一个 Python-3.10 的虚拟环境 cd ~ #git clone 本repo git clone https://github.com/InternLM/Tutorial.git -b camp4 mkdir -p /root/finetune && cd /root/finetune conda create -n xtuner-env python3.10 -y conda activate xtuner-env…...

docker compose

Docker的理念是一个容器只运行一个服务。而 Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具 1 2。通过 docker-compose.yml 文件&#xff0c;用户可以配置应用程序服务&#xff0c;并使用简单的一条命令便可以创建和启动所有服务。这是关于 Docker Compose …...

Java 中的方法重写

在 Java 中&#xff0c;方法重写&#xff08;Method Overriding&#xff09;是面向对象编程的一个重要概念&#xff0c;它指的是子类中存在一个与父类中相同名称、相同参数列表和相同返回类型的方法。方法重写使得子类可以提供特定的实现&#xff0c;从而覆盖&#xff08;或改变…...

阿里云ECS服务器域名解析

阿里云ECS服务器域名解析&#xff0c;以前添加两条A记录类型&#xff0c;主机记录分别为www和&#xff0c;这2条记录都解析到服务器IP地址。 1.进入阿里云域名控制台&#xff0c;找到域名 ->“解析设置”->“添加记录” 2.添加一条记录类型为A,主机记录为www&#xff0c…...

非父子通信(扩展)-- event bus 事件总线

创建一个空实例Bus&#xff0c; export default 导出Bus 过程:由A组件对Bus组件进行监听&#xff0c;B组件触发Bus对应的事件&#xff0c;由于A组件进行监听&#xff0c;触发事件之后就会进行A组件的回调&#xff0c;那么就可以将消息发送给A了 在src文件夹下新建utils文件夹&a…...

【Linux系列】获取当前目录

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

大模型:把GPT搬回家 - chatGPT的本地化API -Node.js调用

chatGPT拒绝了中国大陆和中国香港的访问&#xff0c;包括api的调用。这使得我们无法使用目前来讲确实YYLX的生产工具&#xff0c;仔细想一下其实还是可以曲线解决的&#xff0c;本文的介绍仅供学习参考。 用Node.jschatGPT提供的API&#xff0c;就可以在自己本地或者自己的服务…...

【Qt项目实战】使用脚本拓展CPP应用程序(2)——Lua脚本及编辑器

考古 《【Qt项目实战 】&#xff1a;使用脚本拓展CPP应用程序&#xff08;1&#xff09;——Lua脚本及编辑器》 一、LuaBridge 最近在项目的某个模块再次使用Lua作为程序拓展语言&#xff0c;开发了一些新的功能。 这里借助 LuaBridge 轻松实现Qt调用C类成员函数及成员对象等…...

【RBF SBN READ】hadoop社区基于RBF的SBN READ请求流转

读写分离功能的背景及架构 当前联邦生产集群的各个子集群只有Active NameNode在工作,当读写任务变得繁忙的时候,只有一个Active负责处理的话,此时集群的响应和处理能力业务侧感知会明显下降,为此,我们将引入Observer架构,实现读写功能的分离,使得Active只负责写请求,而…...

【教学类-36-08】20241210对称蝴蝶——去白边(图案最大化)一大和一大二小

背景需求 前期制作了对称蝴蝶&#xff0c;用来涂色&#xff0c;幼儿很喜欢 【教学类-36-07】20230707三只对称蝴蝶&#xff08;midjounery-niji&#xff09;&#xff08;涂色、裁剪、游戏&#xff08;飞舞的蝴蝶&#xff09;&#xff09;_对称图案涂色-CSDN博客文章浏览阅读49…...

Flume——sink连接hdfs的参数配置(属性参数+时间参数)

这可不是目录 配置文件官网说明属性参数时间参数 配置文件官网说明 可以参考官网的说明 属性参数 属性名称默认值说明channel-type-组件类型名称&#xff0c;必须是hdfshdfs.path-HDFS路径&#xff0c;例如&#xff1a;hdfs://mycluster/flume/mydatahdfs.filePrefixFlumeDa…...

lc字符串相加——模拟

415. 字符串相加 - 力扣&#xff08;LeetCode&#xff09; 不准调用封装好的那些库。手动模拟两数相加&#xff0c;记录进位。主要当其中短的数字计算完了怎么办&#xff0c;技巧为下标为负数时就当做0&#xff0c;相当于补0一样。 class Solution {public String addStrings…...

框架建设实战6——缓存组件

说起分布式缓存,如今redis大行其道。不过,我们在创建缓存组件时,需要着重考虑如下几点: 1.客户端选型 本组件基于springboot2的默认实现,即lettuce客户端。不同客户端区别如下: 名称描述 优缺点分析 jedis1.springboot1.5.*默认 2.老牌客户端,使用稳定…...

基于springboot使用Caffeine

Caffeine 是一个基于 Java 的高性能、现代化的缓存库。它由 Ben Manes 开发&#xff0c;受 Google Guava 缓存库的启发&#xff0c;但具有更好的性能和更多的功能。 Caffeine 的核心特点 高性能 基于 Java 8 的现代化设计&#xff0c;利用高级并发算法&#xff0c;提供极低的延…...

深入解析 JavaScript 中的 Blob 对象:二进制数据处理的核心

文章目录 1.Blob是什么2.Blob用法实例属性Blob方法slice方法text方法 示例1&#xff1a;字符串 Blob示例2&#xff1a;数组和字符串 Blob示例3&#xff1a;从文件输入创建 3.使用场景1.创建 Blob 并生成 URL&#xff0c;下载文件2.文件上传3.切片上传3.Blob用于URL在线预览PDF文…...