数据类设计_图片类设计之9_图标类设计_C++实战_(前端架构)
前言
学的东西多了,要想办法用出来.C和C++是偏向底层的语言,直接与数据打交道.尝试做一些和数据方面相关的内容
引入
前面写了矩阵图形类对象和像素图形类对象,本贴通过一个快捷方式图标类的设计,来继续数据类型设计的一些讨论.
快捷方式图标是这个样子:
属性分析
首先,快捷方式的图标是能够拖动的.所以他是像素图形类对象(Pixel_pic).
如前所述,属性是类型所有对象的共有特征.对抽出的几个对象特征分析如下:
1)Word图标:第一层多个Matrix对象,第二层一个混合了w的Matrix对象,一个箭头图标,一个字符串
2)PowerPoint图标:第一层一个圆形对象(未定义),第二层一个混合了p的Matrix对象,一个箭头图标,一个字符串
3)Excel图标和Word图标类似.
===========================内容分割线↓=====================================
在写代码的过程中,需要不断反思以提高分析和解决问题的能力.
分析问题通常有两种途径:
1.以现有的"已知"去完成"未知"
2.预设结果反推条件
===========================内容分割线↑=====================================
第一个已知
在前一篇帖子数据类设计_图片类设计之8_自由图形类设计_(前端架构)-CSDN博客中已有两个函数build_in和build_out表达"像素图"的混合.与之关联的类型定义及算法同样在链接贴子里.
//像素混合器定义
class Pixel_pic_Builder {
public:Assistant_matrix& build_in(short x_ref, short y_ref, Assistant_matrix& ax, Pixel_pic& source) {//辅助矩阵类对象的初始行指针,定位到被放入像素图的基点位置auto axd = ax.aps.begin() + x_ref;//遍历像素图for (auto pcd = source.pps.begin(); pcd != source.pps.end(); pcd++) {axd = axd + (*pcd).x_cord; //行指针偏移//*axd表示得到该行,行仍然是一个vector对象,所以调用begin()基点位置,并计算坐标auto axdd = (*axd).begin() + y_ref + (*pcd).y_cord;(*axdd).red = (*pcd).red;(*axdd).green = (*pcd).green;(*axdd).blue = (*pcd).blue;(*axdd).is_choosed = true; //该点已被选中}//返回辅助矩阵类对象return ax;}Pixel_pic& build_out(Assistant_matrix& ax) {//生成一个空的对象表示结果Pixel_pic result;short i = 0,j=0;for ( auto axd=ax.aps.begin() ; axd!=ax.aps.end();axd++,i++)for (auto axdd = (*axd).begin(); axdd != (*axd).end();axdd++, j++) {//如果显示被标记if ((*axdd).is_choosed) {result.pps.push_back(Pixel_point{ i,j,(*axdd).red,(*axdd).green,(*axdd).blue });}}return result;}
};
第二个已知
图标类对象是像素图.
类型设计
有了上述准备,大致对快捷方式图标类有了以下的草稿:
//快捷方式图标类----伪代码,草稿
struct ShortCut{vector<Pixel_pic>& resource; //源像素图集合string text; //文本Pixel_pic shortcut; //像素图,结果---核心属性ShortCut(vector<Pixel_pic>& re,Pixel_pic& arrow,vector<Pixel_pic> &zifu_pic){.......} //混合算法
}
1>矩阵图形类对象转换成像素图形类对象
前面的像素图混合算法要求把像素图放入辅助矩阵类对象中.所以本身矩阵类图形对象需要转换成像素图对象.可以把这个函数写入工具类Pixel_pic_Builder中,代码如下:
Pixel_pic & matrix_change_pixelpic(Matrix& mx){short i,j=0;//声明一个对象接收Pixel_pic receive;for(auto mxd=mx.begin();mxd!=mx.end();mxd++,i++)for(auto mxdd=(*mxd).begin();mxdd!=mxd.end();mxdd++,j++){receive.pps.push_back(Pix_point{i,j,(*mxdd).red,(*mxdd).green,(*mxdd).blue});}return receive;
}
2>字符串"做成"字符图
在数据类设计_图片类设计之5_不规则类图形混合算法(前端架构)-CSDN博客中,字符的定义
//字符图形类定义
struct Zifu{vector<Zifu_point> zps;
}
//字符点类定义
struct Zifu_point{short x_cord; //x坐标,相对于基点的x值short y_cord; //y坐标,相对于基点的y值
}
这里需要把字符做成图,颜色取白色(255,255,255),可以把他写入工具类Pixel_pic_Builder中
//字符转成白色的点
Pixel_pic & zifu_change_pixelpic(Zifu& zf){Pixel_pic receive;for(auto zfd=zf.zps.begin();zfd!=zf.zps.end();zfd++){receive.pps.push_back(Pix_point{(*zfd).x_cord,(*zfd).y_cord},255,255,255});}
}
3>混合时注意事项
字符的多少和辅助矩阵大小有关系,如图:
选中后外面的矩形框,就是辅助矩阵类对象的长和高.可以看出,他们是不一样的.所以在写混合算法时要注意开来.稍后在代码中说明.
4>类型的完整定义
注意:第一步在外面把图形混合了,就是除了箭头和字符的那部分,不管用多少次build_in,他会得到一个Pixel_pic对象,将其传入resource里.
//快捷方式图标类
struct ShortCut{Pixel_pic shortcut; //像素图,结果---核心属性//构造函数ShortCut(Pixel_pic& resource,Pixel_pic& arrow,vector<Pixel_pic> &zifu_pic){/限制10字符的文本输入if(zifu_pic.size()<=10){ Assistant_matrix ax; //声明辅助矩阵类对象,就是外边框Pixel_pic_Builder pb; //生成混合器对象,工具类ax=pb.build_in(50,50,ax,resource); //把外面图形混合进去,硬编码50,50Pixel_pic ar=pb.matrix_change_pixelpic(ax); //把箭头从矩阵图形类对象转成像素图ax=pb.build_in(80,40,ax,ar); //箭头写入,硬编码80,40short x_cord=60,y_cord=60; //第一个字符定位(60,60),以后y方向加20for(auto zcd=zifu_pic.begin();zcd!=zifu_pic.end();zcd++,y_cord+=20){ax=pb.build_in(x_cord,y_cord,ax,*zcd); //依次添加字符}shortcut=pb.build_out(ax); //提取结果像素图.}elsecout<<"请重新输入,程序终止"<<endl; //给提示abort(); //退出}
}
好了,一个并不完善的构造函数写完了.
构造函数说明
1>只能实现字符小于10个的功能.
像word,excel,powerpoint,在10个字符以内,是可以的.像上面举例的"操作系统OperationSystem"实现不了.强制退出了.笔者偷懒了,毕竟不是要真的写图标,图个省事.
如果要写的话,后面的辅助矩阵类对象 Assistant_matrix ax的尺寸要修改,并且添加字符图的算法也要做修改.
2>关于硬编码
硬编码一般情况是禁止出现的.哪怕用const变量取替代.但硬编码不是绝对不行的,试想如果其他尺寸被限制了,硬编码是不是达到的效果是一样的呢?
3>核心属性
笔者把类型中的属性分为核心属性和冗余属性两种.
核心属性表示对象正是被核心属性所组成.而冗余属性表示对象的内容需要被外界所获得(加api).所以这里只给了核心属性Pixel_pic shortcut;如果要给vector<Pixel_point> pps;也是可以的.
4>关于arrow箭头图标
箭头图标是个事实上的对象,所以直接作为构造函数的参数写进来.这是表现的重点.如果下次写个左上角有朵花的图标,同样的操作.
问题
始终有个觉得不顺畅的是矩阵类对象的长高,以及像素图的尺寸长高应该有所表现.这个问题暂时没发现,可能会出bug.如果有,那把这两个属性定义在类对象上面,并且在算法中给出限制,想来可以解决.
类型设计的小结
平常看来,类型设计只要把属性是上面弄清楚,写上去就行了.这里做了些拓展,共分为4个部分:
1>组成
Pixel_pic& resource,
Pixel_pic& arrow,
vector<Pixel_pic> &zifu_pic
这三个属性表示图标内元素的组成,且用了混合算法合在了一起.
2>终极形态
也就是核心属性
3>特征
特征是arrow,箭头图标.区别于其他类型的关键因素
相关文章:
数据类设计_图片类设计之9_图标类设计_C++实战_(前端架构)
前言 学的东西多了,要想办法用出来.C和C是偏向底层的语言,直接与数据打交道.尝试做一些和数据方面相关的内容 引入 前面写了矩阵图形类对象和像素图形类对象,本贴通过一个快捷方式图标类的设计,来继续数据类型设计的一些讨论. 快捷方式图标是这个样子: 属性分析 首先,快捷方式…...
fuse性能关键参数entry_timeout
entry_timeout 是 FUSE(Filesystem in Userspace)中的一个选项,用于控制目录项缓存的有效期。具体来说,它决定了文件系统在多长时间内缓存目录项(如文件名到 inode 的映射),从而影响文件系统的性…...
3. 轴指令(omron 机器自动化控制器)——>MC_ResetFollowingError
机器自动化控制器——第三章 轴指令 13 MC_ResetFollowingError变量▶输入变量▶输出变量▶输入输出变量 功能说明▶指令详情▶时序图▶重启动运动指令▶多重启运动指令▶异常 MC_ResetFollowingError 对指令当前位置和反馈当前位置的偏差进行复位。 指令名称FB/FUN图形表现S…...
Spring Boot项目快速创建-开发流程(笔记)
主要流程: 前端发送网络请求->controller->调用service->操纵mapper->操作数据库->对entity数据对象赋值->返回前端 前期准备: maven、mysql下载好 跟学视频,感谢老师: https://www.bilibili.com/video/BV1gm4…...
[操作系统] 进程间通信:进程池的实现
引言 在学习操作系统时,进程间通信(IPC)和多进程管理是核心内容之一。进程池是一种常见的模式,通过预先创建一组工作进程来处理任务,避免频繁创建和销毁进程带来的开销。本文将详细剖析一个用 C 实现的进程池代码&…...
信号相关的程序
1、不断打印*换行之后响应信号,然后循环 #include <stdio.h> #include <string.h> #include <signal.h> #include <stdlib.h> #include <unistd.h> static void alrm_handler(int signo) {write(1,"!",1); }int main( in…...
【计算机网络】-计算机网络期末复习题复习资料
一、计算机网络体系结构(800字) 1. OSI参考模型 七层结构:物理层→数据链路层→网络层→传输层→会话层→表示层→应用层 各层核心功能: 物理层:比特流传输(如RJ45、光纤接口) 数据链路层&…...
Linux 基础入门操作 第十二章 TINY Web 服务器
1 服务器基础架构 1.1 背景知识 Web 服务器使用 HTTP 协议与客户端(即浏览器)通信,而 HTTP 协议又基于 TCP/IP 协议。因此我们要做的工作就是利用 Linux 系统提供的 TCP 通信接口来实现 HTTP 协议。 而 Linux 为我们提供了哪些网络编程接口…...
L2-052 吉利矩阵
L2-052 吉利矩阵 - 团体程序设计天梯赛-练习集 这道题打表 打表部分被注释了 n4 [0,0,282, 2008, 10147, 40176, 132724, 381424, 981541, 2309384] n3 [0,0,21, 55, 120, 231, 406, 666, 1035, 1540] n2 [0,0,3, 4, 5, 6, 7, 8, 9, 10] l,n map(int,input().split()) if…...
BKA-CNN-LSTM、CNN-LSTM、LSTM、CNN四模型多变量时序光伏功率预测,附模型研究报告
BKA-CNN-LSTM、CNN-LSTM、LSTM、CNN四模型多变量时序光伏功率预测,附模型研究报告 目录 BKA-CNN-LSTM、CNN-LSTM、LSTM、CNN四模型多变量时序光伏功率预测,附模型研究报告预测效果基本介绍程序设计参考资料 预测效果 基本介绍 BKA-CNN-LSTM、CNN-LSTM、…...
【读书笔记】华为《从偶然到必然》
note 华为的成功并非偶然,而是通过IPD体系、投资组合管理、平台战略等系统性工具,将研发投资转化为可持续的商业竞争力。书中强调的“管理即内部因素”理念,揭示了企业规模扩张与管理能力匹配的深层规律,为高科技企业提供了可借鉴…...
flink广播算子Broadcast
文章目录 一、Broadcast二、代码示例三.或者第二种(只读取一个csv文件到广播内存中)提示:以下是本篇文章正文内容,下面案例可供参考 一、Broadcast 为了关联一个非广播流(keyed 或者 non-keyed)与一个广播流(BroadcastStream),我们可以调用非广播流的方法 connect(),…...
实时图像处理:让你的应用更智能
I. 引言 实时图像处理在现代应用中扮演着重要的角色,它能够使应用更加智能、响应更加迅速。本文将深入探讨实时图像处理的原理、部署过程以及未来的发展趋势,旨在帮助开发者更好地理解如何将实时图像处理应用于他们的项目中。 II. 实时图像处理的基础概…...
深入理解 Linux 基础 IO:从文件操作到缓冲区机制
亲爱的读者朋友们😃,此文开启知识盛宴与思想碰撞🎉。 快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 在 Linux 系统中,文件输入输出(IO)…...
汇编语言高级编程技巧:从基础到进阶
前言 汇编语言作为底层编程语言,直接操作硬件,执行效率高,但编写复杂逻辑时往往显得繁琐。通过使用汇编伪指令和宏,我们可以实现类似于高级语言的结构,如条件判断、循环、结构体和函数等,从而提升代码的可读…...
Android Studio常见问题解决
一、环境配置问题 1. 安装失败 问题描述:在安装过程中,可能会遇到硬件要求不符合、网络问题、安装包损坏、权限不足或安装路径问题等,导致安装失败。 解决方法: 硬件要求:确保设备满足最低硬件要求。 网络问题&…...
【RHCE】LVS-NAT模式负载均衡实验
目录 题目 IP规划 配置IP RS1 RS2 RS3 LVS client 配置RS 配置LVS 安装lvs软件 启动ipvsadm服务 lvs规则匹配 ipvsadm部分选项 客户端测试 总结 题目 使用LVS的 NAT 模式实现 3 台RS的轮询访问,IP地址和主机自己规划。 IP规划 主机IP地址RS1-nat模…...
MacOS下的IntelliJ IDEA突然无法访问本机的虚拟机
今天在开发的过程中,突然遇到一个怪事,之前运行的好好的程序,突然间报无法连接redis服务器,一开始以为是网络问题,在OS的terminal里又是ping 又是telnet的,一切正常,可是程序就是连不上。 挠了半…...
【渗透测试】Fastjson 反序列化漏洞原理(一)
目录 一、Fastjson 是什么二、Fastjson 工作原理三、反序列化漏洞原理1. 反序列化漏洞的定义2. Fastjson 的反序列化机制3. 漏洞成因关注以下几点(1) 动态类型解析(2) 自动调用方法(3) 信任用户输入 4. 漏洞利用过程(1) 寻找可利用的类(也称为 "Gadget"&a…...
BM100-K系列开关量输入信号隔离器
1. 产品概述 BM100-K系列开关量输入信号隔离器是一款高性能的信号处理设备,专为工业自动化控制系统设计。该产品支持干接点或NAMUR型接近开关输入,并通过继电器或晶体管实现隔离输出。其核心功能包括输入输出逻辑控制(同相/反相可调…...
c++11 | 细说智能指针
💓个人主页:mooridy 💓专栏地址:C 关注我🌹,和我一起学习更多计算机的知识 🔝🔝🔝 什么是智能指针? 智能指针是 C 中一种用于管理动态内存的机制。它提供了一…...
谷歌大型推理模型曝光!击败Claude-3.7-Thinking
哎!最近推特上的网友在LMSYS Arena 发现了个泄漏的大模型 Nebula,效果据说特别好,打败了o1、o3-mini、Claude 3.7 Thinking等模型: 网友们通过询问和分析 API,发现这似乎是谷歌正在秘密测试的新推理模型!推…...
Python FastAPI面试题及参考答案
目录 FastAPI 的优缺点是什么?列举典型应用场景。 解释 FastAPI 的路由机制,如何定义路径参数和查询参数? Pydantic 模型在 FastAPI 中的作用是什么?如何进行数据验证与序列化? FastAPI 如何自动生成 OpenAPI 文档?Swagger UI 和 ReDoc 的区别? 什么是 ASGI?FastAP…...
C++(初阶)(八)——string
string string遍历下标[]迭代器iterator反向迭代器 范围for修改 Capacitysize和lengthmax_sizecapacityclearcapacity的扩容reserveresize Element accessoperator[]和at **Modifiers**:appendinserterasereplace String operationsc_strsubstr和findfind_first_ofgetline 题目…...
计算机操作系统处理机调度(1)
系列文章目录 第三章:处理机调度与死锁 文章目录 系列文章目录前言一、作业和资源:二、处理机调度的层次: 1.高级调度2.初级调度3.中级调度 三、作业调度算法举例:总结 前言 在多道程序的环境下,内存中存在着多个进…...
ctfshow REVERSE re2 萌新赛 内部赛 七夕杯 WP
目录 re2 萌新赛 flag白给 签退 数学不及格 内部赛 批量生产的伪劣产品 来一个派森 好好学习 天天向上 屏幕裂开了 七夕杯 逆向签到 easy_magic re2 ida分析主函数,将flag.txt内容加密写入enflag.txt 这是密钥加密过程 标准rc4加密 简单异或解…...
云服务器怎么设置端口禁用呢?
在云服务器上禁用特定端口是提升安全性的重要措施,可通过云平台安全组和服务器本地防火墙双重配置实现。以下是详细操作指南: 一、通过云平台安全组禁用端口(优先推荐) 1. 莱卡云/腾讯云/华为云等操作步骤 登录云控制台 进入ECS实…...
V8引擎源码编译踩坑实录
背景 为了解决 view8 代码没有指定版本的 v8 引擎问题GitHub - suleram/View8: View8 - Decompiles serialized V8 objects back into high-level readable code. 但是打出来了exe文件也没啥用,不清楚这个view8是解决啥逆向用的,如果想逆向electron的j…...
享元模式(Flyweight Pattern)
享元模式(Flyweight Pattern)是一种结构型设计模式,它通过共享技术来高效地支持大量细粒度对象的复用。 一、基础 1 意图 运用共享技术有效地支持大量细粒度的对象 减少内存中对象的数量,节省系统资源 2 适用场景 一个应用程序使用了大量对象 由于对象数量庞大造成很大的…...
RAG(Retrieval-Augmented Generation)基建之PDF解析的“魔法”与“陷阱”
嘿,亲爱的算法工程师们!今天咱们聊一聊PDF解析的那些事儿,简直就像是在玩一场“信息捉迷藏”游戏!PDF文档就像是个调皮的小精灵,表面上看起来规规矩矩,但当你想要从它那里提取信息时,它就开始跟…...
搭建小程序该如何选择服务器?
当企业选择开发属于自己的小程序,则需要服务器的支持,服务器可以帮助加速小程序的上线速度,影响小程序后面的运行是否流畅,同时还会影响用户访问网站时的速度,所以,企业在搭建小程序时该如何选择合适的服务…...
【腾讯云架构师技术沙龙2025.03.22】
大模型技术演进与行业影响分析 日期:2025年3月22日 主讲人:李建忠 《DeepSeek实战驱动行业智变—AI应用寒武纪》 整理:飞书语音转化DeepSeek分析汇总 一、技术演进:从快思考到慢思考 1. 早期争议与能力局限(2022-202…...
【jvm】垃圾回收的并行和并发
目录 1. 说明2. 并行(Parallel)2.1 定义2.2 特点2.3 示例 3. 并发(Concurrent)3.1 定义3.2 特点3.3 示例 4. 并行与并发的比较 1. 说明 1.在JVM(Java虚拟机)的垃圾回收机制中,并行(…...
Flowable基础表结构
工作流程的相关操作都是操作存储在对应的表结构中,为了能更好的弄清楚Flowable的实现原理和细节,我们有必要先弄清楚Flowable的相关表结构及其作用。在Flowable中的表结构在初始化的时候会创建相关表结构,具体如下: ACT_EVT&…...
为什么不同的损失函数可以提升模型性能?
不同的损失函数可以提升模型性能的原因在于,损失函数是模型优化的核心目标,它直接定义了模型在训练过程中需要最小化的误差或偏差。通过设计不同的损失函数,可以针对具体任务的特点、数据分布的特性以及模型的目标需求进行更精确的优化&#…...
git上传文件到远程库
1.git init 把这个目录变成git可以管理的仓库 2.git status查看文件追踪的情况(工作区的文件是红色) 3.git add . 添加工作区所有文件到暂存区 再git status(此时文件都变成绿色) 4.git commit -m 描述性文字 5.git push -u o…...
【产品小白】需求分析的进阶
在产品经理的职业发展中,需求分析能力的提升至关重要。普通和进阶在需求分析层面,往往存在从表面需求到本质问题的认知差异。以下从几个方面探讨这一进阶过程: 1. 需求理解的深度 普通:通常停留在用户表达的显性需求层面&#…...
机试题汇总
万能头文件 #include<bits/stdc.h> 输入一个年份和月份,输出该月的天数 1.3.5.7.8.10.12 -- 31天 闰年判断: year % 400 0 || (year % 4 0 && year % 100 ! 0) 输入字符串,反转输出 #include<iostream&g…...
软件公司高新技术企业代办:机遇与陷阱并存-优雅草卓伊凡
软件公司高新技术企业代办:机遇与陷阱并存-优雅草卓伊凡 在科技飞速发展的当下,软件公司如雨后春笋般涌现,众多企业渴望通过申请高新技术企业来获得政策支持与发展助力。随之而来的,是高新技术企业代办业务的兴起。然而ÿ…...
C#中3维向量的实现
c#中默认不带库三维向量,需要自己安装第三方库,或者可以手动实现一个简易的三维向量。 public struct Vector3D {public double X { get; set; }public double Y { get; set; }public double Z { get; set; }public Vector3D(double x, double y, doubl…...
使用腾龙边缘计算网关内置的AIoTedge+NodeRED接入西门子PLC
腾龙边缘计算网关一体机凭借其强大的性能和丰富的功能,为企业提供了一种高效、灵活的解决方案。本文将详细介绍如何使用腾龙边缘计算网关一体机内置的AIoTedgeNodeRED接入西门子PLC,实现数据的采集、处理与传输。 一、硬件准备与环境搭建 在开始之前&am…...
基于MLA的人类语音情感分类
《DeepSeek大模型高性能核心技术与多模态融合开发(人工智能技术丛书)》(王晓华)【摘要 书评 试读】- 京东图书 随着信息技术的不断发展,如何让机器识别人类情绪,这个问题受到了学术界和工业界的广泛关注。目前,情绪识…...
Codeforces Round 1012 (Div. 2)
AB略 C 没看懂题意,翻译的问题。t0代表这个人必须找一个没有人的桌子且座位离他最近,t1代表这个人只要找一个空座位就可以了。一个桌子四个座位,t0肯定会坐左下角的那个。首先建立两个小根堆q1代表左下角的座位,q2代表一个桌子的…...
FPGA时钟约束
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、Create_clock 前言 时钟周期约束,就是对时钟进行约束。 一、Create_clock create_clock -name <name> -period <period> -waveform …...
二分查找------练习3
1. 题目 2. 思路和题解 这道题看到这个复杂度,就想到应该是使用二分查找进行求解。为了使二分查找的次数尽可能的少,我们需要对较短的数组进行查找,假设就在nums1上进行操作,因此在开始时,要对两个数组的长度进行一个…...
拆解美团2024年报,业务协同、生态共赢、科技创新
从早期的千团大战开始,到后来外卖和社区团购们的激烈角逐,再到现在即时零售战场的群雄争霸,本地生活的硝烟从来都没有真正消散过。 作为本地生活服务领域的“领头羊”——美团,也一直都是其他平台们的挑战目标,几乎所…...
EMS小车技术特点与优势:高效灵活的自动化输送解决方案
北成新控伺服技术丨EMS小车调试视频 EMS小车是一种基于单轨运行的电动输送系统,通过电力驱动实现物料的高效搬运和输送,具有高效灵活、节能环保、多功能集成、行业适配性强等特性,广泛应用于汽车制造、工程机械、家电生产、仓储物流等行业自动…...
GESP2025年3月认证解析
GESP一级 一、单选题 答案:D 解析:DeepSeek 是字节跳动公司开发的人工智能,它具备生成文本的能力,所以可以根据《哪吒 2》的场景生成剧情脚本。A 选项中《哪吒 2》是贺岁片,并非新型操作系统;B 选项 Deep…...
尝试在软考62天前开始成为软件设计师-信息系统安全
安全属性 保密性:最小授权原则(能干活的最小权限)、防暴露(隐藏)、信息加密、物理保密完整性(防篡改):安全协议、校验码、密码校验、数字签名、公证 可用性:综合保障( IP过滤、业务流控制、路由选择控制、审计跟踪)不可抵赖性:数字签名 对称加密 DES :替换移位 3重DESAESR…...
Dify - 架构、部署、扩展与二次开发指南
本文详细解析 Dify 的架构、部署流程、高可用中间件的独立部署方法,以及二次开发流程,帮助开发者更高效地管理和扩展 Dify。 1. 本地DEMO部署 安装Docker,执行下面脚本,可能需要配置镜像。 git clone https://github.com/langge…...