架构设计笔记-20-补充知识

知识产权

我国没有专门针对知识产权制定统一的法律(知识产权法),而是在民法通则规定的原则下,根据知识产权的不同类型制定了不同的单项法律及法规,如著作权法、商标法、专利法、计算机软件保护条例等,这些法律、法规共同构成了我国保护知识产权的法律体系。

根据《中华人民共和国著作权法》第十二条规定,改编、翻译、注释、整理已有作品而产生的作品,其著作权由改编、翻译、注释、整理人享有,但行使著作权时不得侵犯原作品的著作权。 

著作权包括人身权财产权。其中,人身权包括发表权、署名权、修改权和保护作品完整权。复制权、出租权和发行权均属于财产权。 

根据《著作权法》第十八条,报社、期刊社、通讯社、广播电台、电视台的工作人员创作的职务作品,除特定情况外,著作权的其他权利由法人或组织享有,作者仅享有署名权。 

根据《中华人民共和国商标法》第五十七条,有下列行为之一的,均属侵犯注册商标专用权

(一)未经商标注册人的许可,在同一种商品上使用与其注册商标相同的商标的

(二)未经商标注册人的许可,在同一种商品上使用与其注册商标近似的商标,或者在类似商品上使用与其注册商标相同或者近似的商标,容易导致混淆的;

(三)销售侵犯注册商标专用权的商品的;

(四)伪造、擅自制造他人注册商标标识或者销售伪造、擅自制造的注册商标标识的;

(五)未经商标注册人同意,更换其注册商标并将该更换商标的商品又投入市场的;

(六)故意为侵犯他人商标专用权行为提供便利条件,帮助他人实施侵犯商标专用权行为的;

(七)给他人的注册商标专用权造成其他损害的。 

根据《软件产品管理办法》第四条,软件产品的开发、生产、销售、进出口等活动应遵守我国有关法律、法规和标准规范。任何单位和个人不得开发、生产、销售、进出口含有以下内容的软件产品:

(一)侵犯他人知识产权的;

(二)含有计算机病毒的;

(三)可能危害计算机系统安全的;

(四)含有国家规定禁止传播的内容的;

(五)不符合我国软件标准规范的。 

法律法规

我国标准根据适用范围分类,分为国家标准、行业标准、地方标准和企业标准等四类;根据标准的法律约束性可分为强制性标准和推荐性标准:标准的编号由标准代号、标准发布顺序号和标准发布年号构成。

(1) 国家标准的代号由大写汉语拼音字母构成,强制性国家标准代号为GB,推荐性国家标准的代号为GB/T。

(2) 行业标准代号由汉字拼音大写字母组成,再加上斜杠T组成推荐性行业标准(如××/T)。行业标准代号由国务院各有关行政主管部门提出其所管理的行业标准范围的申请报告,国务院标准化行政主管部门审查确定并正式公布该行业标准代号。已正式公布的行业代号有QJ(航天)、SI(电子)、JB(机械)和JR(金融)等。

(3) 地方标准代号由大写汉字拼音DB加上省、自治区、直辖市行政区划代码的前两位数字(如北京市11、天津市12、上海市31等),再加上斜杠T组成推荐性地方标准DB××/T不加斜杠T为强制性地方标准,如DB××

(4) 企业标准的代号由汉字大写拼音字母Q加斜杠再加企业代号组成(如Q/×××),企业代号可用大写拼音字母或阿拉伯数字,或者两者兼用所组成。 

 

新技术

数字孪生体的三项核心技术:建模、仿真、基于数据融合的数字线程。 

RMS(Rate Monotonic Scheduling)调度算法根据任务周期确定优先级,周期越短,优先级越高。 详见架构设计笔记-16-嵌入式系统架构设计理论与实践

与传统数据库相比,嵌入式数据库系统有以下几个主要特点:

  1. - 嵌入式:嵌入式是嵌入式数据库的基本特性。嵌入式数据库不仅可以嵌入到其他的软件当中,也可以嵌入到硬件设备当中。
  2. - 实时性:实时性和嵌入式是分不开的。只有具有了实时性的数据库才能够第一时间得到系统的资源,对系统的请求在第一时间内做出响应。但是,并不是具有嵌入式就一定具有实时性。要想嵌入式数据库具有很好的实时性,必须做很多额外的工作。
  3. - 移动性:移动性是目前在国内提得比较多的一个说法,这和目前国内移动设备的大规模应用有关。可以这么说,具有嵌入式的数据库一定具有比较好的移动性,但是具有比较好的移动性的数据库,不一定具有嵌入式。
  4. - 伸缩性:伸缩性在嵌入式场合显得尤为重要。首先嵌入式场合硬件和软件的平台都是千差万别,基本都是客户根据需要自己选择的结果。

