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

技术周总结 08.05-08.11周日

文章目录

  • 一、08.06 周二
    • 1.1) 问题01 mac安装 scala:
      • 1. 使用 Homebrew
      • 2. 使用 SDKMAN!
      • 其他注意事项
      • 1. 确认 Scala 安装位置
      • 2. 设置 PATH 环境变量
        • 对于 zsh (macOS Catalina 及更高版本默认使用 zsh):
        • 对于 bash (如果您使用的是 bash shell):
      • 3. 验证安装
  • 二、08.09 周五
    • 2.1)问题01: idea中回滚代码并提交到远端
    • 2.2)问题02:mac 找不到JNA库
    • 2.3) 问题03: 介绍数据流图在分层细化过程中遵循的数据平衡原则,应该怎么理解?
      • 数据平衡原则
      • 总结
    • 2.4) 问题04: 那有人说上边的数据流图的数据平衡原则如下: 层间平衡:数据流个数一致,方向一致。图内平衡:有输入无输出的黑洞,有输出无输入的奇迹,输入不足的灰洞
      • 层间平衡
      • 图内平衡
      • 示例
      • 总结

一、08.06 周二

1.1) 问题01 mac安装 scala:

要在 macOS 上安装 Scala,您可以使用几种不同的方法。以下是两种常见的安装方式:

1. 使用 Homebrew

Homebrew 是 macOS 的一个非常流行的包管理器,可以用来安装各种软件。如果您还没有安装 Homebrew,可以按照以下步骤操作:

  1. 安装 Homebrew

    • 打开 Terminal。
    • 输入以下命令来安装 Homebrew:
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
      
  2. 安装 Scala

    • 使用 Homebrew 安装 Scala:
      brew install scala
      
  3. 验证安装

    • 检查 Scala 是否已成功安装:
      scala -version
      

2. 使用 SDKMAN!

SDKMAN! 是一个用于管理多个版本的 Java/JVM 工具的命令行工具。您可以使用它来安装和管理 Scala 的不同版本。

  1. 安装 SDKMAN!

    • 打开 Terminal。
    • 输入以下命令来安装 SDKMAN!:
      curl -s "https://get.sdkman.io" | bash
      
  2. 安装 Scala

    • 安装完成后,加载 SDKMAN!:

      source "$HOME/.sdkman/bin/sdkman-init.sh"
      
    • 使用 SDKMAN! 安装 Scala:

      sdk install scala
      
  3. 验证安装

    • 检查 Scala 是否已成功安装:
      scala -version
      

其他注意事项

  • 环境变量:确保您的 PATH 环境变量包含了 Scala 的 bin 目录。通常情况下,Homebrew 和 SDKMAN! 会自动为您处理好环境变量的设置。
  • Scala 版本:如果您需要特定版本的 Scala,可以使用 SDKMAN! 的 sdk install scala <version> 命令来安装所需版本。
  • 更新 Scala:如果您需要更新 Scala 到最新版本,可以使用 sdk update scala(对于 SDKMAN! 用户)或者重新运行 brew install scala(对于 Homebrew 用户)。

完成以上步骤后,您就可以开始使用 Scala 编写程序了。如果您在安装过程中遇到任何问题,请随时告诉我,我会帮助您解决。

如果您已经安装了 Scala,但是在终端中输入 scala -version 时出现了 “command not found” 的错误,这通常意味着 Scala 的可执行文件没有添加到系统的 PATH 环境变量中。下面是解决此问题的步骤:

1. 确认 Scala 安装位置

首先确认 Scala 安装的确切位置。使用 Homebrew 安装的 Scala 通常位于 /usr/local/Cellar/scala 路径下。您可以通过以下命令查看 Scala 的安装位置:

brew info scala

这将显示 Scala 的安装信息,包括其安装的前缀。

2. 设置 PATH 环境变量

接下来,您需要将 Scala 的 bin 目录添加到 PATH 环境变量中。通常情况下,Homebrew 会在安装时自动为您处理这个步骤。如果这一步没有自动完成,您可以手动添加。

对于 zsh (macOS Catalina 及更高版本默认使用 zsh):
  1. 打开 Terminal。

  2. 使用文本编辑器打开 .zshrc 文件(如果您没有 .zshrc 文件,可以创建一个)。例如,使用 nano 编辑器:

    nano ~/.zshrc
    
  3. 在文件末尾添加以下行:

    export PATH="/usr/local/opt/scala/bin:$PATH"
    

    如果您使用的是其他编辑器,如 vimemacs,请相应地修改命令。

  4. 保存文件并退出编辑器。对于 nano,可以使用 Ctrl+X,然后按 Y 键保存更改,最后按 Enter 键退出。

  5. 让更改生效:

    source ~/.zshrc
    
