17----图表

本节我们来学习markdown的图表。


  • Markdown 本身并不支持图表,但 Markdown 在技术文章、文档、博客领域使用较多,所以非常多的 Markdown 解析器是支持图表扩展的。在支持图表扩展的 Markdown 解析器中,我们可以使用解析支持的图表语法来渲染图表。

  • 由于图表不是 Markdown 标准,不同的Markdown编辑器支持的图表类型也不同。
    我们这里将会使用的是 Mermaid

图表的使用方法和围栏式代码块一样,但代码语言固定为 mermaid,Markdown 解析器会把代码为 mermaid 的代码块解析并渲染为图表。


1. 流程图:

  • 流程图是一种用图形方式表示算法、程序或者工作流程的图形化工具。它使用不同的符号和线条来表示各个步骤、决策、输入输出和流程控制等。

  • 在markdown中输入mermaid代码:

```mermaid
flowchart LRA[直角矩形] -->|链接文本| B(圆角矩形)B --> C{选择}C -->|一| D[结果一]C -->|二| E[结果二]
```
  • 渲染后输出下表:
链接文本
直角矩形
圆角矩形
选择
结果一
结果二

一个典型的流程图通常包含以下几个要素:

  1. 开始/结束符号:用来表示流程的开始和结束点,通常用一个椭圆形或者圆形来表示。

  2. 过程符号:用来表示具体的操作步骤,通常用矩形框来表示。矩形框中会写明具体的操作或者处理过程。

  3. 判断符号:用来表示决策或者判断的步骤,通常用菱形来表示。菱形中会写明判断条件,根据条件的不同,流程会分支到不同的路径。

  4. 输入/输出符号:用来表示输入或者输出的步骤,通常用梯形来表示。梯形中会写明输入或者输出的内容。

  5. 连接线:用来连接不同的步骤,表示流程的顺序和逻辑关系。连接线可以是直线、箭头线或者其他形状的线。

  6. 注释符号:用来添加说明或者注释,通常用矩形框或者椭圆形来表示。

  • 通过这些符号和线条的组合,流程图可以清晰地展示出一个算法、程序或者工作流程的执行过程和逻辑关系。它可以帮助人们更好地理解和分析复杂的流程,并且可以用于沟通、教学和文档编写等方面。

2. 时序图:

  • 时序图(Sequence Diagram)是一种用于描述对象之间交互行为的图形化工具。它展示了对象之间的消息传递顺序和时序关系,能够清晰地展示系统或者软件的执行流程。
  • 输入:
```mermaid
sequenceDiagramautonumberpar Action 1Alice->>John: Hello John, how are you?and Action 2Alice->>Bob: Hello Bob, how are you?endAlice->>+John: Hello John, how are you?Alice->>+John: John, can you hear me?John-->>-Alice: Hi Alice, I can hear you!Note right of John: John is perceptiveJohn-->>-Alice: I feel great!loop Every minuteJohn-->>Alice: Great!end
```
  • 输出:
Alice John Bob Hello John, how are you? 1 Hello Bob, how are you? 2 par [Action 1] [Action 2] Hello John, how are you? 3 John, can you hear me? 4 Hi Alice, I can hear you! 5 John is perceptive I feel great! 6 Great! 7 loop [Every minute] Alice John Bob

时序图主要由以下几个要素组成:

  1. 参与者(Actor):参与者是指在系统中扮演角色的实体,可以是人、软件模块、硬件设备等。在时序图中,参与者通常用一个矩形框来表示,框内写明参与者的名称。
  2. 对象(Object):对象是指在系统中具体的实例,可以是类的实例、组件的实例等。在时序图中,对象通常用一个矩形框来表示,框内写明对象的名称和类别。
  3. 生命周期(Lifeline):生命周期是指对象存在的时间段,在时序图中用一条垂直的虚线来表示。虚线上方表示对象的存在时期,下方表示对象不存在的时期。
  4. 消息(Message):消息是指对象之间的交互行为,可以是方法的调用、信号的发送等。在时序图中,消息通常用带箭头的直线来表示,箭头指向接收消息的对象。消息可以包含调用的方法名、参数和返回值等信息。
  5. 控制流(Control Flow):控制流是指消息的传递顺序和时序关系。在时序图中,控制流可以用数字或者条件语句来表示,表示消息的顺序执行或者分支执行。
  • 通过这些要素的组合,时序图可以清晰地展示对象之间的交互行为和时序关系,帮助人们理解和分析系统的执行流程。时序图通常用于需求分析、系统设计和软件开发等阶段,是一种非常重要的建模工具。