嵌入式数据库中,SQLite和Berkeley DB是文件型数据库Firebird是网络型数据库,eXtremeDB则是内存型数据库。Oracle是大型数据库,不是嵌入式数据库。(官方教材第二版P565) 

宏内核和微内核的主要区别在于它们的架构和设计哲学。宏内核将所有系统服务(包括设备驱动程序、内存管理、进程管理等)都集成在单一的内核空间中,这通常能提供较高的性能,但降低了模块化和可维护性。相反,微内核只包含最基本的操作系统服务(如进程调度和通信),将其他服务(如设备驱动程序)放在用户空间或作为服务器进程运行,这提供了更高的模块化和安全性,但可能牺牲一些性能。 在微内核架构中,由于大部分系统服务都运行在用户空间,进程间通信(IPC)通常通过消息传递机制来实现。这种机制允许进程通过发送和接收消息来进行通信,而不需要直接访问对方的内存空间,从而提高了系统的安全性和模块化。 

边缘计算的特点包括联接性、数据第一入口、约束性和分布性。实时性虽然是边缘计算的一个重要优势,但不是其特点的定义之一。(官方教材第二版P386)

边缘计算与云计算的协同包括资源协同、数据协同、智能协同、应用管理协同、业务管理协同和服务协同。网络安全协同不是直接列举的协同方面。(官方教材第二版P386)

信息物理系统(CPS)通过集成先进的感知、计算、通信、控制等信息技术和自动控制技术,构建了物理空间与信息空间中人、机、物、环境、信息等要素相互映射、适时交互、高效协同的复杂系统,实现系统内资源配置和运行的按需响应、快速迭代、动态优化。(官方教材第二版P369) 

人工智能的关键技术包括自然语言处理、计算机视觉、知识图谱、人机交互和机器学习等,不包括区块链。(官方教材第二版P376)         

专业英语

A system's architecture is a representation of a system in which there is a mapping of functionality onto hardware and software components, a mapping of the (请作答此空) onto the hardware architecture, and a concern for the human interaction with these components. That is, system architecture is concerned with a total system, including hardware, software, and humans. Software architectural structures can be divided into three major categories, depending on the broad nature of the elements they show. 1) (请作答此空) embody decisions as a set of code or data units that have to be constructed or procured. 2) (请作答此空) embody decisions as to how the system is to be structured as a set of elements that have runtime behavior and interactions. 3) (请作答此空) embody decisions as to how the system will relate to nonsoftware structures in its environment (such as CPUs, file systems, networks, development teams, etc.). 

系统架构是一个系统的一种表示,包含了功能到软硬件构件的映射、软件架构到硬件架构的映射以及对于这些组件人机交互的关注。也就是说,系统架构关注于整个系统,包括硬件、软件和使用者。软件架构结构根据其所展示元素的广义性质,可以被分为三个主要类别。①模块结构将决策体现为一组需要被构建或采购的代码或数据单元。②构件连接器结构将决策体现为系统如何被结构化成为一组具有运行时行为和交互的元素。③分配结构将决策体现为系统如何在其环境中关联到非软件结构,如CPU、文件系统、网络、开发团队等。

During the systems analysis phase, you must decide how data will be organized, stored, and managed. A data structure is a framework for organizing, storing, and managing data. Each file or table contains data about people, places, things, or events. One of the potential problems existing in a file processing environment is data redundency, which means that data common to two or more information systems is stored in several places. In a DBMS, the linked tables form a unified data structure that greatly improves data quality and access. A(n) entity-relationship diagram is a model that shows the logical relationships and interaction among system entities. It provides an overall view of the system and a blueprint for creating the physical data structures. Normalization is the process of creating table designs by assigning specific fields or attributes to each table in the database. A table design specifies the fields and identifies the primary key in a particular table or file. The three normal forms constitute a progression in which third nomal form represents the best design. Most business - related data bases must be designed in that form.