对于 bash (如果您使用的是 bash shell):
  1. 使用文本编辑器打开 .bash_profile 文件。如果文件不存在,可以创建一个:

    nano ~/.bash_profile
    
  2. 在文件末尾添加以下行:

    export PATH="/usr/local/opt/scala/bin:$PATH"
    
  3. 保存文件并退出编辑器。对于 nano,可以使用 Ctrl+X,然后按 Y 键保存更改,最后按 Enter 键退出。

  4. 让更改生效:

    source ~/.bash_profile
    

3. 验证安装

现在再次尝试运行 scala -version,看看是否能够正确显示 Scala 的版本信息。

如果仍然出现问题,您可以检查 Scala 的安装路径是否正确,并确保您添加的是正确的 bin 目录到 PATH 环境变量中。如果 Scala 的安装位置不是默认位置,您需要根据实际位置调整上面的路径。

二、08.09 周五

2.1)问题01: idea中回滚代码并提交到远端

  • idea中 git记录 “回滚到此处”(先备份下 master分支)
  • 命令行界面,git push会被拒绝,直接 git push -f

但是很多公司可能会触发给大家发邮件等,毕竟这个操作比较危险

2.2)问题02:mac 找不到JNA库

确实是这个问题,mac新款使用的 arm系列芯片就需要使用 ARM芯片匹配的java8安装包,否则虽然java本身能使用,但是在 idea中使用 scala语言时会有你说的这个报错,java8-arm下载地址:https://www.oracle.com/java/technologies/downloads/#java8-mac

2.3) 问题03: 介绍数据流图在分层细化过程中遵循的数据平衡原则,应该怎么理解?

数据流图(Data Flow Diagram, DFD)是一种图形化的表示方法,用于描述系统的数据流动和处理过程。它主要用于需求分析阶段来建模系统的逻辑流程。在构建数据流图的过程中,遵循一个重要的原则叫做“数据平衡原则”。

数据平衡原则

数据平衡原则指的是,在一个数据流图中,父图(更高层次的图)与子图(更低层次的细化图)之间必须保持数据流的一致性。具体来说:

  1. 输入输出一致性

    • 在高层次的数据流图(父图)中的每个输入数据流必须在低层次的数据流图(子图)中找到对应的输入数据流。
    • 同样地,父图中的每个输出数据流也必须在子图中有对应的输出数据流。
  2. 数据流守恒

    • 进入一个处理框的数据流应该能够从该处理框以某种形式流出。也就是说,不能有无端消失或突然出现的数据流。
  3. 细化一致性

    • 当对某个处理框进行细化时,细化后的子图中的处理应该能够反映原处理框的功能,并且输入和输出数据流要保持一致。

为了更好地理解这个原则,我们可以举个例子:

假设我们有一个简单的系统,它接收用户输入并生成一份报告。在高层次的数据流图中,我们可以看到一个处理框(Process),它接收一个数据流“用户输入”并产生一个数据流“报告”。如果我们对这个处理框进行细化,那么细化后的子图中应该包含能够实现同样功能的处理步骤,同时确保所有进入的“用户输入”数据流都经过处理后变成了“报告”数据流。

总结

  • 在创建和细化数据流图时,始终需要保证输入数据流和输出数据流的平衡,这有助于确保模型的完整性和准确性。
  • 数据流图的分层细化是通过逐步分解处理过程来实现的,而数据平衡原则则是保证这一过程正确性的关键。

通过这种方式,可以确保整个系统的逻辑结构清晰、准确,便于后续的设计和开发工作。

2.4) 问题04: 那有人说上边的数据流图的数据平衡原则如下: 层间平衡:数据流个数一致,方向一致。图内平衡:有输入无输出的黑洞,有输出无输入的奇迹,输入不足的灰洞

这些术语是对数据流图(DFD)中数据平衡原则的一种形象化描述。下面我将解释这些术语的具体含义:

层间平衡

  • 数据流个数一致:这意味着在一个高层次的数据流图(父图)和它的低层次细化图(子图)之间,对于任何给定的处理框,其输入和输出数据流的个数应该是相同的。
  • 方向一致:在父图和子图中,数据流的方向也应该是相同的。如果数据流是从外部实体流向处理框,在父图中是这样,在子图中也应该如此。