3. 类图:

  • 类图(Class Diagram)是一种用于描述系统中类和类之间关系的图形化工具。它展示了系统中的类、类之间的关系以及类的属性和方法等信息,是面向对象分析与设计中最常用的建模工具之一。
  • 输入:
```mermaid
classDiagramAnimal <|-- DuckAnimal <|-- FishAnimal <|-- ZebraAnimal : +int ageAnimal : +String genderAnimal: +isMammal()Animal: +mate()class Duck{+String beakColor+swim()+quack()}class Fish{-int sizeInFeet-canEat()}class Zebra{+bool is_wild+run()}
```
  • 输出:
Animal
+int age
+String gender
+isMammal()
+mate()
Duck
+String beakColor
+swim()
+quack()
Fish
-int sizeInFeet
-canEat()
Zebra
+bool is_wild
+run()

类图主要由以下几个要素组成:

  1. 类(Class):类是指具有相似属性和行为的对象的抽象。在类图中,类通常用一个矩形框来表示,框内写明类的名称。
  2. 属性(Attribute):属性是指类的特征或者状态,用于描述类的静态特性。在类图中,属性通常写在类的矩形框内,格式为“属性名 : 类型”。
  3. 方法(Method):方法是指类的行为或者操作,用于描述类的动态特性。在类图中,方法通常写在类的矩形框内,格式为“方法名(参数列表) : 返回类型”。
  4. 关系(Relationship):关系是指类之间的连接和依赖关系,用于描述类之间的交互和协作。常见的关系有继承、关联、聚合、组合和依赖等。
  • 继承(Inheritance):表示一个类继承了另一个类的属性和方法,用一个带箭头的实线来表示,箭头指向父类。
  • 关联(Association):表示类之间存在某种关联关系,用一条实线来表示。
  • 聚合(Aggregation):表示类之间的关系是整体与部分的关系,用一条带空心菱形的实线来表示,菱形指向整体。
  • 组合(Composition):表示类之间的关系是整体与部分的关系,并且部分不能独立存在,用一条带实心菱形的实线来表示,菱形指向整体。
  • 依赖(Dependency):表示一个类依赖于另一个类,用一条带箭头的虚线来表示,箭头指向被依赖的类。
  • 通过这些要素的组合,类图可以清晰地展示系统中的类和类之间的关系,帮助人们理解和分析系统的结构和行为。类图通常用于需求分析、系统设计和软件开发等阶段,是一种非常重要的建模工具。

4. 状态图:

  • 状态图(State Diagram)是一种用于描述系统中对象状态和状态之间转换的图形化工具。它主要用于建模和描述对象的行为,特别是在面向对象系统中。
  • 输入:
```mermaid
stateDiagram-v2[*] --> StillStill --> [*]Still --> MovingMoving --> StillMoving --> CrashCrash --> [*]
```
  • 输出:
Still
Moving
Crash

状态图由以下几个要素组成:

  1. 状态(State):状态是指对象所处的某种情况或条件。在状态图中,状态通常用一个圆角矩形框来表示,框内写明状态的名称。
  2. 转换(Transition):转换是指对象从一个状态转换到另一个状态的过程。在状态图中,转换通常用一个带箭头的实线来表示,箭头指向转换的目标状态。
  3. 事件(Event):事件是指触发状态转换的外部或内部事件。在状态图中,事件通常用一个小圆圈来表示,并与转换相连。
  4. 动作(Action):动作是指在状态转换过程中执行的操作或行为。在状态图中,动作通常写在转换的箭头上或者与转换相连。
  • 通过这些要素的组合,状态图可以清晰地展示对象的状态和状态之间的转换关系,帮助人们理解和分析系统的行为。状态图通常用于需求分析、系统设计和软件开发等阶段,是一种非常重要的建模工具。

5. 实体关系图:

  • 实体关系图(Entity-Relationship Diagram,简称ER图)是一种用于描述系统中实体、属性和实体之间关系的图形化工具。它主要用于数据库设计和数据建模,帮助人们理解和分析系统中的数据结构和关系。
  • 输入:
```mermaid
erDiagramCUSTOMER ||--o{ ORDER : placesORDER ||--|{ LINE-ITEM : containsCUSTOMER }|..|{ DELIVERY-ADDRESS : uses
```
  • 输出:
CUSTOMER ORDER LINE-ITEM DELIVERY-ADDRESS places contains uses

在实体关系图中,有以下几个基本要素:

  1. 实体(Entity):实体是指系统中具有独立存在和可区分性的事物或对象。在实体关系图中,实体通常用一个矩形框来表示,框内写明实体的名称。
  2. 属性(Attribute):属性是指实体所具有的特征或描述。在实体关系图中,属性通常用椭圆形框来表示,框内写明属性的名称。
  3. 关系(Relationship):关系是指实体之间的联系或连接。在实体关系图中,关系通常用菱形框来表示,框内写明关系的名称。
  4. 域(Domain):域是指属性的取值范围或约束条件。在实体关系图中,域通常用括号括起来,写在属性的旁边。
  • 通过这些要素的组合,实体关系图可以清晰地展示实体、属性和实体之间的关系,帮助人们理解和设计系统的数据结构和关系。实体关系图通常用于数据库设计、系统分析和软件开发等阶段,是一种非常重要的数据建模工具。

6. 用户旅行图:

  • 用户旅行图(User Journey Map)是一种用于描述用户在使用产品或服务过程中的体验和行为的图形化工具。它主要用于用户体验设计和产品开发,帮助团队了解用户的需求、期望和痛点,从而优化产品的设计和用户体验。
  • 输入:
```mermaid
journeytitle My working daysection Go to workMake tea: 5: MeGo upstairs: 3: MeDo work: 1: Me, Catsection Go homeGo downstairs: 5: MeSit down: 5: Me
```
  • 输出:
Cat Me
Go to work
Go to work
Me
Make tea
Make tea
Me
Go upstairs
Go upstairs
Me Cat
Do work
Do work
Go home
Go home
Me
Go downstairs
Go downstairs
Me
Sit down
Sit down
My working day

用户旅行图通常包括以下几个要素:

  1. 用户角色(User Role):用户旅行图中的用户角色指代使用产品或服务的不同用户类型,例如普通用户、管理员、游客等。
  2. 步骤(Steps):用户旅行图中的步骤描述了用户在使用产品或服务过程中所经历的各个阶段或环节,通常以时间顺序排列。
  3. 动作(Actions):动作表示用户在每个步骤中所执行的操作或行为,例如点击按钮、填写表单、查看信息等。
  4. 触点(Touchpoints):触点指代用户与产品或服务进行交互的方式或渠道,例如网站、手机应用、社交媒体等。
  5. 情感(Emotions):情感描述了用户在每个步骤中所感受到的情绪或体验,例如满意、困惑、失望等。
  • 通过绘制用户旅行图,团队可以更好地理解用户在使用产品或服务过程中的体验和行为,发现用户的需求和痛点,从而进行产品的优化和改进。用户旅行图可以帮助团队深入了解用户的视角,提升产品的用户体验,增强用户忠诚度,并为产品的设计和开发提供指导和支持。

7. 甘特图:

  • 甘特图(Gantt Chart)是一种用于展示项目进度和任务时间安排的图表工具。它以时间为横轴,任务为纵轴,通过条形图的形式来展示任务的开始时间、结束时间和持续时间。甘特图可以帮助团队和项目经理清晰地了解项目的进度、任务的依赖关系和时间安排,从而有效地进行项目管理和资源调度。
  • 输入:
```mermaid
ganttdateFormat  YYYY-MM-DDtitle       Adding GANTT diagram functionality to mermaidexcludes    weekends%% (`excludes` accepts specific dates in YYYY-MM-DD format, days of the week ("sunday") or "weekends", but not the word "weekdays".)section A sectionCompleted task            :done,    des1, 2014-01-06,2014-01-08Active task               :active,  des2, 2014-01-09, 3dFuture task               :         des3, after des2, 5dFuture task2              :         des4, after des3, 5dsection Critical tasksCompleted task in the critical line :crit, done, 2014-01-06,24hImplement parser and jison          :crit, done, after des1, 2dCreate tests for parser             :crit, active, 3dFuture task in critical line        :crit, 5dCreate tests for renderer           :2dAdd to mermaid                      :1dFunctionality added                 :milestone, 2014-01-25, 0dsection DocumentationDescribe gantt syntax               :active, a1, after des1, 3dAdd gantt diagram to demo page      :after a1  , 20hAdd another diagram to demo page    :doc1, after a1  , 48hsection Last sectionDescribe gantt syntax               :after doc1, 3dAdd gantt diagram to demo page      :20hAdd another diagram to demo page    :48h
```
  • 输出:
2014-01-07 2014-01-09 2014-01-11 2014-01-13 2014-01-15 2014-01-17 2014-01-19 2014-01-21 2014-01-23 2014-01-25 2014-01-27 Completed task Completed task in the critical line Implement parser and jison Describe gantt syntax Active task Create tests for parser Add gantt diagram to demo page Add another diagram to demo page Future task Future task in critical line Describe gantt syntax Add gantt diagram to demo page Add another diagram to demo page Future task2 Create tests for renderer Add to mermaid Functionality added A section Critical tasks Documentation Last section Adding GANTT diagram functionality to mermaid

甘特图通常包括以下几个要素:

  1. 任务(Tasks):甘特图中的任务表示项目中需要完成的具体工作,每个任务通常有一个名称和持续时间。
  2. 开始时间和结束时间(Start and End Dates):每个任务在甘特图中会用条形图的形式表示其开始时间和结束时间,通过条形图的长度来表示任务的持续时间。
  3. 依赖关系(Dependencies):任务之间可能存在着前后关系或依赖关系,甘特图可以通过箭头或连接线来表示任务之间的依赖关系。
  4. 里程碑(Milestones):里程碑是项目中的重要节点或关键事件,通常用一个特殊的符号或标记来表示在甘特图中。
  5. 资源分配(Resource Allocation):甘特图可以显示每个任务分配给哪些资源或团队成员,帮助项目经理进行资源调度和任务分配。
  • 通过甘特图,项目团队可以清晰地了解项目的时间安排、任务的依赖关系和进度情况,帮助团队成员更好地协调工作、分配资源和优化进度。甘特图也可以用于与利益相关者进行沟通和共享项目进展情况,提高项目的可视化和透明度。

8. 需求图:

  • 需求图(Requirement Diagram)是一种用于描述系统需求的图形化表示工具,它是统一建模语言(UML)的一部分。需求图主要用于捕捉和可视化系统的需求,帮助团队和利益相关者更好地理解和沟通需求,以支持系统的设计和开发。
  • 输入:
```mermaid
requirementDiagramrequirement test_req {id: 1text: the test text.risk: highverifymethod: test}element test_entity {type: simulation}test_entity - satisfies -> test_req
```
  • 输出:
<<Requirement>> test_req Id: 1 Text: the test text. Risk: High Verification: Test <<Element>> test_entity Type: simulation Doc Ref: None <<satisfies>>

需求图通常包括以下几个主要元素:

1.系统(System):需求图的核心是系统,它表示正在开发的软件系统或系统的一部分。
2. 角色(Actor):角色代表与系统进行交互的外部实体,可以是人、组织、其他系统等。角色可以是系统的用户、管理员、第三方服务提供商等。
3. 用例(Use Case):用例描述了系统与角色之间的交互场景或功能需求。每个用例表示一个系统功能或一个用户故事,用于描述系统对外部实体的响应和行为。
4. 关系(Relationship):需求图中的关系用于表示系统、角色和用例之间的关联和依赖关系。常见的关系包括关联关系、扩展关系、包含关系等。

  • 通过需求图,团队可以清晰地了解系统的功能需求、角色的参与和系统与外部实体的交互方式。需求图可以帮助团队捕捉和分析系统需求,支持系统的设计和开发过程。同时,需求图也可以用于与利益相关者进行沟通和共享需求,以提高需求的共识和理解。

9. Git记录图:

  • Git记录图(Git commit graph)是Git版本控制系统中的一种图形化表示工具,用于展示代码仓库中的提交记录和分支的演变历史。Git记录图可以帮助开发者更好地理解代码仓库的变化和分支之间的关系。
  • 输入:
```mermaid
gitGraphcommitcommitbranch developcheckout developcommitcommitcheckout mainmerge developcommitcommit
```
  • 输出:
  • csdn好像无法输出,可能是不支持。

Git记录图通常包括以下几个主要元素:

  1. 提交节点(Commit Nodes):每个提交节点代表一个代码提交或一个版本的快照。提交节点通常由一串哈希值来标识,它们按照时间顺序排列,形成一个提交链。
  2. 分支(Branches):分支是代码仓库中的一个独立的开发线,它可以代表一个功能分支、修复分支或主线分支等。每个分支由一个指针来表示,指向最新的提交节点。
  3. 合并(Merge):合并表示将两个或多个分支的更改合并到一起。在记录图中,合并通常以箭头或连接线的形式表示,指示两个分支的合并点。
  4. 标签(Tags):标签是一个有意义的名称或标记,用于标识某个特定的提交节点。标签可以用来表示版本发布、重要的里程碑或稳定的快照。
  • 通过Git记录图,开发者可以清晰地了解代码仓库中的提交历史、分支的演变和合并操作。记录图可以帮助开发者追溯代码的变化、理解分支之间的关系,并支持团队协作和代码版本管理。

10. C4模型图:

  • C4模型图(C4 Model)是一种用于软件架构设计和可视化的简洁、层次化的模型。它由Simon Brown提出,旨在帮助团队更好地理解和沟通软件系统的架构。
  • 输入:
```mermaid
C4Contexttitle System Context diagram for Internet Banking SystemEnterprise_Boundary(b0, "BankBoundary0") {Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")Person(customerB, "Banking Customer B")      Person_Ext(customerC, "Banking Customer C", "desc")            Person(customerD, "Banking Customer D", "A customer of the bank, <br/> with personal bank accounts.")System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")  Enterprise_Boundary(b1, "BankBoundary") {SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.")      System_Boundary(b2, "BankBoundary2") {  System(SystemA, "Banking System A")  System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts. next line.")        } System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.") SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.") Boundary(b3, "BankBoundary3", "boundary") {  SystemQueue(SystemF, "Banking System F Queue", "A system of the bank.")        SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.") }}}BiRel(customerA, SystemAA, "Uses")BiRel(SystemAA, SystemE, "Uses")Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")Rel(SystemC, customerA, "Sends e-mails to")UpdateElementStyle(customerA, $fontColor="red", $bgColor="grey", $borderColor="red")UpdateRelStyle(customerA, SystemAA, $textColor="blue", $lineColor="blue", $offsetX="5")UpdateRelStyle(SystemAA, SystemE, $textColor="blue", $lineColor="blue", $offsetY="-10")UpdateRelStyle(SystemAA, SystemC, $textColor="blue", $lineColor="blue", $offsetY="-40", $offsetX="-50")UpdateRelStyle(SystemC, customerA, $textColor="red", $lineColor="red", $offsetX="-50", $offsetY="20")UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")```
  • 输出:
  • csdn好像无法输出,可能是不支持。

C4模型图主要包括以下四个层次:

  1. 顶层上下文图(System Context Diagram):顶层上下文图是C4模型的最高层,用于展示系统与外部实体之间的关系。它将系统作为一个黑盒,与外部实体(如用户、其他系统)进行交互。顶层上下文图帮助团队理解系统的边界和外部依赖关系。
  2. 容器图(Container Diagram):容器图展示了系统内部的容器(Container)和它们之间的关系。容器可以是物理或虚拟的,如应用程序、数据库、Web服务等。容器图帮助团队理解系统的组成部分和它们之间的通信和依赖关系。
  3. 组件图(Component Diagram):组件图展示了容器内部的组件(Component)和它们之间的关系。组件是系统中的功能单元,可以是类、模块、库等。组件图帮助团队理解系统的内部结构和组件之间的关联。
  4. 代码级别图(Code Level Diagram):代码级别图是C4模型的最底层,用于展示组件内部的类、接口和代码级别的细节。代码级别图帮助团队理解组件的具体实现和代码之间的关系。
  • C4模型图的层次结构使得团队可以从高层次的概览逐步深入到系统的细节。它提供了一种简洁而直观的方式来描述和沟通软件架构,帮助团队成员共享和理解系统的设计和结构。