在系统分析阶段,必须决定如何组织、存储和管理数据。数据结构是组织、存储和管理数据的一个框架。每个文件或表都包含有关人物、地点、事物或事件的数据。文件处理环境中存在的潜在问题之一是数据冗余,这意味着两个或多个信息系统共用的数据存储在多个不同位置。 在数据库管理系统(DBMS)中,相互连接的表形成了一个统一的数据结构,极大地提高了数据质量和访问能力。实体关系图是显示系统实体之间的逻辑关系和交互的模型。它提供了系统的总体视图和用于创建物理数据结构的蓝图。规范化是通过为数据库中的每个表分配特定字段或属性来创建表设计的过程。表设计指定字段并标识特定表或文件中的主键。三种范式构成了一个渐进过程,其中第三范式代表了好的设计。大部分与业务相关的数据库都必须以这种形式设计。

System analysis is traditionally done top - down using structured analysis based on functional decomposition. Object - oriented analysis focuses on creation of models. The three types of the analysis model are class model / interaction model / state model. There are two substages of object - oriented analysis. Domain analysis focuses on real - world things whose semantics the application captures. The object constructedin the requirement analysis shows the static structure of the real - world system and organizes it intoworkable pieces. Application analysis addresses the computer aspects of the applicati on that are visible tousers. The objects are those which can be expected to vary from time to time quite rapidly.

传统的系统分析以功能分解为基础,利用结构化分析自顶向下完成。面向对象分析关注于模型的创建。该分析模型有三种类型:类模型、交互模型和状态模型。面向对象分析有两个子阶段。领域分析侧重于现实世界中那些语义被应用程序获取的事物。在需求分析中所构造的对象说明了现实世界系统的静态结构并将其组织为可用的片段。应用分析处理应用系统中用户可见的计算机问题。所分析的对象可能会被预计时不时地发生较快的变化。

A simple but essential architectural style used in high - quality architecture involves the separation of the domain and technical building blocks, according to the tenets of Quasar (Quality - Driven Software Architecture). Business building blocks are those that contain source code for the application domain, such as business rules, calculations, validations, and so on. Technical building blocks s olve purely technical problems, such as database connections, user interfaces, and so on. The basic principle of this architec tural style is that each building block contained in an architecture may only be responsible for either of these two aspects. This s eparation is postulated by Quasar because the domain and technical aspects of software systems usually have very different change cycles. If this separation can be maintained, the result will be a well modularized system. This Quasar - based idea became manageable with the introduction of “blood types” for software components. I think this mode l has not really become established because the blood - type analogy for software is pretty far-fetched. Nevertheless, this style pro vides some very important hints that should be obvious to every software architect.

根据Quasar(质量驱动软件架构)的原则,高质量架构中使用的一种简单但必不可少的架构风格涉及领域和技术构建块的分离。业务构建块是包含应用程序域源代码的构建块,如业务规则、计算、验证等。技术构建块解决纯粹的技术问题,如数据库连接、用户界面等。这种架构风格的基本原则是,架构中包含的每个构建块可能只负责这两个方面中的任何一个。这种分离是由Quasar提出的,因为软件系统的领域和技术方面通常具有非常不同的变更周期。如果能够保持这种分离,结果将是一个模块化良好的系统。 随着软件组件“血型”的引入,这种基于Quasar的想法变得易于管理。我认为这个模型还没有真正建立起来,因为软件的血型类比是相当牵强的。然而,这种风格提供了一些对每个软件架构师来说都应该显而易见的非常重要的提示。

The core purpose of architecture design is to ascertain the allocation of application software segments to respective hardware platforms. T his necessitates the identification of the key software components under development, followed by their assignment to the div erse hardware elements upon which the system will reside. All software systems can be categorized into four fundamental rol es. The initial role pertains to data storage. The majority of information systems necessitate the storage and retrieval of data, be it a miniscule file, akin to a word processor's memo, or an extensive database housing an organization's financial records. The su bsequent function is the data access logic, encompassing the procedures necessary for data access, often executed through Structured Query Language database queries. The third function revolves around the application logic, which encapsulates the logic articulated in DFDs, use cases, and functional specifications. Lastly, the presentation logic oversees the display of information to the user a nd the reception of user commands. The three fundamental hardware constituents of a system encompass clientsservers and network.