图内平衡

  • 有输入无输出的黑洞:如果一个处理框只有输入数据流而没有相应的输出数据流,则称为“黑洞”。这违反了数据流图中的数据平衡原则,因为数据似乎消失了。
  • 有输出无输入的奇迹:如果一个处理框只有输出数据流而没有相应的输入数据流,则称为“奇迹”。这也违反了数据平衡原则,因为数据似乎凭空产生。
  • 输入不足的灰洞:如果一个处理框的输入数据流不足以支持其输出数据流,则称为“灰洞”。例如,如果一个处理框需要两个输入才能产生一个输出,但只接收到一个输入,那么这就构成了一个“灰洞”。

示例

假设有一个高层次的数据流图,其中包含一个处理框 P1,它接收来自实体 E1 的数据流 I1 并向实体 E2 发送数据流 O1。当我们对处理框 P1 进行细化时,我们应该确保:

  • 子图中存在一个处理框,它接收数据流 I1 并发送数据流 O1。
  • 如果在子图中进一步细化 P1,那么对于任何内部处理框,输入和输出数据流的数量和方向都应该符合上述定义。

总结

  • 层间平衡确保了高层次和低层次之间的数据流数量和方向的一致性。
  • 图内平衡则关注单个处理框内的数据流是否符合逻辑,避免出现“黑洞”、“奇迹”或“灰洞”的情况。

通过遵循这些原则,可以确保数据流图的逻辑完整性和一致性,从而帮助开发者更准确地理解和设计系统的行为。

相关文章:

技术周总结 08.05-08.11周日

文章目录 一、08.06 周二1.1) 问题01 mac安装 scala:1. 使用 Homebrew2. 使用 SDKMAN!其他注意事项1. 确认 Scala 安装位置2. 设置 PATH 环境变量对于 zsh (macOS Catalina 及更高版本默认使用 zsh):对于 bash (如果您使用的是 bash shell): 3. 验证安装 二、08.09 周五2.1&…...

B树和B+树的插入、删除

1. B树 1.1 B树的定义 树也称树&#xff0c;它是一颗多路平衡查找树。我们描述一颗树时需要指定它的阶数&#xff0c;阶数表示了一个结点最多有多少个孩子结点&#xff0c;用字母表示阶数。当取时&#xff0c;就是我们常见的二叉搜索树。 一颗阶的树定义如下&#xff1a; 每…...

Axios网络请求总结

在实际项目开发中&#xff0c;前端页面所需要的数据往往需要从服务器端获取&#xff0c;这必然涉及与服务器的通信。Axios 是一个基于 promise 网络请求库&#xff0c;作用于node.js 和浏览器中。Axios 在浏览器端使用XMLHttpRequests发送网络请求&#xff0c;并能自动完成JSON…...

立仪科技光谱共焦应用之金属隔膜静态重复性测量

01&#xff5c;检测需求&#xff1a;金属隔膜重复性测量 02&#xff5c;检测方式 为了保证精度&#xff0c;首先先用千分尺进行测量&#xff0c;得出相应的厚度数据&#xff0c;在选择合适的侧头&#xff0c;根据结果&#xff0c;我们现在立仪科技H4UO控制器搭配D27A20侧头 03&…...

vue3实现video视频+弹幕评论

vue3实现视频加评论 之前写了一篇博客使用了弹幕插件http://t.csdnimg.cn/616mlvue3 使用弹幕插件&#xff0c;今天对这个页面进行了升级 变成了 vue3使用video 这个没有使用插件&#xff0c;昨天看了好多&#xff0c;没发现有用的插件&#xff0c;下载了几个都没办法使用就用…...

STM32-OTA升级

一、OTA&#xff08;Over-The-Air&#xff09; OTA&#xff08;Over-The-Air&#xff09;是一种通过无线通信方式&#xff0c;为设备分发新软件、配置甚至更新加密密钥的技术。它允许中心位置向所有用户发送更新&#xff0c;确保每个接收者都无法拒绝、破坏或改变这些更新&…...

一种JSON多态表示法

介绍 假设现在需要实现一种功能: 从某个远程的组件(消息队列或远程文件)拉取最后几条记录做一个展示. 需要支持如下的组件: Kafka RocketMQ OSS 假设还有很多, 这里不列了 … 显然, 每种组件需要的参数各不一样, 那么此时如何使用一个统一的结构来表达这些组件的参数呢?…...