在这里插入图片描述

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

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

相关文章

shell连接ubuntu

当使用aws的私钥连接时,老是弹出输入私钥密码,但是根本没有设置过密码,随便输入后,又提示该私钥无密码... 很早就使用过aws的ubuntu,这个问题也很早就遇到过,但是每次遇到都要各种找找找...索性这次记下来算了 此处用FinalShell连接为例 首先现在Putty连接工具: 点击官方下载 …

用 VB.net,VBA 两种方式 读取单元格内的 换行数据,并出力到 CSV文件

用 VB.net&#xff0c;VBA 两种方式 读取单元格内的 换行数据&#xff0c;并出力到 CSV文件 需求 如下图所示&#xff0c;为了生成csv文件导入数据库&#xff0c;需要将下图 的 1 和 2 拼接成 如下 3 所示的一行数据&#xff0c; 开头为 1 &#xff0c;往后为 2 的换行数据 将换…

TCP中窗口和滑动窗口的含义以及流量控制

一.窗口 在TCP中由于要保证可靠性&#xff0c;所以每发送一条数据后&#xff0c;都需要接收方返回一条应答报文&#xff0c;要是我们每发送一条数据&#xff0c;发送方就等待接收应答报文&#xff0c;收到之后再去发送下一条数据&#xff0c;这样我们就会花费大量的时间在等待应…

【系统工具】开源服务器监控工具WGCLOUD初体验

经常看到服务器上传下载流量一直在跑&#xff0c;也不知道是啥软件在偷偷联网~~~官网地址&#xff1a;www.wgstart.com&#xff0c;个人使用是免费的。 WGCLOUD官网介绍 "WGCLOUD支持主机各种指标监测&#xff08;cpu使用率&#xff0c;cpu温度&#xff0c;内存使用率&am…

Redis 数据持久化

官方文档&#xff1a;https://redis.io/docs/management/persistence/ Redis提供了主要提供了 2 种不同形式的持久化方式&#xff1a; RDB&#xff08;Redis数据库&#xff09;&#xff1a;RDB 持久性以指定的时间间隔执行数据集的时间点快照。 AOF&#xff08;Append Only F…

【算法刷题之数组篇(2)】

目录 1.leetcode-35. 搜索插入位置&#xff08;简单&#xff09;2.leetcode-74. 搜索二维矩阵&#xff08;中等&#xff09;3.leetcode-73. 矩阵置零&#xff08;中等&#xff09;4.leetcode-56. 合并区间&#xff08;中等&#xff09;5.leetcode-54. 螺旋矩阵&#xff08;中等…

HAProxy

目录 HAProxy HAProxy介绍 主要特性 LVS、nginx、HAProxy区别 nginx LVS HAProxy 负载均衡策略 Haproxy搭建 Web 群集 Haproxy服务器 编译安装 Haproxy Haproxy服务器配置 添加haproxy 系统服务 节点服务器部署 日志定义 HAProxy HAProxy介绍 HAProxy是可提供高…

前端编辑页面修改后和原始数据比较差异

在软件研发过程中&#xff0c;会遇到很多编辑页面&#xff0c;有时编辑页面和新增页面长的基本上一样&#xff0c;甚至就是一套页面供新增和编辑共用。编辑页面的场景比较多&#xff0c;例如&#xff1a; 场景一、字段比较多&#xff0c;但实际只修改了几个字段&#xff0c;如…

STM32/AT32 MCO管脚输出时钟配置

前言&#xff1a;最近在学以太网通讯&#xff0c;发现RMII接口配置的时钟管脚有MCU自己输出&#xff0c;想要看看是怎么输出的&#xff0c;对此进行记录 1、交接项目项目上使用的是PA8管脚来输出时钟50MHZ&#xff0c;提供给上面refclk。 先看手册 PA8的复用功能具备将MCU时钟…

分布式链路追踪——Dapper, a Large-Scale Distributed Systems Tracing Infrastructure

要解决的问题 如何记录请求经过多个分布式服务的信息&#xff0c;以便分析问题所在&#xff1f;如何保证这些信息得到完整的追踪&#xff1f;如何尽可能不影响服务性能&#xff1f; 追踪 当用户请求到达前端A&#xff0c;将会发送rpc请求给中间层B、C&#xff1b;B可以立刻作…