系统架构的核心目的是架构设计,以确定应用软件的哪些部分将被分配给哪些硬件。这需要对正在开发的系统的主要软件组件进行识别,然后将它们分配给系统将在其上运行的各种硬件。所有软件系统都可以分为四个基本角色。第一个角色涉及数据存储。大多数信息系统都需要存储和检索数据,无论是小到如文字处理器产生的备忘录文件,还是大到如存储组织会计记录的大型数据库。接下来的功能是数据访问逻辑,包括访问数据所需的过程,这通常通过结构化查询语言(SQL)的数据库查询来执行。第三个功能围绕应用逻辑展开,它封装了在数据流图(DFD)、用例和功能需求中阐述的逻辑。最后,表示逻辑负责向用户显示信息并接收用户的命令。系统的三个基本硬件组成部分包括客户端、服务器和网络

 

In the context of designing robust and adaptable software systems, one of the key principles is the separation of concerns bet ween the domain and infrastructure aspects of the system. According to the principles of Domain - Driven Design (DDD), the core domain logic, wh ich includes business rules, processes, and data manipulation, should be separated from the technical? functionalities, such as data persistence, user interface, and external services integration. This separation ensures that the core domain logic remains f ocused and free from the complexities of infrastructure concerns. By adhering to this principle, developers can achieve a syst em that is more loosely coupled?, allowing for easier maintenance, scalability, and adaptability to changing requirements. However, impl ementing this separation effectively requires a clear understanding of the domain and technical boundaries, as well as the abil ity to define these boundaries in a way that minimizes coupling and maximizes cohesion. Despite the challenges, this approac h has been proven in many successful software projects.

在设计稳健且适应性强的软件系统时,一个关键原则是系统领域和技术方面之间的分离。根据领域驱动设计(DDD)的原则,核心领域逻辑(包括业务规则、流程和数据操作)应与基础设施功能(如数据持久化、用户界面和外部服务集成)分离。这种分离确保了核心领域逻辑保持专注,不受基础设施复杂性的影响。通过遵循这一原则,开发人员可以实现一个更加模块化的系统,从而更容易维护、扩展,并适应需求的变化。然而,有效实施这种分离需要对领域和技术边界有清晰的理解,以及在减少耦合和最大化内聚的同时明确定义这些边界的技能。尽管存在挑战,这种方法已在许多成功的软件项目中得到了验证。

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

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

相关文章

STM32_实验5_中断实验