C语言实现单链表

一、什么是单链表 1.链表就是一种在物理存储上各个节点非连续的&#xff0c;随机的&#xff0c;元素的逻辑顺序是通过链表中的指针链接的次序而实现的。 图示&#xff1a; 二、单链表中节点的定义 #include<stdio.h> #include<stdlib.h> #include<string.h>…...

循环神经网络三

一.介绍 在普通的神经网络中&#xff0c;信息的传递是单向的&#xff0c;这种限制虽然使得网络变得更容易学习&#xff0c;单在一定程度上也减弱了神经网络模型的能力。特别是在现实生活中&#xff0c;网络的输出不仅和当前时刻的输入相关&#xff0c;也过去一段时间的输出相关…...

优购电商小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;商品分类管理&#xff0c;商品信息管理&#xff0c;留言板管理&#xff0c;订单管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;商品信息&#xf…...

【ARM】v8架构programmer guide(4)_ARMv8的寄存器

目录 4.4Endianness&#xff08;端序或字节序&#xff09; 4.5 改变execution state 4.5.1 Registers at AArch32 4.5.2 PSTATE at AArch32 4.6 NEON 和浮点数寄存器 4.6.1 AArch64中浮点寄存器的组织结构 4.6.2 标量寄存器大小 4.6.3 向量寄存器大小 4.6.4 NEON在AArc…...

Java设计模式详细讲解

目录 设计模式概述 1.1 什么是设计模式1.2 设计模式的类型1.3 设计模式的历史与发展1.4 设计模式在软件开发中的重要性 创建型模式 2.1 单例模式2.2 工厂方法模式2.3 抽象工厂模式2.4 建造者模式2.5 原型模式 结构型模式 3.1 适配器模式3.2 装饰器模式3.3 代理模式3.4 外观模…...

图论------弗洛伊德(Floyd-Warshall)算法

题目描述&#xff1a; 在每年的校赛里&#xff0c;所有进入决赛的同学都会获得一件很漂亮的 T-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候&#xff0c;却是非常累的&#xff01;所以现在他们想要寻找最短的从商店到赛场的路线&#xff0c;你可以帮助…...

C#实现动画效果

在C#中&#xff0c;实现动画效果通常可以使用Windows Forms的Timer类或者使用System.Windows.Media.Animation命名空间下的类&#xff08;如果是WPF应用&#xff09;。以下是一个Windows Forms应用中使用Timer类来创建简单的动画效果的例子。 假设我们有一个窗体&#xff08;F…...

Git 对比 SVN 的区别和优势

引言 版本控制系统&#xff08;VCS&#xff09;是软件开发过程中不可或缺的一部分&#xff0c;它们用于管理代码的变更、协调开发团队的工作。Git 和 SVN&#xff08;Apache Subversion&#xff09;是目前最流行的两个版本控制系统。本文将详细分析 Git 和 SVN 的区别及各自的…...

Qt实现无边框窗口的拖动和缩放

在使用QT创建窗体的时候&#xff0c;为了使窗口美化&#xff0c;通常不使用QT自带的边框。会调用下面函数去除窗体边框。 setWindowFlags(Qt::FramelessWindowHint) 但是有个问题&#xff0c;当去除了QT自带边框后&#xff0c;窗体就变得不能移动了&#xff0c;也不能改变窗口大…...

入门岛2-python实现wordcount并进行云端debug

书生大模型学习 任务&#xff1a; 1.实现一个wordcount函数&#xff0c;统计英文字符串中每个单词出现的次数。返回一个字典&#xff0c;key为单词&#xff0c;value为对应单词出现的次数。 2.Vscode连接InternStudio debug TIPS&#xff1a;记得先去掉标点符号,然后把每个单词…...

c语言-链表1

10 链表 一、链表是什么&#xff1f; -- 数据的一种存储方式 -- 链式存储 &#xff08;1&#xff09;线性存储 -- 地址连续 -- 自动开辟&#xff0c;自动释放 -- 默认是线性存储 &#xff08;2&#xff09;链式存储 -- 地址不连续…...

你好! Git——企业级开发模型

企业级开发模型&#xff08;6&#xff09; 一、删除远程分支&#xff0c;git branch -a &#xff08;查看所有本地分支与远程分支&#xff09;还能看到已经删除的分支&#xff0c;怎么解决&#xff1f;二、企业级开发流程2.1 企业级开发流程2.2 系统开发环境 三、Git分支设计模…...

力扣面试150 查找和最小的 K 对数字 最小堆 去重