算法:双指针解决数组划分和数组分块问题

文章目录 实现原理实现思路典型例题移动0复写0快乐数盛最多水的容器有效三角形的个数三数之和四数之和 总结 在快速排序或者是其他和数组有关的题目中&#xff0c;有很经典的一类题目是关于数组划分的&#xff0c;数组划分就是把数组按照一定的规则划分为不同的区间&#xff0c…

【【典型电路设计之片内存储器的设计之RAM的Verilog HDL描述一】】

典型电路设计之片内存储器的设计之RAM的Verilog HDL描述一 RAM是随机存储器&#xff0c;存储单元的内容可按需随意取出或存入。这种存储器在断电后将丢失所有数据&#xff0c;一般用来存储一些短时间内使用的程序和数据。 其内部结构如下图所示&#xff1a; 例&#xff1a;用…

PL 侧驱动和fpga 重加载的方法

可以解决很多的问题 时钟稳定后加载特定fpga ip &#xff08;要不内核崩的一塌糊涂&#xff09;fpga 稳定复位软件决定fpga ip 加载的时序 dluash load /usr/local/scripts/si5512_setup.lua usleep 30 mkdir -p /lib/firmware cp -rf /usr/local/firmare/{*.bit.bin,*.dtbo} …

拥塞控制(TCP限制窗口大小的机制)

拥塞控制机制可以使滑动窗口在保证可靠性的前提下&#xff0c;提高传输效率 关于滑动窗口的属性以及部分机制推荐看TCP中窗口和滑动窗口的含义以及流量控制 拥塞控制出现的原因 看了上面推荐的博客我们已经知道了&#xff0c;由于接收方接收数据的能力有限&#xff0c;所以要通…

LLM架构自注意力机制Transformers architecture Attention is all you need

使用Transformers架构构建大型语言模型显著提高了自然语言任务的性能&#xff0c;超过了之前的RNNs&#xff0c;并导致了再生能力的爆炸。 Transformers架构的力量在于其学习句子中所有单词的相关性和上下文的能力。不仅仅是您在这里看到的&#xff0c;与它的邻居每个词相邻&…

Go语言入门指南:基础语法和常用特性(下)

上一节&#xff0c;我们了解Go语言特性以及第一个Go语言程序——Hello World&#xff0c;这一节就让我们更深入的了解一下Go语言的**基础语法**吧&#xff01; 一、行分隔符 在 Go 程序中&#xff0c;一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号 ;…

Ajax介绍

1.与服务器进行数据交换&#xff1a;通过 Ajax 可以给服务器发送请求&#xff0c;并获取服务器响应的数据。 2.异步交互&#xff1a;可以在 不重新加载整个页面 的情况下&#xff0c;与服务器交换数据并 更新部分网页 的技术&#xff0c;如&#xff1a; 搜索联想、用户名是否可…

ChatGpt开源项目完美运行配置-ChatGml2

&#xff08;以下所有软件均可免费在网盘获取。&#xff09; 任务描述 本节任务是安装和配置chatgpt项目所需的软件以及chatgpt项目所需要的python库包&#xff0c;同时编写python代码来完成chatgpt项目的人机对话功能。 实验工具 显卡GTX1070&#xff08;专用内存需要大于等…

[JavaWeb]【五】web后端开发-Tomcat SpringBoot解析

目录 一 介绍Tomcat 二 基本使用 2.1 解压绿色版 2.2 启动TOMCAT 2.3 关闭TOMCAT 2.4 常见问题 2.5 修改端口号 2.6 部署应用程序 三 SpringBootWeb入门程序解析 前言&#xff1a;tomcat与SpringBoot解析 一 介绍Tomcat 二 基本使用 2.1 解压绿色版 2.2 启动TOMCAT 2…

BOXTRADE-天启量化分析平台 系统功能预览

BOXTRADE-天启量化分析平台 系统功能预览 系统功能预览 1.登录 首页 参考登录文档 2. A股 行情与策略分析 2.1 A股股票列表 可以筛选和搜索 2.2 A股行情及策略回测 2.2.1 行情数据提供除权和前复权&#xff0c;后复权数据&#xff1b;外链公司信息 2.2.2 内置策略执行结果…