通过外部中断来检测四个按键按下的状态: WK_UP 控制蜂鸣器响和停 KEY0 控制 LED_R 互斥点亮 KEY1 控制 LED_G 互斥点亮 KEY2 控制 LED_B 互斥点亮。 中断的基本概念: 中断请求(IRQ): 当发生某个特定事件(例…

【问题解决】——当出现0xc000007b和缺少mfc140.dll时,该怎么做才能让软件可以打开

目录 事情起因 问题处理 明确定义 填坑之路 最后我是怎么解决的(不想看故事直接到这里) 事情起因 最近想要重新安装西门子博途来做西门子的一些算法的时候,发现自己软件装的是V15.1的版本,而买的plc1200固件版本要求至少16以…

(AtCoder Beginner Contest 375)D - ABA

(AtCoder Beginner Contest 375)D - ABA 题目大意 给定一个只包含大写字母的字符串S,求解其长度为3的回文字序列个数 思路 首先暴力枚举区间计算答案 O ( ∣ S ∣ 2 ) O(|S|^2) O(∣S∣2) 一定是会超时的 我们考虑使用前缀和思想 我们对于…

两个yaml转成的 excel对比

语言本地化过程中 ,yaml转成excel格式给翻译人员使用,翻译好之后再转换成yaml格式给游戏使用。但是在翻译人员编辑时是不可控的,有可能造成某种想不到的问题。因此,需要将翻译人员的excel转成yaml ,再将yaml转成excel和翻译人员的…

特征编码:假如是树模型,还需要特征编码吗?

如果使用树模型,不一定需要进行传统的特征编码,具体取决于特征的性质和数据的情况。 一、不需要编码的情况 对于纯数值型特征:树模型可以直接处理数值型特征,无需进行编码。例如,如果特征是年龄、收入等连续数值&…

智能工厂的设计软件 表征论的三向度空间(意向相关项)

本文要点 在 最高级别上的数学诠释学观点中表征论的三向度空间( 三个意向相关relative项引用) “表征模式张量 空间--一般量化词【词典词】: 产品生产线程thread中最后的 “封装”的生产任务--以主取式存在分类学 划分的 “Package”中唯…

文本数据可视化

文字是传递信息最常用的载体。在当前这个信息爆炸的时代,人们接收信息的速度已经小于信息产生的速度,尤其是文本信息。当大段大段的文字摆在面前,已经很少有耐心去认真把它读完,经常是先找文中的图片来看。这一方面说明人们对图形的接受程度比枯燥的文字要高很多,另一方面…

推荐IDE中实用AI编程插件,目前无限次使用

插件介绍 一款字节跳动推出的“基于豆包大模型的智能开发工具” 以vscode介绍【pycharm等都可以啊】,这个插件提供智能补全、智能预测、智能问答等能力,节省开发时间 直接在IDE中使用,就不用在网页中来回切换了 感觉还可以,响应速…

SelectFromModel:如何调整阈值来控制特征选择的数量?

在使用SelectFromModel结合如梯度提升决策树(GBDT)等模型进行特征选择时,可以通过以下几种方式调整阈值来控制选择的特征数量: 一、设置阈值参数(以基于特征重要性为例) 对于一些模型,如基于树…

【SQL实验】 设计主码、check约束 、外码(SSMS 菜单操作)

设计主码 PK——主码 右键点击所需的表,选择“设计”。 选择需要作为主键的列,右键点击并选择“设为主键”。 保存更改,确保主键设置生效。 如果出现下图: 解决方式: 把√取消掉,修改后: 确定…

告别ELK,APO提供基于ClickHouse开箱即用的高效日志方案——APO 0.6.0发布

ELK一直是日志领域的主流产品,但是ElasticSearch的成本很高,查询效果随着数据量的增加越来越慢。业界已经有很多公司,比如滴滴、B站、Uber、Cloudflare都已经使用ClickHose作为ElasticSearch的替代品,都取得了不错的效果&#xff…

【Echarts 实战指南】解锁动态历史曲线之谜

在工作中,大家是否曾遇到过这样一种需求呢?需获取设备最近 10 分钟的历史数据。设备实时数据每 2 秒推送一次,且要把历史数据曲线变成动态变化的状态。倘若设备最近 10 分钟的历史数据为 20 个点,那么现在每 2 秒就要将最前面的点…

计算机毕业设计Python深度学习房价预测 房源可视化 房源爬虫 二手房可视化 二手房爬虫 递归决策树模型 机器学习 深度学习 大数据毕业设计

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 房地产是促进我国经济持续增…

车辆管理新篇章:SpringBoot技术解析

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

电感的学习

电感是表示电路中电流变化对电压影响的物理量,常用符号 LLL 表示。电感的基本公式可以从其定义和基本特性中得出,主要包括以下几个方面: 1. 电感的定义 2. 电感能量存储 3. 自感与互感 自感:电感器自身的电感,表示电…

Kubescape 扫描和修复容器镜像漏洞

引言 在当今的云原生环境中,容器安全至关重要。容器镜像可能存在各种安全漏洞,如果不加以识别和修复,可能会被攻击者利用,给系统带来严重的安全风险。本文将介绍如何使用 Kubescape 这一强大的开源 Kubernetes 安全平台来扫描和修复容器镜像中的漏洞。 Kubescape 简介 Kubes…

stata基本操作

文章目录 数据导入及存储变量的标签、审视数据变量的标签审视数据数据删除数据排序 画图直方图使用帮助文件散点图 统计分析描述性分析频数分析相关分析 生成新变量、计算器、终止命令生成新变量设置哑变量修改变量名更改变量内容调用命令和终止命令 日志命令库更新、学习资源 …

Shell脚本:模块引用

Shell脚本:模块引用 目录 引言Shell脚本模块化的重要性基本的模块引用方法 3.1 使用source命令 3.2 使用点号(.)操作符创建和组织模块 4.1 函数模块 4.2 变量模块 4.3 常量模块高级模块引用技巧 5.1 相对路径和绝对路径 5.2 动态模块加载 5…

从零开始学PHP之helloworld

前言 每一门编程语言的第一个程序就是输出hell world(别杠,杠就是你对) 开始 上一篇讲完了开发环境的安装,这次讲编辑器的安装,顺带完成上一篇的作业(输出hello world) 安装PHPstorm 我用的…

基于SpringBoot+Vue的旅游服务平台【提供源码+答辩PPT+参考文档+项目部署】

💥 ① 前言:这两年毕业设计和毕业答辩的要求和难度不断提升,传统的JavaWeb项目缺少创新和亮点,往往达不到毕业答辩的要求! ❗② 如何解决这类问题? 让我们能够顺利通过毕业,我也一直在不断思考、…