Problem: 373. 查找和最小的 K 对数字 &#x1f468;‍&#x1f3eb; 参考题解 class Solution {public List<List<Integer>> kSmallestPairs(int[] nums1, int[] nums2, int k) {// 创建一个大小为 k 的结果列表&#xff0c;用于存储和最小的 k 个数对List<Li…...

Oceanbase 执行计划

test100 CREATE TABLE `test100` ( `GRNT_CTR_NO` varchar(32) COLLATE utf8mb4_bin NOT NULL COMMENT 担保合同编号, `GRNT_CTR_TYP` varchar(3) COLLATE utf8mb4_bin NOT NULL COMMENT 担保合同类型, `COLC_GRNT_IND` varchar(1) COLLATE utf8mb4_bin DEFAULT NULL …...

精品丨模型关系介绍

PowerBI中的模型关系相信小伙伴们都不会感觉到陌生&#xff0c;因为一份优秀的报表无法离开数据模型的支撑。 对比其它BI类工具而言&#xff0c;白茶认为其建模功能才是最为突出的功能点。 模型关系类型 PowerBI中我们常用的模型关系一共包含5类&#xff1a; 一对一关系(1:1) …...

CentOS7 配置 nginx 和 php 方案

配置方案 一、安装软件二、编写配置文件&#xff0c;连接PHP三、引用文件四、测试 鉴于网上教程错综复杂&#xff0c;写下一这篇文章 本教程只需要三步即可 一、安装软件 yum install -y nginx php php-fpm二、编写配置文件&#xff0c;连接PHP 一般情况下在安装完 nginx 后…...

Promise.all全面解析:使用方法与实战技巧

Promise是JavaScript中处理异步操作的重要机制&#xff0c;它提供了一种优雅的方式来处理异步回调&#xff0c;避免了传统回调地狱的问题。而Promise.all作为Promise的一个静态方法&#xff0c;更是在处理多个异步操作时发挥着关键作用。本文将全面解析Promise.all的使用方法&a…...

NLP从零开始------9文本进阶处理之文本相似度计算

1.文本相似度计算简介 在自然语言处理中&#xff0c;经常会涉及度量两个文本相似度的问题。在诸如对话系统和信息减速等中&#xff0c;度量句子或短语之间的相似度尤为重要。在新闻学传媒中应用文本相似度可以帮助读者快速检索到想要了解的报道。 文本相似度的定义式如下所示&a…...

Electron 在 MAC 上的 build 签名应用配置

Electron 在 MAC 上的 build 签名应用配置涉及多个步骤,包括准备开发者账号、生成证书和配置文件、配置环境变量以及使用适当的工具进行签名和公证。以下是一个详细的配置流程: 一、准备开发者账号 首先,你需要在 Apple 开发者网站 注册并拥有一个开发者账号。这个账号将用…...

15 交换机命令行配置

交换机命令行配置 一、交换机命令行基本配置 &#xff08;一&#xff09;配置主机名 Switch>enable Switch#configure terminal Switch(config)#hostname S1&#xff08;二&#xff09;查看配置信息 Switch#show running-config Building configuration...Current confi…...

工作流之Flowable与SpringBoot结合

文章目录 1 Flowable1.1 flowable-ui部署运行1.2 绘制流程图1.2.1 绘制1.2.2 绘图细节1.2.3 bpmn文件导入 1.3 后台项目搭建1.3.1 pom.xml1.3.2 数据库表说明 1.4 流程引擎API与服务1.4.1 主要API1.4.2 示例 1 Flowable 1.1 flowable-ui部署运行 flowable-6.6.0 运行 官方dem…...

python实战:数据分析基础知识

当涉及到数据分析和统计建模时&#xff0c;Python 提供了强大的工具和库&#xff0c;如 pandas、numpy、statsmodels 和 matplotlib。本文将以一个实际的案例为例&#xff0c;介绍如何利用这些工具进行回归分析&#xff0c;并通过可视化工具进行结果展示和解释。 1. 背景介绍 …...

Grafana深入讲解

Grafana 深入讲解 目录 概述Grafana 基本概念 2.1 Grafana 简介2.2 Grafana 功能特性2.3 Grafana 架构 Grafana 安装与配置 3.1 安装 Grafana3.2 配置 Grafana3.3 验证 Grafana 安装 Grafana 数据源 4.1 支持的数据源类型4.2 添加数据源4.3 配置 Prometheus 数据源 Grafana 仪…...