A002-185-2531

目录
第一页作业 2
1.1验收承认(acceptance) 2
1.2要求需要(requirement) 5
1.3最初形态(Prototype) 6
1.4Model(模型) 7
1.5异义词(Homonym) 8
1.6检查(Inspection) 8
1.7敏捷式项目管理(Agile project management) 9
1.8特征(Feature) 10
1.9实体(Entity) 12
1.10错误(Error) 14
第二页作业 15
2.1实现视图(implementation view) 15
2.2增量开发(incremental development) 15
2.3交互图(interaction diagram) 17
2.4内部交易(internal transaction) 17
2.5互交发展(interative development) 18
2.6逻辑视图(logical view) 19
2.7模型元素(model element) 21
2.8多重分类(multiple classification) 21
2.9多重继承(multiple inheritance) 22
2.10第n范式(n-ary association) 24
第三页作业 25
3.1活动(Activities) 25
3.2链接(Connection) 28
3.3合并(Merge) 33
3.4同步(synchronization) 34
3.5行为模型方面(behavioral model aspect) 35
3.6关联结束(association end) 39
3.7二进制关联(binary association) 39
3.8合议图(collanoration diagram) 40
3.9部署图(deployment diagram) 41
3.10控制焦点(focus of control) 42
第四页作业 42
4.1一般化(generalization) 42
4.2执行(implementation) 43
4.3继承(inheritance) 43
4.4接口(interface) 44
4.5元模型(metamodel) 44
4.6模块(module) 45
4.7多样性(multiplicity) 46
《需求工程——软件建模与分析》读后感: 46
图书销售系统项目的发展建议: 47
1、 在开发的时候要尽可能的编写文档,保证项目在之后可以维护且发展 47
2、 要注重数据的安全问题,保证用户信息安全。 47
3、 完善界面增强用户体验。 47

第一页作业
1.1验收承认(acceptance)
【解释】
the action of consenting to receive or undertake something offered.“charges involving the acceptance of bribes” · “an acceptance speech” · “he had an acceptance from the magazine”
同意接受或接受所提供的东西的行为。“涉及受贿的指控”·“受贿演讲”·“他接受了杂志社的采访”

【链接】
https://blogs.psychcentral.com/cultivating-contentment/2020/02/16-ways-to-practice-radical-acceptance/
https://www.amazon.com/Gifts-Acceptance-Embracing-People-Things/dp/0982893051
https://www.acceptancenow.com/RACA-ePay/RACA-Secure-ePay.html?WT.z_position=head&WT.z_content=ePay

【正文】
How to Practice Acceptance for Mindfulness
Acceptance turns out to be one of the most helpful attitudes to bring to mindfulness. Acceptance means perceiving your experience and simply acknowledging it rather than judging it as good or bad. For some people, the word ‘acceptance’ is off-putting – replace it with the word ‘acknowledgement,’ if you prefer.

For example, when you feel pain, whether it’s physical, such as a painful shoulder, or mental, such as depression or anxiety, the natural reaction is to try to avoid feeling the pain. This seems very sensible because the sensation of physical or mental pain is unpleasant. You ignore it, distract yourself, or perhaps even go so far as turning to recreational drugs or alcohol to numb the discomfort.

This avoidance may work in the immediate short term, but before long, avoidance fails in the mental and emotional realm.

You still feel the pain, but on top of that, you feel the emotional hurt and struggle with the pain itself. Buddha called this the ‘second arrow.’ If a warrior is injured by an arrow and unleashes A thought like ‘why did this happen to me,’ that’s a ‘second arrow.’

You may inflict this on yourself each time you feel some form of pain or even just a bit of discomfort, rather than accepting what has happened and taking the next step. Avoidance – running away – is an aspect of the ‘second arrow’ and compounds the suffering. Acceptance means stopping fighting with your moment-to-moment experience. Acceptance removes that second arrow of blame, criticism or denial.

Perhaps you sit down to meditate and feel bombarded by thoughts dragging you away again and again. If you don’t accept the fact that your mind likes thinking, you become more and more frustrated, upset and annoyed with yourself. You want to focus on the meditation but just can’t.

In the above example:

First arrow – lots of thoughts entering your mind during meditation.

Second arrow – not accepting that thoughts are bound to come up in meditation. Criticizing yourself for having too many thoughts.

Solution – to acknowledge and accept that thoughts are part and parcel of meditation. You can do this by gently saying to yourself ‘thinking is happening’ or ‘it’s natural to think’ or simply labeling it as ‘thinking…thinking.’

By acknowledging the feeling, thought or sensation and going into it, the experience changes. Even with physical pain, try experimenting by actually feeling it. Research has found that the pain reduces. But remember, you’re not acknowledging it to get rid of the feeling. That’s not acceptance. You need to acknowledge the sensation, feeling or thought without trying to change it at all. Pure acceptance of it, just as it is.

One way to relax into the discomfort is by courageously turning to the sensation of discomfort, and simultaneously feeling the sensation of your own breath. With each out-breath, allow yourself to move closer and soften the tension around the discomfort.

If all this acceptance or acknowledgement of your pain seems impossible, just try getting a sense of it and make the tiniest step towards it. The smallest step towards acceptance can set up a chain of events ultimately leading towards transformation. Any tiny amount of acceptance is better than none at all.

Another aspect of acceptance is to come to terms with your current situation. If you’re lost, even if you have a map of where you want to get to, you have no hope of getting there, if you don’t know where you are to start with.

You need to know and accept where you are before you can begin working out how to get to where you want to be. Paradoxically, acceptance is the first step for any radical change. If you don’t acknowledge where you are and what’s currently happening, you can’t move on appropriately from that point.

【翻译】
被证明是对正念最有帮助的态度之一。接受意味着感知你的经历并简单地承认它,而不是判断它是好是坏。对某些人来说,“接受”这个词让人厌烦——如果你愿意,就用“承认”代替。
例如,当你感到疼痛时,不管是身体上的疼痛,比如肩膀的疼痛,还是精神上的,比如抑郁或焦虑,自然的反应就是尽量避免感觉到疼痛。这看起来很合理,因为身体或精神上的疼痛是不愉快的。甚至是为了消遣,甚至是为了消遣,甚至是为了消遣。
这种回避可能在短期内起作用,但不久之后,在心理和情感领域都会失败。
你仍然感觉到痛苦,但最重要的是,你感觉到了情感上的伤害,并在痛苦中挣扎。佛陀称之为“第二支箭”。如果一个战士被一支箭射伤,然后释放出一种想法,比如“为什么会发生在我身上”,那就是“第二支箭”
每次你感觉到某种形式的痛苦,甚至只是一点点不适,你可能会把这种情况强加给自己,而不是接受已经发生的事情并采取下一步行动。逃避——逃跑——是“第二支箭”的一个方面,加剧了痛苦。接受意味着停止与你时不时的经历抗争。接受可以消除指责、批评或否认的第二支箭。
也许你会坐下来冥想,感觉被一次又一次的想法轰炸,把你拖走。如果你不接受你的大脑喜欢思考的事实,你会变得越来越沮丧、不安和对自己恼火。你想专注于冥想,但却做不到。
在上述示例中:
第一支箭-冥想时会有很多想法进入你的大脑。
第二支箭-不接受思想一定会在冥想中出现。批评自己有太多想法。
解决方案——承认并接受思想是冥想的一部分。你可以通过温柔地对自己说“思考正在发生”或“思考是自然的”,或者简单地将其标记为“思考……思考”
通过承认这种感觉、想法或感觉并进入其中,体验就会改变。即使是身体上的疼痛,也要试着去感受它。研究发现疼痛减轻了。但是记住,你不是为了摆脱这种感觉而承认的。那不是接受。你需要承认这种感觉、感觉或思想,而不要试图去改变它。纯粹地接受它,就像它本身一样。
放松到不适的一种方法是勇敢地转向不适感,同时感受自己呼吸的感觉。每次呼气时,让自己靠近点,缓和不适周围的紧张情绪。
如果所有这些接受或承认你的痛苦似乎是不可能的,那就试着去感受它,并朝它迈出最微小的一步。接受的最小一步可以建立一系列最终导致转变的事件。任何微小的接受总比没有好。
接受的另一个方面是接受你目前的处境。如果你迷路了,即使你有你想去的地方的地图,如果你不知道从哪里开始,你也没有到达那里的希望。
你需要知道并接受你在哪里,然后你才能开始想办法到达你想去的地方。矛盾的是,接受是任何彻底变革的第一步。如果你不知道你在哪里,也不知道正在发生什么,你就不能从这一点开始适当地前进。
1.2要求需要(requirement)
【解释】
meet requirement,satisfy requirement,enforce requirement,fulfill requirement,comply requirement
满足要求,满足要求,执行要求,满足要求,遵守要求

【链接】
https://www.bostonglobe.com/2020/12/13/business/could-getting-vaccinated-be-back-to-the-office-requirement/
https://www.mass.gov/news/flu-vaccine-now-required-for-all-massachusetts-school-students-enrolled-in-child-care-pre
https://www.dps.texas.gov/DriverLicense/identificationrequirements.html

【正文】
Requirement Engineering is the process of defining, documenting and maintaining the requirements. It is a process of gathering and defining service provided by the system. Requirements Engineering Process consists of the following main activities:

Requirements elicitation
Requirements specification
Requirements verification and validation
Requirements management
Requirements Elicitation:
It is related to the various ways used to gain knowledge about the project domain and requirements. The various sources of domain knowledge include customers, business manuals, the existing software of same type, standards and other stakeholders of the project.
The techniques used for requirements elicitation include interviews, brainstorming, task analysis, Delphi technique, prototyping, etc. Some of these are discussed here. Elicitation does not produce formal models of the requirements understood. Instead, it widens the domain knowledge of the analyst and thus helps in providing input to the next stage.

Requirements specification:
This activity is used to produce formal software requirement models. All the requirements including the functional as well as the non-functional requirements and the constraints are specified by these models in totality. During specification, more knowledge about the problem may be required which can again trigger the elicitation process.
The models used at this stage include ER diagrams, data flow diagrams(DFDs), function decomposition diagrams(FDDs), data dictionaries, etc.
【翻译】
需求工程是定义、记录和维护需求的过程。这是一个收集和定义系统提供的服务的过程。需求工程流程包括以下主要活动:

需求引出
要求规格
需求验证和验证
需求管理
需求引文:
它与获取项目领域和需求知识的各种方法有关。各种领域知识来源包括客户、业务手册、相同类型的现有软件、标准以及项目的其他利益相关者。
用于需求引出的技术包括访谈、头脑风暴、任务分析、Delphi 技术、原型设计等。这里将讨论其中一些。引文不会产生所理解的要求的正式模型。相反,它拓宽了分析师的域知识,从而有助于为下一阶段提供投入。

需求规范
:此活动用于生成正式的软件需求模型。所有要求,包括功能和非功能要求和约束,都由这些模型全部指定。在规范期间,可能需要对问题有更多的了解,从而再次触发引出过程。
此阶段使用的模型包括 ER 图、数据流图(DFD)、函数分解图(FDD)、数据字典等。
1.3最初形态(Prototype)
【解释】
a first, typical or preliminary model of something, especially a machine, from which other forms are developed or copied.“the firm is testing a prototype of the weapon” ·模型最初的、典型的或初步的某物模型,尤指机器,从中发展或复制其他形式。
“公司正在测试这种武器的原型”·

【链接】
https://memory-alpha.fandom.com/wiki/Prototype_(episode)
hhttps://www.cnbc.com/2020/12/09/watch-spacex-launch-starship-prototype-rocket-sn8s-high-altitude-test.html
https://www.prototypes.org/programs/residential-treatment/

【正文】
In order to solve the problem that attribute cannot be shared between object instances of constructor, JS provides prototype attribute.
Each data type in JS is an object (except null and undefined), and each object inherits from another object, which is called a “prototype” object. Except for null, it has no prototype object of its own.
All properties and methods on the prototype object are shared by the object instance.
When an object instance is generated through a constructor, the prototype of the object instance is pointed to the prototype property of the constructor. Each constructor has a prototype property, which is the prototype object of the object instance.

【翻译】
为了解决构造函数的对象实例之间无法共享属性的缺点,js提供了prototype属性。
js中每个数据类型都是对象(除了null和undefined),而每个对象都继承自另外一个对象,后者称为“原型”(prototype)对象,只有null除外,它没有自己的原型对象。
原型对象上的所有属性和方法,都会被对象实例所共享。
通过构造函数生成对象实例时,会将对象实例的原型指向构造函数的prototype属性。每一个构造函数都有一个prototype属性,这个属性就是对象实例的原型对象。
1.4Model(模型)
【解释】
An abstract representation of an existing reality or a reality to be
对存在的现实或未来的现实的抽象描述

【链接】
https://bcrisktool.cancer.gov/
https://github.com/tensorflow/models
https://www.nxp.com.cn/pages/model-psp:MODELPSP

【正文】
Django determines the following information based on the type of the attribute: the type of the currently selected database support field
The default HTML control used when rendering the management form. During the minimum verification in the management site, Django will add auto growing primary key columns to the table, and each model can only have one primary key column. If you use the option to set an attribute as the primary key column, Django will not regenerate into the default primary key column. Attribute naming is restricted and identifier rules are followed. Due to the query method of Django, it does not have a primary key column Continuous underscores are allowed. When a library defines a property, it needs a field type. The field type is defined in the django.db.models In the. Fields directory, it is imported into the django.db.models Import from by using django.db import Models through models.Field Create an object of field type and assign it to an attribute. Logical deletion does logical deletion for all important data, and does not do physical deletion. The implementation method is to define isdelete attribute with the type of Boolean field and the default value of false

【翻译】
django根据属性的类型确定以下信息:当前选择的数据库支持字段的类型
渲染管理表单时使用的默认html控件,在管理站点最低限度的验证,django会为表增加自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后,则django不会再生成默认的主键列,属性命名限制,遵循标识符规则,由于django的查询方式,不允许使用连续的下划线,库定义属性时,需要字段类型,字段类型被定义在django.db.models.fields目录下,为了方便使用,被导入到django.db.models中,使用方式导入from django.db import models通过models.Field创建字段类型的对象,赋值给属性,逻辑删除对于重要数据都做逻辑删除,不做物理删除,实现方法是定义isDelete属性,类型为BooleanField,默认值为False
1.5异义词(Homonym)
【解释】
A term looking identical to another term, but having a different
一个术语看起来与另一个术语相同,但具有不同的

【链接】
https://www.thoughtco.com/homonyms-homophones-and-homographs-a-b-1692660
https://www.homonym.ph/
https://wordsinasentence.com/homonym-in-a-sentence/

【正文】
Homonyms are two words that are spelled the same and sound the same but have different meanings. The word “homonym” comes from the prefix “homo-,” which means the same, and the suffix “-nym,” which means name. Therefore, a homonym is a word that has the same name as another word, meaning that the two words look and sound exactly alike.

Examples of Homonyms
A simple example of a homonym is the word “pen.” This can mean both “a holding area for animals” and “a writing instrument.” Another example is “book,” which can mean “something to read” or “the act of making a reservation.” In both cases, the sound and spelling are the same, and only the definition changes.
【翻译】
同音异义词是拼写相同、发音相同但意义不同的两个词。“谐音”一词来自前缀“homo-”,意思相同,后缀“-nym”,意思是名字。因此,同音异义词是一个与另一个词同名的词,意思是这两个词的外观和发音完全相同。
同音异义词示例
一个简单的同音异义词是“笔”。这个词可以是“动物的存放区”和“书写工具”。另一个例子是“书”,可以是“要读的东西”或“作出保留的行为”。在这两种情况下,发音和拼写都是一样的,只是定义发生了变化。
1.6检查(Inspection)
【解释】
careful examination or scrutiny.
“on closer inspection it looked like a fossil please have your tickets ready for inspection we carry out regular safety inspections”
仔细审查或审查。
“仔细观察, 它看起来像一块化石”“请准备好您的门票供检查” |“我们定期进行安全检查”

【链接】
https://www.indeed.com/q-Inspector-jobs.html
https://www.agilealliance.org/glossary/xp/
https://datadashboard.fda.gov/ora/cd/inspections.htm

【正文】
Why request an Inspection?
Whether you are about to place a bid or sell your vehicle on eBay Motors, an inspection by an independent third party is a must-have.Buyers benefit because the inspection is a way to validate a seller’s claims about a vehicle’s condition.Sellers benefit because the inspection increases potential buyers’ confidence in the description of the vehicle’s condition.How do I arrange an inspection today?eBay Motors recommends arranging your inspection through SGS Automotive. With their 150-point vehicle inspection, SGS Automotive helps you build the confidence that is crucial to any vehicle sale.

【翻译】
为什么要求检查?无论您是要在易趣汽车上出价还是出售车辆,都必须有独立第三方的检查。买方受益于此,因为检查是验证卖方对车辆状况的主张的一种方法。卖方受益,因为检查增加了潜在买家对车辆状况描述的信心。我今天怎么安排检查?易趣汽车公司建议您通过SGS Automotive安排检查。通过150点的车辆检查,SGS Automotive帮助您建立对任何车辆销售至关重要的信心。。
1.7敏捷式项目管理(Agile project management)
【解释】
Agile project management is an iterative approach to delivering a project throughout its life cycle.敏捷项目管理是一种迭代方法,可在整个生命周期内交付项目。

【链接】
https://www.apm.org.uk/resources/find-a-resource/agile-project-management/
https://www.teamwork.com/project-management-guide/agile-project-management/
https://www.apm.org.uk/resources/find-a-resource/agile-project-management/

【正文】
What is Agile project management?
Agile project management is an iterative approach to project management that focuses on breaking down large projects into more manageable tasks, which are completed in short iterations throughout the project life cycle. Teams that adopt the Agile methodology are able to complete work faster, adapt to changing project requirements, and optimize their workflow.

As the name suggests, the Agile allows teams to be better equipped to quickly change direction and focus. Software companies and marketing agencies are especially aware of the tendency for changes from project stakeholders to happen from week-to-week. The Agile methodology allows teams to re-evaluate the work they are doing and adjust in given increments to make sure that as the work and customer landscape changes, the focus also changes for the team.

If you’re new to the Agile project management, it might look at first like a complex and difficult-to-manage system. But, whether you realize it or not, you’re already doing many of the things Agile requires. With a few tweaks, you’ll be on your way to shorter development cycles and smaller, more frequent product releases.

Who uses Agile project management?
Originally created for software development, the Agile approach to project management is quickly being adapted by more than just IT teams. Marketers, universities, the military, and even the automotive industry are also looking at the Agile methodology and other Agile frameworks to deliver innovative products in uncertain environments. Many organizations can benefit from Agile project management, and it’s simple to set up and utilize.

In the software world, when a decision to build or further develop an existing technology is made, the end product may be hard to define. Agile allows for that ambiguity because of its flexibility to change direction on a project as work moves into the future.

While you can take advantage of Agile software, books, or Agile coaches, each Agile team is unique, and understanding the basics can help you put together an Agile methodology that works for you and your team.

【翻译】
什么是敏捷项目管理?
敏捷项目管理是一种迭代的项目管理方法,其重点是将大型项目分解为更易于管理的任务,这些任务在整个项目生命周期中的短迭代中完成。采用敏捷方法的团队能够更快地完成工作,适应不断变化的项目需求,并优化他们的工作流程。
顾名思义,敏捷使团队能够更好地快速改变方向和焦点。软件公司和营销机构特别注意到项目干系人每周都会发生变化的趋势。敏捷方法允许团队重新评估他们正在做的工作,并以给定的增量进行调整,以确保随着工作和客户环境的变化,团队的关注点也会发生变化。
如果您是敏捷项目管理的新手,那么它可能首先看起来像一个复杂且难以管理的系统。但是,不管你是否意识到,你已经在做敏捷所需要的许多事情。只需稍作调整,就可以缩短开发周期,缩短产品发布周期,缩短产品发布周期。
谁使用敏捷项目管理?
最初是为软件开发而创建的,敏捷项目管理方法正在迅速被不仅仅是IT团队所采用。市场营销人员、大学、军队甚至汽车行业也在研究敏捷方法和其他敏捷框架,以在不确定的环境中交付创新产品。许多组织都可以从敏捷项目管理中获益,而且它的建立和使用非常简单。
在软件世界中,当决定构建或进一步开发现有技术时,最终产品可能很难定义。敏捷允许这种模棱两可,因为它可以在工作进入未来时灵活地改变项目的方向。
虽然您可以利用敏捷软件、书籍或敏捷教练,但每个敏捷团队都是独一无二的,了解基础知识可以帮助您构建一个适合您和您的团队的敏捷方法。
1.8特征(Feature)
【解释】
the structure, form, or appearance especially of a person
结构、形式或外观,尤其是一个人的结构、形式或外观

【链接】
https://www.dictionary.com/browse/feature
https://www.collinsdictionary.com/dictionary/english/feature
https://www.tenforums.com/tutorials/7247-turn-windows-features-off-windows-10-a.html

【正文】
A feature is a small, client-valued function expressed in the form . As the name implies, features are an important aspect of Feature-Driven Development (FDD) (Palmer and Felsing 2002). Figure 1 shows several features for the university system. Features are very small and typically can be implemented within a few hours.
Figure 1. Features.
Add a student to a seminar waiting list.
Calculate fee for a parking pass.
Calculate the average mark on a transcript.
Display the name and address of a student on a transcript.
Drop a student from a seminar.
Enroll a student in a seminar.
List the prerequisites for a seminar.
List the seminars of a student on a transcript.
Track number of parking passes.
The features in Figure 1 are basically a formalized version, wording wise at least, of traditional features. Another formalized approach is to write features as shall statements. For example “calculate the average mark on a transcript” would be worded “The system shall calculate the average mark on a transcript”. Although the wording changes slightly in the end features and shall statements are effectively the same thing in my experience.
Although one of the primary advantages of features is that their small size makes them easy to estimate and to implement their size also poses a problem in that one feature by itself rarely provides significant value to stakeholders. The solution is to organize features into groups called “feature sets”. Figure 2 depicts how the features of Figure 1 would be organized into three feature sets - Transcript, Enrollment, and Parking Passes. As you can see each feature set contains two or more related features.
Figure 2. Feature sets.
Transcript
Calculate the average mark on a transcript.
List the seminars of a student on a transcript.
Display the name and address of a student on a transcript.
Enrollment
List the prerequisites for a seminar.
Enroll a student in a seminar.
Drop a student from a seminar.
Add at student to a seminar waiting list.
Parking Passes
Calculate fee for a parking pass.
Track number of parking passes.
From a requirements point of view features are to FDD as use cases are to the Rational Unified Process (RUP) and user stories are to XP - they’re a primary source of requirements and the primary input into your planning efforts. However, from a size point of view feature sets are much closer conceptually to use cases. Features are estimated and prioritized in a similar manner to user stories. Because features are so simple to create it is common to use very simple tools - such as index cards or a spreadsheet - to capture them.

【翻译】
功能是一个小型的,客户机值的函数,以形式表示。顾名思义,特性是特性驱动开发(FDD)的一个重要方面(Palmer和Felsing 2002)。图1显示了大学系统的几个特性。功能非常小,通常可以在几个小时内实现。
特征:将学生添加到研习班等候名单中。计算停车通行证的费用。计算成绩单上的平均分数。
在成绩单上显示学生的姓名和地址。把一个学生从讨论会上赶下来。让学生参加研讨会。
列出研讨会的先决条件。在成绩单上列出学生的研讨会。停车通行证的轨道数。
功能集:成绩单计算成绩单上的平均分数。在成绩单上列出学生的研讨会。在成绩单上显示学生的姓名和地址。注册:列出研讨会的先决条件。让学生参加研讨会。把一个学生从讨论会上赶下来。将at学生添加到研讨班等候名单中。停车通行证计算停车通行证的费用。停车通行证的轨道数。从需求的角度来看,特性对于FDD来说就像用例对于Rational统一过程(RUP)和用户故事对于XP来说一样——它们是需求的主要来源,也是规划工作的主要输入。然而,从规模的角度来看,功能集在概念上更接近于用例。功能的评估和优先级划分与用户情景类似。由于特性的创建非常简单,因此通常使用非常简单的工具(如索引卡或电子表格)来捕获它们。!
1.9实体(Entity)
【解释】
a thing with distinct and independent existence.“Church and empire were fused in a single entity”
具有独特和独立存在的东西。“教会和帝国融合在一个实体中”

【链接】
https://www.merriam-webster.com/dictionary/entity
https://www.dos.ny.gov/corps/bus_entity_search.html
http://centriqs.com/database-software/database-entity.php

【正文】
What is an Entity?
Definition: An entity is an organization established through laws or accounting principles that separates it from its owners, other organizations, and individuals. All business forms are considered entities with the exception of a sole proprietorship. The various forms of partnerships and corporations are legal entities that are legally separated from their owners and other organizations. You can think of an entity as a fictitious person. It’s an organization that only exists on paper.
What Does Entity Mean?
The field of accounting uses the concept of separate entities to properly track and record each business’ transactions and financial information. The business entity principle states that each entity must be accounted for independently. This means that the owners of a corporation can’t commingle funds with the corporation. The corporate income and assets must be separate from the owner’s income and bank accounts.
Example
The legal separation of an entity from its owners carries many benefits. Limited Liability Partnership and Corporation owners enjoy limited liability. This means that the owners of the company are only liable for their investment in the company. In other words, if the company is being sued for damages due to a faulty product, the person filing suit cannot sue the owners. Only the company can be sued because it is a separate legal entity.
In the case of a sole proprietorship where there is no legal separation, a suit could be filed against the business and the owner because the owner of a sole proprietorship is the business. There is no separate entity. The owner and the company are one in the same. This means the owner could lose his house and all his personal belonging due to a business lawsuit.
Owners of a partnership or corporation cannot be sued personally. The only thing these individuals can lose in a business lawsuit is their investment in the stock. In other words, the company could go bankrupt and the owner’s would own stock of a worthless company, but none of their personal possessions would be taken…

【翻译】
什么是实体?
定义:一个实体是一个通过法律或会计原则建立的组织,它与它的所有者、其他组织和个人分开。除独资企业外,所有商业形式都被视为实体。各种形式的合伙企业和公司都是法律上与其所有者和其他组织分离的法律实体。你可以把一个实体想象成一个虚构的人。这是一个只存在于纸面上的组织。
实体是什么意思?
会计领域使用独立实体的概念来正确地跟踪和记录每一个企业的交易和财务信息。商业实体原则规定,每个实体都必须独立核算。这意味着公司的所有者不能将资金与公司混合。公司收入和资产必须与所有者的收入和银行账户分开。
例子
从法律上把一个实体和它的所有者分开会带来很多好处。有限责任合伙企业和法人股东享有有限责任。这意味着公司所有者只对他们在公司的投资负责。换言之,如果公司因产品缺陷被起诉损害赔偿,提起诉讼的人不能起诉所有者。只有公司可以被起诉,因为它是一个独立的法人实体。
在没有合法分居的情况下,可以对企业和所有人提起诉讼,因为独资企业的所有人就是企业。没有单独的实体。业主和公司是一个整体。这意味着业主可能会因为一场商业诉讼而失去他的房子和所有的个人财产。
合伙企业或公司的所有者不能被个人起诉。这些人在商业诉讼中唯一可能损失的就是他们对股票的投资。换言之,公司可能破产,所有者拥有一家毫无价值的公司的股票,但他们的个人财产不会被夺走。
1.10错误(Error)
【解释】
he state or condition of being wrong in conduct or judgment.
他在行为或判断上说明错误或条件。

【链接】
https://support.microsoft.com/en-us/help/10164/fix-windows-update-errors
https://www.thoughtco.com/how-to-calculate-percent-error-609584
https://support.microsoft.com/en-us/office/iferror-function-c526fd07-caeb-47b8-8bb6-63f3e417f611

【正文】
Background
Many patients harmed by a medical error never learn of the error. Physicians have traditionally shied away from discussing errors with patients, in part due to fear of precipitating a malpractice lawsuit, but also due to embarrassment and discomfort with the disclosure process. However, attitudes have changed in recent years–most physicians in a 2006 survey had disclosed a serious error to a patient and agreed that such disclosure was warranted.
Surveys have helped to define the components of disclosure that matter most to patients. These
Disclosure of all harmful errors
An explanation as to why the error occurred
How the error’s effects will be minimized
Steps the physician (and organization) will take to prevent recurrences
“Full disclosure” of an error incorporates these components as well as acknowledgement of responsibility and an apology by the physician. However, there may be a disconnect between physicians’ views of ideal practice and what actually happens. For example, most physicians agree that errors should be fully disclosed to patients, but in practice many “choose their words carefully” by failing to clearly explain the error and its effects on the patient’s health.

【翻译】
背景
许多因医疗失误而受到伤害的病人永远不会知道这个错误。传统上,医生们不愿与患者讨论错误,部分原因是害怕引发医疗事故诉讼,但也因为对披露过程的尴尬和不适。然而,近年来,人们的态度发生了变化——在2006年的一项调查中,大多数医生都向患者披露了一个严重的错误,并认为这样的披露是有道理的。调查有助于确定对患者最重要的披露内容。其中包括:披露所有有害错误,关于错误发生的原因的解释。如何将错误的影响最小化,医生(和组织)将采取的预防复发的措施。错误的“完全披露”包括这些组成部分,以及对责任的承认和医生的道歉。然而,医生对理想实践的看法与实际情况之间可能存在脱节。例如,大多数医生都认为错误应该向患者充分披露,但实际上许多医生“谨慎选择措辞”,因为没有清楚地解释错误及其对患者健康的影响。
第二页作业
2.1实现视图(implementation view)
【解释】
A definition of how something is constructed or computed. For example, a class is an implementation of a type, a method is an implementation of an op
如何构造或计算某样东西的定义。例如,类是类型的实现,方法是操作的实现

【链接】
https://creately.com/diagram/example/h737eidp1/Implementation%20view
http://www.ece.uvic.ca/~itraore/seng422-05/notes/arch05-5.pdf
https://stackoverflow.com/questions/18240627/implementation-view-vs-physical-view-in-41-architectural-view-model

【正文】
Implementation view
It shows the organization and execution of the code, describes the main function modules of the system and the relationship between the modules, which is mainly used by developers.
The implementation view guides the design of development architecture. The development architecture focuses on the package, including not only the source program to be written, but also the third-party SDK, ready-made framework, class library that can be directly used, and the system software or middleware on which the developed system will run. There may be a certain mapping relationship between the development architecture and the logical architecture: for example, the logical layer in the logical architecture is generally mapped to multiple packages in the development architecture; another example is that the source files in the development architecture can contain one or more classes in the logical architecture.

【翻译】
展示代码的组织和执行,描述系统的主要功能模块和个模块之间的关系,主要被开发人员使用。实现视图指导开发架构设计,开发架构关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。开发架构和逻辑架构之间可能存在一定的映射关系:比如逻辑架构中的逻辑层一般会映射到开发架构中的多个程序包;再比如开发架构中的源码文件可以包含逻辑架构中的一到多个类。
2.2增量开发(incremental development)
【解释】
Incremental development in software engineering is a process methodology that emphasizes the virtue of taking small steps toward the goal. In contrast to the waterfall model of software development, in which a working system becomes available only in the later phases of the project, incremental development begins with a small, working system that is improved and expanded step by step.
软件工程中的增量开发是一种过程方法,强调朝着目标迈出小步骤的优点。与软件开发的瀑布模型(其中工作系统仅在项目的后期阶段才可用)不同,增量开发从一个小型的工作系统开始,该系统将逐步得到改进和扩展。

【链接】
https://www.technipages.com/definition/incremental-development
https://www.agilealliance.org/glossary/incremental-development/
https://www.visual-paradigm.com/scrum/agile-development-iterative-and-incremental/

【正文】
Abstract
As part of any incremental and iterative development, release planning is the process of assigning features to upcoming releases (or iterations) such that the overall product evolution is optimized. Analytical product release planning refers to the application of analytical methods in this process, thereby utilizing the diversity of data available from internal and external sources of information. In this chapter, information needs for release planning are outlined and a taxonomy of release planning problems is given. The paradigm of Open Innovation is introduced as a new way to elicit and gain access to relevant data related to product objectives, features and their dependencies, customers and changing priorities, as well as product values and market trends. Analytical Open Innovation (AOI) is the integration of Open Innovation with (a portfolio of) analytical methods which could be used in different problems of a semi-wicked nature such as planning and design. This chapter studies the usage of AOI in the context of release planning (RP). The respective approach called “AOI@RP” is taking advantage of gathering and generating data and relating data into well-defined aspects of the problem and combining analytical methods to address the solution. The usage of AOI is studied in more detail for two of the concrete release planning problems given in the taxonomy: (1) Release planning in the presence of advanced feature dependencies and synergies detected from morphological analysis; (2) continuous what-to-release planning in consideration of ongoing trial feature evaluation. An illustrative case study is used as proof of concept to the proposed solution methodology.

【翻译】
摘要
作为任何增量和迭代开发的一部分,发布计划是为即将发布的版本(或迭代)分配特性的过程,以便优化整个产品的演进。分析性产品发布策划(planning)是指在这个过程中应用分析方法,从而利用来自内部和外部信息来源的多样性数据。本章概述了发布计划的信息需求,并给出了发布计划问题的分类。开放式创新范式是一种新的获取和获取与产品目标、特性及其依赖性、客户和不断变化的优先级以及产品价值和市场趋势相关的数据的新方法。分析性开放创新(AOI)是开放式创新与分析方法的结合,这些分析方法可以应用于不同的半邪恶性质的问题,如规划和设计。本章研究了AOI在发布计划(RP)中的使用。各自的方法称为AOI@卢比“正在利用收集和生成数据以及将数据关联到问题的明确方面,并结合分析方法来解决问题。针对分类学中给出的两个具体的发布计划问题,对AOI的使用进行了更详细的研究:(1)在形态分析中检测到高级特征依赖和协同效应的情况下发布计划;(2)考虑到正在进行的试用特性评估,继续进行发布计划。一个说明性的案例研究被用作概念的证明,提出的解决方法。
2.3交互图(interaction diagram)
【解释】
A generic term that applies to several types of diagrams that emphasize object interactions. These include: collaboration diagrams, sequence diagrams, and activity diagrams.
适用于强调对象交互的几种图表类型的通用术语。其中包括:协作图、序列图和活动图。

【链接】
https://www.guru99.com/interaction-collaboration-sequence-diagrams-examples.html
https://www.sciencedirect.com/topics/computer-science/interaction-diagram
https://www.lucidchart.com/pages/uml-interaction-diagram

【正文】
What is Interaction diagram?INTERACTION DIAGRAM are used in UML to establish communication between objects. It does not manipulate the data associated with the particular communication path. Interaction diagrams mostly focus on message passing and how these messages make up one functionality of a system. Interaction diagrams are designed to display how the objects will realize the particular requirements of a system. The critical component in an interaction diagram is lifeline and messages.Various UML elements typically own interaction diagrams. The details of interaction can be shown using several notations such as sequence diagram, timing diagram, communication/collaboration diagram. Interaction diagrams capture the dynamic behavior of any system…

【翻译】
什么是交互图?UML中使用交互图来建立对象之间的通信。它不操作与特定通信路径相关联的数据。交互图主要关注消息传递以及这些消息如何构成系统的一个功能。交互图设计用来显示对象如何实现系统的特定需求。交互图中的关键组件是生命线和留言。各种各样UML元素通常拥有交互图。交互的细节可以用一些符号来表示,例如序列图、时序图、通信/协作图。交互图捕捉任何系统的动态行为。
2.4内部交易(internal transaction)
【解释】
A transition signifying a response to an event without changing the state of an object.
表示对事件的响应而不更改对象状态的转换。

【链接】
https://www.myaccountingcourse.com/accounting-dictionary/internal-transactions
https://www.coursehero.com/file/p7qkm1v/An-example-of-an-internal-transaction-is-when-an-entity-a-purchases-merchandise/
https://www.census.gov/newsroom/blogs/global-reach/2019/05/filing_in_aesdirect.html

【正文】
What Does Internal Transactions?
Supplies were taken from the shipping department and expensed by the office department. This can also occur with shipping department assets. For example, if the office department wanted to upgrade its computers and decided to give its older office computers to the shipping department, the shipping department would receive a new asset.
Since these are internal transactions, they take place within one company. In other words, the company is transacting with itself. There is no real economic exchange of value between two parties because the company is exchanging value with itself. In essence, the business is taking an asset or expense out of its left pocket and putting the asset or expense in its right pocket.
The accounting equation is altered slightly, but there is no real substantial change in financial position. External transactions, on the other hand, take place between two entities and do change the financial position of both companies…

【翻译】
什么是内部交易?供应品从船运部领走,由办公部列支。这也可能发生在运输部门的资产上。例如,如果办公室部门想升级其计算机,并决定将其旧的办公计算机交给运输部门,则运输部门将收到一项新资产。由于这些是内部交易,它们发生在一家公司内。换句话说,这家公司是在与自己交易。双方之间没有真正的经济价值交换,因为公司本身是在交换价值。从本质上讲,企业就是从左口袋里掏出一笔资产或支出,然后把资产或费用放在右口袋里。
会计等式略有改变,但财务状况没有实质性的变化。另一方面,外部交易发生在两个实体之间,确实会改变两家公司的财务状况。
2.5互交发展(interative development)
【解释】
Iterative development, also known as iterative incremental development or iterative evolutionary development, is a software development process opposite to the traditional waterfall development. It makes up for some weaknesses in the traditional development method and has higher success rate and productivity.
迭代开发也称为迭代增量开发或迭代进化开发,是一个与传统瀑布开发相反的软件开发过程。它弥补了传统开发方法的一些弱点,具有较高的成功率和生产率。

【链接】
https://www.agilealliance.org/glossary/iterative-development/#q=(infinitefalsefilters(postType('page’post’aa_book’aa_event_session’aa_experience_report’aa_glossary’aa_research_paper’aa_video)tags('iterative*20development))searchTermsortfalsesortDirection’ascpage1)
https://airbrake.io/blog/sdlc/iterative-model
https://www.techopedia.com/definition/26100/iterative-development

【正文】
The Scrum framework is driven by the goal of delivering maximum business value in the least time. To achieve this practically, Scrum believes in Iterative Development of Deliverables.
In most complex projects, where the customer may not be able to define very concrete requirements or is not confident of what the end product may look like, the iterative model is more flexible in ensuring that any change requested by the customer can be included as part of the project. User Stories may have to be written constantly throughout the duration of the project. In the initial stages of writing, most User Stories are high-level functionalities. These User Stories are known as Epic(s). Epic(s) are usually too large for teams to complete in a single Sprint. Therefore, they are broken down into smaller User Stories.
Some of the benefits of Iterative Development are:
It allows for course correction as all the people involved get better understanding of what needs to be delivered as part of the project and incorporate these learning in an iterative manner.
The time and effort required to reach the final end point is greatly reduced and the team produces deliverables that are better suited to the final business environment…

【翻译】
Scrum框架的目标是在最短的时间内提供最大的业务价值。为了实际实现这一点,Scrum相信迭代开发可交付成果。
在大多数复杂的项目中,客户可能无法定义非常具体的需求,或者对最终产品的外观没有信心,迭代模型更灵活地确保客户要求的任何更改都可以作为项目的一部分包含进来。在项目的整个过程中,可能需要不断地编写用户故事。在编写的最初阶段,大多数用户故事都是高级功能。这些用户情景被称为Epic(s)。Epic(s)通常太大,团队无法在单个Sprint中完成。因此,它们被分解成更小的用户情景。
迭代开发的一些好处是:
它允许课程修正,因为所有相关人员都能更好地理解作为项目一部分需要交付的内容,并以迭代的方式整合这些学习。
达到最终终点所需的时间和精力大大减少,并且团队生成更适合最终业务环境的可交付成果。
2.6逻辑视图(logical view)
【解释】
The logical view provides a hierarchical view of a project’s structure. With the logical view, users can create and customize the diagrams in their projects with meaningful categorization by adding domain-specific view(s).
逻辑视图提供项目结构的分层视图。使用逻辑视图,用户可以通过添加特定于域的视图,创建和自定义其项目中具有有意义的分类的图表。

【链接】
https://circle.visual-paradigm.com/docs/visual-paradigm-getting-started/user-interface/logical-view/
https://techdocs.broadcom.com/us/en/ca-mainframe-software/traditional-management/ca-view/14-0/using/create-and-use-logical-views.html
https://devcycles.io/2019/02/27/4-1-architectural-view-model-introduction/

【正文】
Physical View
In a well design database, not only should the database be easy to share and change with many different users, but the database should also provide different logical and physical views for users under different purpose.
Definition of Physical View
The word physical view comes from the viewing of the database. The viewing of database can be categorized into two categories: physical view and logical view. In viewing a database, there can be many different ways users can view a database depending on their needs and purposes. Physical view refers to the way data are physically stored and processed in a database. On the other side, logical view is designed to suit the need of different users by representing data in a meaningful format. Another word, the logical view tells the users, in their term, what is in the database. So while there can be numerous logical views of a database to suit the needs of the users, there can only be one physical view of a database because physical view deals with the physical storage of information on a storage device.
Benefit of Different View
The capability of allowing different views (both logical views and physical views) in a database, gives users a lot of flexibility. With the logical views, the users can see data differently from how they are stored and most of all, users doesn’t need to know the technically detail of the physical storage. On the other hand, database specialist and advance users could benefit from the use of physical view of the database because through physical view, they can see the physical storage of the data. This allows specialist to make the database more efficient.

【翻译】
物理视图
在一个井道设计数据库中,不仅要便于与不同用户共享和更改,而且要为不同用途的用户提供不同的逻辑和物理视图。
物理视图的定义
physical view一词来自于对数据库的查看。数据库的视图可以分为两类:物理视图和逻辑视图。在查看数据库时,用户可以通过多种不同的方式查看数据库,具体取决于他们的需要和目的。物理视图是指数据在数据库中物理存储和处理的方式。另一方面,逻辑视图通过以有意义的格式表示数据来满足不同用户的需要。换句话说,逻辑视图告诉用户,用他们的术语来说,数据库中有什么。因此,虽然可以有许多数据库的逻辑视图来满足用户的需要,但是数据库只能有一个物理视图,因为物理视图处理的是存储设备上的信息的物理存储。
不同观点的好处
允许在数据库中使用不同视图(逻辑视图和物理视图)的能力给了用户很大的灵活性。使用逻辑视图,用户可以看到与存储方式不同的数据,最重要的是,用户不需要知道物理存储的技术细节。另一方面,数据库专家和高级用户可以受益于使用数据库的物理视图,因为通过物理视图,他们可以看到数据的物理存储。这使得专家可以使数据库更有效。
2.7模型元素(model element)
【解释】
An element that is an abstraction drawn from the system being modeled. Contrast: view element.
从正在建模的系统中抽取的元素。对比度:视图元素。

【链接】
https://www.sciencedirect.com/topics/engineering/element-model#:~:text=%20Element%20Model%20%201%20Solutions%20of%20Element,mechanics%20of%20the%20spinal%20tissues%20and…%20More%20
https://www.sciencedirect.com/topics/engineering/model-element
https://docs.oracle.com/javase/7/docs/api/javax/lang/model/element/package-summary.html

【正文】
A model element is an elementary component of a model. It will be created when you create a shape on a diagram. An example of model element is actor.
You can visualize an existing model element or we sometimes call it to ‘reuse’ a model element with the model completion feature. When you create a shape, press Ctrl-Space to popup a list of existing elements. Click on the desired element to reuse it. We call the visualized form of model element a view or a shape, depending on whether we want to emphasis the differences against model element or we want to focus on diagramming operations.

【翻译】
模型元素是模型的基本组成部分。它将在您在图表上创建形状时创建。模型元素的一个例子是actor。
您可以可视化一个现有的模型元素,或者我们有时将其称为“重用”具有模型完成功能的模型元素。创建形状时,按Ctrl-Space可弹出现有元素的列表。单击所需的元素以重用它。我们将模型元素的可视化形式称为视图或形状,这取决于我们是要强调与模型元素的差异,还是要专注于图解操作。
2.8多重分类(multiple classification)
【解释】
A semantic variation of generalization in which an object may belong directly to more than one class. See: dynamic classification.
一种泛化的语义变体,其中对象可能直接属于多个类。参见:动态分类。

【链接】
https://howtoadult.com/piagets-definition-multiple-classification-8628286.html
https://help.sap.com/viewer/875f0532320a4a41aa627bb6e79df8ea/700%20SP34/en-US/96d4e4535dd4414de10000000a174cb4.html
https://medium.com/@b.terryjack/tips-and-tricks-for-multi-class-classification-c184ae1c8ffc

【正文】
Multiple Classification:You can assign objects either to one class or to several classes. Classifying an object in more than one class is known as multiple classification.
Classification in Different Class Types
If you classify an object in classes of different class types, there is no link between the characteristic values assigned in the different classes. This means that, in two classes with different class types, you can assign completely different values to the same characteristic for the same object.
Multiple Classification in One Class Type
If you classify an object in several classes of the same class type, you can use various paths to search for the object later. You can use either of the classes in the graphic below to find the object.
Before you can classify objects in several classes of the same class type, you need to set the multiple classification indicator in Customizing for Classification for the class type.
If an object is classified in several classes of the same class type, the object inherits all characteristics of all the classes in which it is classified. You see the characteristics of all the other classes in which the object is classified, as well as the characteristics of the class you started with.
In one class type, you can only assign one value or set of values to any one characteristic for an object. You cannot assign different values to a characteristic in different classes of the same class type. If you enter 4 as the length of a bolt, this is a central property of the bolt, which is the same in every class (see also Inconsistencies in Multiple Classification ).

【翻译】
多分类:可以将对象指定给一个类或多个类。将一个对象分为多个类称为多重分类。
不同类别的分类
如果将对象分类到不同类类型的类中,则在不同类中指定的特征值之间没有链接。这意味着,在两个具有不同类类型的类中,可以为同一对象的同一特征指定完全不同的值。
一类多分类
如果您将一个对象分类到多个具有相同类类型的类中,则以后可以使用各种路径来搜索该对象。您可以使用下图中的任一类来查找对象。
在对同一类类型的多个类中的对象进行分类之前,需要在“为类类型的分类自定义”中设置“多重分类”指示符。
如果一个对象被分类在同一个类类型的多个类中,那么该对象将继承它所属的所有类的所有特征。您可以看到对象被分类的所有其他类的特征,以及开始使用的类的特征。
在一个类类型中,只能为对象的任何一个特征指定一个值或一组值。不能为同一类类型的不同类中的特征指定不同的值。如果输入4作为螺栓的长度,这是螺栓的中心属性,这在每个类中都是相同的。
2.9多重继承(multiple inheritance)
【解释】
A semantic variation of generalization in which a type may have more than one supertype. Contrast: single inheritance.
泛化的语义变体,其中类型可能有多个超类型。对比:单继承。

【链接】
https://www.tutorialspoint.com/multiple-inheritance-in-cplusplus
https://www.techopedia.com/definition/20883/multiple-inheritance
https://www.codespeedy.com/multiple-inheritance-using-interfaces-in-java/

【正文】
Definition editing: multiple inheritance in object-oriented programming language means that a class can inherit the behavior and characteristic functions of multiple parent classes at the same time. Single inheritance means that a subclass inherits only one parent class.
Concept editor: multiple inheritance references can lead to some confusing situations, so it is often debated about the merits and risks. Java uses a compromise: Java allows a class to inherit from more than one parent interface (a class can be specified, it inherits all the parent class types, and must have a concrete implementation of all the parent class interfaces’ External visible methods, and allows the compiler to enforce the above requirements), but it can only inherit the implementation (Methods and data) from one parent class. Microsoft’s.net programming languages, such as C ා, Visual Basic. Net and realbasic of real software, also use this kind of interface.
Object editing: in object-oriented programming, inheritance describes two types or classes of objects, one of which is a “subtype” or “subclass” of the other. The subclass inherits the characteristics of the parent class and allows sharing functions. For example, you can create a “mammal” class, which has the functions of eating, breeding, etc., and then define a subclass “cat”, which can inherit the above functions from its parent class without rewriting the program, and add its own new functions, such as “chasing mice”.
However, if you want to inherit from more than one structure at the same time, such as allowing “cat” to inherit “mammal” and “cartoon character” and “pet” at the same time, the lack of multiple inheritance will lead to very clumsy mixed inheritance, or force the same function to be rewritten in more than one place. (this leads to maintenance problems)
For many years, multiple inheritance has been a sensitive topic. Opponents say it increases the complexity and ambiguity of procedures, such as in the diamond problem.
Mode editing: various programming languages have different ways to deal with the above problems. For example, Eiffel allows subtypes to adapt to the functions it inherits by renaming them, or determining selection rules for them in advance. Java allows objects to inherit from multiple interfaces, but only one implementation. Realbasic is similar to it and adds the ability to “extend” a class without using inheritance. Perl uses a sequential inheritance mechanism: when searching for methods, it first searches for the methods of the current class, and then uses depth first search to find the inherited classes and their parents in order. Clos allows programmers to have complete control over the combination of methods. If this is not enough, metaobject protocol gives programmers a means to modify inheritance, method scheduling, class specialization, and other internal mechanisms without affecting system stability.

【翻译】
定义编辑:面向对象编程语言中的多重继承指的是一个类可以同时继承多个父类的行为和特征功能。单一继承是指:一个子类只继承一个父类。
概念编辑:多重继承指代可以导致某些令人混淆的情况,所以关于它的好处与风险之间孰轻孰重常常受人争论。Java使用了一个折衷的办法:Java允许一个类别继承自多于一个父接口(可以指定某一个类别,它继承了所有父类的类型,并必须拥有所有父类别接口的外部可见方法的具体实现,并允许编译器强制以上要求),但只可以从一个父类别继承实现(方法与数据)。微软的.NET编程语言,例如C#和Visual Basic .NET和REAL Software的REALbasic也使用了这种类接口的做法。
对象编辑:面向对象的程序设计中,继承描述了两种类型或两个类的物件,其中一种是另外一种的“子类型”或“子类”。子类继承了父类的特征,允许分享功能。例如,可以创造一个“哺乳类动物” 类,拥有进食、繁殖等的功能;然后定义一个子类“猫”,它可以从父类继承上述功能,不需重新编写程序,同时增加属于自己的新功能,例如“追赶老鼠”。
然而,如果想同时自多于一个结构继承,例如容许“猫”继承“哺乳类动物”之余,同时继承“卡通角色”和“宠物”,缺乏多重继承往往会导致十分笨拙的混合继承,或迫使同一个功能在多于一个地方被重写。(这带来了维护上的问题)
多年以来,多重继承都是一个敏感的话题,反对者指它增加了程序的复杂性与含糊性,例如在“钻石问题”中。
方式编辑:各种编程语言有不同的方式处理上述问题。例如Eiffel容许子类型透过重新命名,或提前为他们确定选择规则,来适应(adapt)它继承得来的功能。Java允许对象从多个接口继承,但仅允许一个实现继承。REALbasic与它相似,并增加了一个不需使用继承来“扩展”一个类的功能。Perl使用一种有序列表式的继承机制:搜寻方法时,它会先搜寻当前类别的方法,然后使用深度优先搜索来顺序寻找各个继承类及其父类。CLOS允许程序设计者完全控制方法的组合。如果这还不足够,元对象协议给程序设计者一种手段去修改继承,方法调度,类别特例化,及其它内部的机制,而不影响系统的稳定性。
2.10第n范式(n-ary association)
【解释】
An association among three or more classes. Each instance of the association is an n-tuple of values from the respective classes. Contrast: binary association.
三个或更多类之间的关联。关联的每个实例都是来自相应类的 n 元组值。对比:二进制关联。

【链接】
https://sparxsystems.com/enterprise_architect_user_guide/9.3/domain_based_models/n_aryassociation.html
https://support.microsoft.com/en-us/office/n-ary-association-class-shape-ae0a37b9-73ea-47de-a43f-ea511d9bcb5c
https://thesai.org/Downloads/Volume7No2/Paper_37-N_ary_Relations_of_Association_in_Class_Diagrams_Design_Patterns.pdf

【正文】
The first normal form: in a word, it can be summarized as follows: Du “the data table of the first paradigm must be a two-dimensional data table”. The first normal form is the index. Each column of the database is an inseparable basic data item. It emphasizes the atomicity of the column, and a certain attribute in the test question cannot have several values. For example, the phone number attribute in the database cannot have fixed line and mobile phone values. Note: in any relational database, the first normal form (1NF) is the basic requirement for relational schema, and the database that does not meet the first normal form (1NF) is not a relational database.
The second paradigm is based on the first paradigm, that is, to satisfy the second paradigm, it must satisfy the first paradigm. The second paradigm requires that each instance or row of a data table must be uniquely identified. In addition to meeting the first normal form, there are two conditions: one is that the table must have a primary key; the other is that the columns not included in the primary key must completely rely on the primary key, not only a part of the primary key. Each row of data can only be related to one of the columns, that is, a row of data only does one thing. As long as there is data duplication in the data column, split the table.
The third normal form is called the third normal form if a normal form is a second normal form, and each non primary attribute does not pass the candidate key that depends on the normal form, that is, it cannot exist: the non primary key column a depends on the non primary key column B, and the non primary key column B depends on the primary key.

【翻译】
第一范式:一言以bai蔽之:du“第一范式的数据表zhi必须dao是二维数据zhuan表”,第一范式是指数shu据库的每一列都是不可分割的基本数据项,强调列的原子性,试题中某一属性不能拥有几个值。比如数据库的电话号码属性里面不可以有固定电话和移动电话值。 说明:在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。
第二范式建立在第一范式的基础上,即满足第二范式一定满足第一范式,第二范式要求数据表每一个实例或者行必须被唯一标识。除满足第一范式外还有两个条件,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。每一行的数据只能与其中一列相关,即一行数据只做一件事。只要数据列中出现数据重复,就要把表拆分开来。
第三范式若某一范式是第二范式,且每一个非主属性都不传递依赖于该范式的候选键,则称为第三范式,即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况。。
第三页作业
3.1活动(Activities)
【解释】
the condition in which things are happening or being done.
发生或正在发生或正在做事情的条件。

【链接】
https://www.tripadvisor.com/Attractions-g297412-Activities-Dongguan_Guangdong.html
https://www.thomasandfriends.com/en-us/activities/
https://www.yelp.com/nearme/things-to-do

【正文】
Activities
An Activity is an application component that provides a screen with which users can interact in order to do something, such as dial the phone, take a photo, send an email, or view a map. Each activity is given a window in which to draw its user interface. The window typically fills the screen, but may be smaller than the screen and float on top of other windows.
An application usually consists of multiple activities that are loosely bound to each other. Typically, one activity in an application is specified as the “main” activity, which is presented to the user when launching the application for the first time. Each activity can then start another activity in order to perform different actions. Each time a new activity starts, the previous activity is stopped, but the system preserves the activity in a stack (the “back stack”). When a new activity starts, it is pushed onto the back stack and takes user focus. The back stack abides to the basic “last in, first out” queue mechanism, so, when the user is done with the current activity and presses the BACK key, it is popped from the stack (and destroyed) and the previous activity resumes. (The back stack is discussed more in the Tasks and Back Stack document.)
When an activity is stopped because a new activity starts, it is notified of this change in state through the activity’s lifecycle callback methods. There are several callback methods that an activity might receive, due to a change in its state—whether the system is creating it, stopping it, resuming it, or destroying it—and each callback provides you the opportunity to perform specific work that’s appropriate to that state change. For instance, when stopped, your activity should release any large objects, such as network or database connections. When the activity resumes, you can reacquire the necessary resources and resume actions that were interrupted. These state transitions are all part of the activity lifecycle.
The rest of this document discusses the basics of how to build and use an activity, including a complete discussion of how the activity lifecycle works, so you can properly manage the transition between various activity states.
Creating an Activity
To create an activity, you must create a subclass of Activity (or an existing subclass of it). In your subclass, you need to implement callback methods that the system calls when the activity transitions between various states of its lifecycle, such as when the activity is being created, stopped, resumed, or destroyed. The two most important callback methods are:
onCreate()
You must implement this method. The system calls this when creating your activity. Within your implementation, you should initialize the essential components of your activity. Most importantly, this is where you must call setContentView() to define the layout for the activity’s user interface.
onPause()
The system calls this method as the first indication that the user is leaving your activity (though it does not always mean the activity is being destroyed). This is usually where you should commit any changes that should be persisted beyond the current user session (because the user might not come back).
There are several other lifecycle callback methods that you should use in order to provide a fluid user experience between activities and handle unexpected interuptions that cause your activity to be stopped and even destroyed. All of the lifecycle callback methods are discussed later, in the section about Managing the Activity Lifecycle.
Implementing a user interface
The user interface for an activity is provided by a hierarchy of views—objects derived from the View class. Each view controls a particular rectangular space within the activity’s window and can respond to user interaction. For example, a view might be a button that initiates an action when the user touches it.
Android provides a number of ready-made views that you can use to design and organize your layout. “Widgets” are views that provide a visual (and interactive) elements for the screen, such as a button, text field, checkbox, or just an image. “Layouts” are views derived from ViewGroup that provide a unique layout model for its child views, such as a linear layout, a grid layout, or relative layout. You can also subclass the View and ViewGroup classes (or existing subclasses) to create your own widgets and layouts and apply them to your activity layout.
The most common way to define a layout using views is with an XML layout file saved in your application resources. This way, you can maintain the design of your user interface separately from the source code that defines the activity’s behavior. You can set the layout as the UI for your activity with setContentView(), passing the resource ID for the layout. However, you can also create new Views in your activity code and build a view hierarchy by inserting new Views into a ViewGroup, then use that layout by passing the root ViewGroup to setContentView().
For information about creating a user interface, see the User Interface documentation.
Declaring the activity in the manifest

【翻译】
活动
活动是一个应用程序组件,它提供了一个用户可以与之交互的屏幕,以便执行某些操作,例如拨打电话、拍照、发送电子邮件或查看地图。每个活动都有一个窗口,可以在其中绘制其用户界面。窗口通常填充屏幕,但可能比屏幕小,并浮动在其他窗口的顶部。
一个应用程序通常由多个相互松散绑定的活动组成。通常,应用程序中的一个活动被指定为“main”活动,它在第一次启动应用程序时呈现给用户。然后,每个活动都可以启动另一个活动以执行不同的操作。每次新活动启动时,前一个活动都会停止,但系统会将活动保留在堆栈中(“后堆栈”)。当一个新的活动开始时,它被推到后面的堆栈上,并获得用户的关注。后台堆栈遵循基本的“后进先出”队列机制,因此,当用户处理完当前活动并按下back键时,它将从堆栈中弹出(并销毁)并恢复之前的活动。(后面的堆栈将在Tasks和back stack文档中详细讨论。)
当活动因新活动启动而停止时,将通过活动的生命周期回调方法将状态更改通知给它。由于活动的状态发生变化,无论系统是在创建、停止活动、恢复活动还是销毁活动,都可能会收到多个回调方法,每个回调都为您提供了执行与状态更改相应的特定工作的机会。例如,当停止时,活动应该释放任何大型对象,例如网络或数据库连接。当活动恢复时,您可以重新获取必要的资源并恢复中断的操作。这些状态转换都是活动生命周期的一部分。
本文档的其余部分将讨论如何构建和使用活动的基础知识,包括对活动生命周期如何工作的完整讨论,以便您能够正确地管理各种活动状态之间的转换。
创建活动
要创建活动,必须创建活动的子类(或其现有子类)。在您的子类中,您需要实现回调方法,当活动在其生命周期的各种状态之间转换时,例如在创建、停止、恢复或销毁活动时,系统将调用这些方法。两种最重要的回调方法是:
onCreate()
必须实现此方法。系统在创建活动时调用此函数。在实现中,应该初始化活动的基本组件。最重要的是,您必须调用setContentView()来定义活动用户界面的布局。
onPause()
系统调用此方法作为第一个指示用户正在离开您的活动(尽管并不总是意味着活动正在被销毁)。这通常是您应该提交任何应该在当前用户会话之后持久化的更改(因为用户可能不会回来)。
您应该使用其他几个生命周期回调方法,以便在活动之间提供流畅的用户体验,并处理导致活动停止甚至破坏的意外中断。所有生命周期回调方法都将在稍后关于管理活动生命周期的部分中讨论。
实现用户界面
活动的用户界面由从View类派生的views对象的层次结构提供。每个视图控制活动窗口内的特定矩形空间,并可以响应用户交互。例如,视图可能是一个按钮,当用户触摸它时,它会启动一个操作。
Android提供了许多现成的视图,可用于设计和组织布局。”“小部件”是为屏幕提供可视(和交互式)元素的视图,例如按钮、文本字段、复选框或只是图像布局”是从ViewGroup派生的视图,这些视图为其子视图(如线性布局、栅格布局或相对布局)提供唯一的布局模型。你也可以应用视图布局和子类来创建你的视图布局和子类。
使用视图定义布局的最常见方法是将XML布局文件保存在应用程序资源中。这样,您就可以独立于定义活动行为的源代码来维护用户界面的设计。可以使用setContentView()将布局设置为活动的UI,并传递布局的资源ID。但是,您也可以在活动代码中创建新视图,并通过在视图组中插入新视图来构建视图层次结构,然后通过将根视图组传递给setCon来使用该布局。
3.2链接(Connection)
【解释】
These steps walk you through all parts of your configuration to help troubleshoot an unsuccessful RPC over HTTP connection.
这些步骤将引导您完成配置的所有部分,以帮助通过 HTTP 连接排除不成功的 RPC。

【链接】
https://www.govconnection.com/
https://www.imdb.com/title/tt0170968/
https://www.merriam-webster.com/thesaurus/connection

【正文】
TCP is a protocol. How is this protocol defined and what is its data format like? If we want to make a deeper analysis, we need to understand and even remember the meaning of each field in TCP protocol. Oh, come on.
The above is the format of TCP protocol header. Because it is too important, it is the basis for understanding other contents. The information of each field will be explained in detail below.
Source port and destination port: occupy 16 bits respectively, indicating the source port number and destination port number; used to distinguish different processes in the host, and IP address is used to distinguish different hosts. The source port number and destination port number, combined with the source IP address and destination IP address in the IP header, can uniquely determine a TCP connection;
Sequence number: used to identify the data byte stream sent from TCP sender to TCP receiver. It represents the serial number of the first data byte in the data stream in this message segment. It is mainly used to solve the problem of network message disorder;
Acknowledgment Number:32 The bit acknowledgement sequence number contains the next sequence number expected by the sending end of the acknowledgement. Therefore, the confirmation sequence number should be the sequence number of the last successful received data byte plus 1. However, only when the ACK flag (described below) in the flag bit is 1, the field of the confirmation sequence number is valid. It is mainly used to solve the problem of no packet loss;
Offset: gives the number of 32 bit words in the header. This value is required because the length of the optional field is variable. This field takes up 4 bits (it can represent up to 15 32 bit words, i.e. 4 * 15 = 60 byte header length), so TCP has a maximum header of 60 bytes. However, there is no optional field and the normal length is 20 bytes;
TCP Flags:TCP There are six flag bits in the header, and many of them can be set to 1 at the same time. They are mainly used to control the state machine of TCP, in turn, urg, ACK, PSH, RST, syn, fin. The meaning of each marker bit is as follows:
Urg: this flag indicates that the emergency pointer field of the TCP packet (which will be mentioned later) is valid. It is used to ensure that the TCP connection is not interrupted, and to urge the m-server device to process the data as soon as possible;
ACK: this flag indicates that the response domain is valid, that is to say, the TCP response number mentioned above will be included in the TCP packet. There are two values: 0 and 1. When it is 1, it means that the response domain is valid; otherwise, it is 0;
PSH: this flag bit indicates the push operation. The so-called push operation means that after the packet arrives at the receiving end, it is sent to the application immediately, rather than queued in the buffer;
Rst: this flag indicates a connection reset request. It is used to reset the connection that caused the error, and also to reject the wrong and illegal packets;
SYN: indicates the serial number of synchronization, which is used to establish the connection. Syn flag and ACK flag are used together. When a connection request is made, syn = 1, ACK = 0; when the connection is responded, syn = 1, ACK = 1; the packets of this flag are often used for port scanning. The scanner sends a syn only packet. If the other host responds to a packet and returns, it indicates that the host has this port; However, because this scanning method is only the first handshake of three TCP handshakes, the success of this scanning means that the scanned machine is not very secure, and a secure host will force a strict connection to carry out the TCP three-way handshake;
Fin: indicates that the sender has reached the end of the data, that is to say, the data transmission between both sides is completed, and there is no data to be transmitted. After sending the TCP packet with fin flag bit, the connection will be disconnected. Packets with this flag are also often used for port scanning.
Window: window size, also known as the sliding window, is used for traffic control. This is a complex problem, which will not be summarized in this post;
OK, the basic knowledge is ready. Let’s start the next part of the journey.
What are three handshakes?
TCP is connection oriented. Before sending data to the other party, a connection must be established between the two parties. In TCP / IP protocol, TCP provides reliable connection service, and the connection is initiated by three handshakes. The purpose of the three handshakes is to synchronize the serial number and confirmation number of both sides of the connection and exchange the TCP window size information. This is the TCP handshake that is often asked about in an interview. Just understanding the concept of TCP triple handshake will not help you get a job. You need to know some details of TCP triple handshake. Let’s talk about it first.
What a clear picture, of course, I did not draw it. I just quoted it to illustrate the problem.

  1. The first handshake: establish a connection. The client sends the connection request message segment with syn position of 1 and sequence number of X; then, the client enters syn_ Send status, waiting for the server’s confirmation;
  2. The second handshake: the server receives the syn message segment. When the server receives the syn message segment from the client, it needs to confirm the syn message segment, and set the acknowledgement number to x + 1 (sequence number + 1); at the same time, it also sends syn request information by setting the syn location as 1 and the sequence number as y; The server will put all the above information into a message segment (syn + ack segment) and send it to the client. At this time, the server enters syn_ Recv status;
  3. The third Handshake: the client receives the syn + ACK message segment from the server. Then set the acknowledge segment number to y + 1 and send the ACK message segment to the server. After the packet segment is sent, both the client and the server enter the established state and complete the TCP handshake three times.

【翻译】
TCP是一个协议,那这个协议是如何定义的,它的数据格式是什么样子的呢?要进行更深层次的剖析,就 需要了解,甚至是熟记TCP协议中每个字段的含义。哦,来吧。
上面就是TCP协议头部的格式,由于它太重要了,是理解其它内容的基础,下面就将每个字段的信息都详 细的说明一下。
Source Port和Destination Port:分别占用16位,表示源端口号和目的端口号;用于区别主机中的不同进程, 而IP地址是用来区分不同的主机的,源端口号和目的端口号配合上IP首部中的源IP地址和目的IP地址就能唯一 的确定一个TCP连接;
Sequence Number:用来标识从TCP发端向TCP收端发送的数据字节流,它表示在这个报文段中的的第一个数据 字节在数据流中的序号;主要用来解决网络报乱序的问题;
Acknowledgment Number:32位确认序列号包含发送确认的一端所期望收到的下一个序号,因此,确认序号应 当是上次已成功收到数据字节序号加1。不过,只有当标志位中的ACK标志(下面介绍)为1时该确认序列号的字 段才有效。主要用来解决不丢包的问题;
Offset:给出首部中32 bit字的数目,需要这个值是因为任选字段的长度是可变的。这个字段占4bit(最多能 表示15个32bit的的字,即4*15=60个字节的首部长度),因此TCP最多有60字节的首部。然而,没有任选字段, 正常的长度是20字节;
TCP Flags:TCP首部中有6个标志比特,它们中的多个可同时被设置为1,主要是用于操控TCP的状态机的,依次 为URG,ACK,PSH,RST,SYN,FIN。每个标志位的意思如下:
URG:此标志表示TCP包的紧急指针域(后面马上就要说到)有效,用来保证TCP连接不被中断,并且督促 中间层设备要尽快处理这些数据;
ACK:此标志表示应答域有效,就是说前面所说的TCP应答号将会包含在TCP数据包中;有两个取值:0和1, 为1的时候表示应答域有效,反之为0;
PSH:这个标志位表示Push操作。所谓Push操作就是指在数据包到达接收端以后,立即传送给应用程序, 而不是在缓冲区中排队;
RST:这个标志表示连接复位请求。用来复位那些产生错误的连接,也被用来拒绝错误和非法的数据包;
SYN:表示同步序号,用来建立连接。SYN标志位和ACK标志位搭配使用,当连接请求的时候,SYN=1, ACK=0;连接被响应的时候,SYN=1,ACK=1;这个标志的数据包经常被用来进行端口扫描。扫描者发送 一个只有SYN的数据包,如果对方主机响应了一个数据包回来 ,就表明这台主机存在这个端口;但是由于这 种扫描方式只是进行TCP三次握手的第一次握手,因此这种扫描的成功表示被扫描的机器不很安全,一台安全 的主机将会强制要求一个连接严格的进行TCP的三次握手;
FIN: 表示发送端已经达到数据末尾,也就是说双方的数据传送完成,没有数据可以传送了,发送FIN标志 位的TCP数据包后,连接将被断开。这个标志的数据包也经常被用于进行端口扫描。
Window:窗口大小,也就是有名的滑动窗口,用来进行流量控制;这是一个复杂的问题,这篇博文中并不会进行 总结的;
好了,基本知识都已经准备好了,开始下一段的征程吧。
三次握手又是什么?
TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号 并交换 TCP窗口大小信息。这就是面试中经常会被问到的TCP三次握手。只是了解TCP三次握手的 概念,对你获得一份工作是没有任何帮助的,你需要去了解TCP三次握手中的一些细节。先来看图说话。
多么清晰的一张图,当然了,也不是我画的,我也只是引用过来说明问题了。
1.第一次握手:建立连接。客户端发送连接请求报文段,将SYN位置为1,Sequence Number为x;然后,客户端进入SYN_SEND状态,等待服务器的确认;
2.第二次握手:服务器收到SYN报文段。服务器收到客户端的SYN报文段,需要对这个SYN报文段进行确认,设置Acknowledgment Number为x+1(Sequence Number+1);同时,自己自己还要发送SYN请求信息,将SYN位置为1,Sequence Number为y;服务器端将上述所有信息放到一个报文段(即SYN+ACK报文段)中,一并发送给客户端,此时服务器进入SYN_RECV状态;
3.第三次握手:客户端收到服务器的SYN+ACK报文段。然后将Acknowledgment Number设置为y+1,向服务器发送ACK报文段,这个报文段发送完毕以后,客户端和服务器端都进入ESTABLISHED状态,完成TCP三次握手。
完成了三次握手,客户端和服务器端就可以开始传送数据。以上就是TCP三次握手的总体介绍。
那四次分手呢?
当客户端和服务器通过三次握手建立了TCP连接以后,当数据传送完毕,肯定是要断开TCP连接的啊。那对于TCP的断开连接,这里就有了神秘的“四次分手”。
1.第一次分手:主机1(可以使客户端,也可以是服务器端),设置Sequence Number和Acknowledgment Number,向主机2发送一个FIN报文段;此时,主机1进入FIN_WAIT_1状态;这表示主机1没有数据要发送给主机2了;
2.第二次分手:主机2收到了主机1发送的FIN报文段,向主机1回一个ACK报文段,Acknowledgment Number为Sequence Number加1;主机1进入FIN_WAIT_2状态;主机2告诉主机1,我也没有数据要发送了,可以进行关闭连接了;
3.第三次分手:主机2向主机1发送FIN报文段,请求关闭连接,同时主机2进入CLOSE_WAIT状态;
4.第四次分手:主机1收到主机2发送的FIN报文段,向主机2发送ACK报文段,然后主机1进入TIME_WAIT状态;主机2收到主机1的ACK报文段以后,就关闭连接;此时,主机1等待2MSL后依然没有收到回复,则证明Server端已正常关闭,那好,主机1也可以关闭连接了。

至此,TCP的四次分手就这么愉快的完成了。当你看到这里,你的脑子里会有很多的疑问,很多的不懂,感觉很凌乱;没事,我们继续总结。
为什么要三次握手?
既然总结了TCP的三次握手,那为什么非要三次呢?怎么觉得两次就可以完成了。那TCP为什么非要进行三次连接呢?在谢希仁的《计算机网络》中是这样说的:
为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。
在书中同时举了一个例子,如下:
“已失效的连接请求报文段”的产生在这样一种情况下:client发出的第一个连接请求报文段并没有丢失,
而是在某个网络结点长时间的滞留了,以致延误到连接释放以后的某个时间才到达server。本来这是一
个早已失效的报文段。但server收到此失效的连接请求报文段后,就误认为是client再次发出的一个新
的连接请求。于是就向client发出确认报文段,同意建立连接。假设不采用“三次握手”,那么只要server
发出确认,新的连接就建立了。由于现在client并没有发出建立连接的请求,因此不会理睬server的确认,
也不会向server发送数据。但server却以为新的运输连接已经建立,并一直等待client发来数据。这样,
server的很多资源就白白浪费掉了。采用“三次握手”的办法可以防止上述现象发生。例如刚才那种情况,
client不会向server的确认发出确认。server由于收不到确认,就知道client并没有要求建立连接。”
这就很明白了,防止了服务器端的一直等待而浪费资源。
为什么要四次分手?
那四次分手又是为何呢?TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工 模式,这就意味着,当主机1发出FIN报文段时,只是表示主机1已经没有数据要发送了,主机1告诉主机2, 它的数据已经全部发送完毕了;但是,这个时候主机1还是可以接受来自主机2的数据;当主机2返回ACK报文 段时,表示它已经知道主机1没有数据发送了,但是主机2还是可以发送数据到主机1的;当主机2也发送了FIN 报文段时,这个时候就表示主机2也没有数据要发送了,就会告诉主机1,我也没有数据要发送了,之后彼此 就会愉快的中断这次TCP连接。如果要正确的理解四次分手的原理,就需要了解四次分手过程中的状态变化。
FIN_WAIT_1: 这个状态要好好解释一下,其实FIN_WAIT_1和FIN_WAIT_2状态的真正含义都是表示等 待对方的FIN报文。而这两种状态的区别是:FIN_WAIT_1状态实际上是当SOCKET在ESTABLISHED状态时, 它想主动关闭连接,向对方发送了FIN报文,此时该SOCKET即进入到FIN_WAIT_1状态。而当对方回应ACK报 文后,则进入到FIN_WAIT_2状态,当然在实际的正常情况下,无论对方何种情况下,都应该马上回应ACK 报文,所以FIN_WAIT_1状态一般是比较难见到的,而FIN_WAIT_2状态还有时常常可以用netstat看到。 (主动方)
FIN_WAIT_2:上面已经详细解释了这种状态,实际上FIN_WAIT_2状态下的SOCKET,表示半连接,也即 有一方要求close连接,但另外还告诉对方,我暂时还有点数据需要传送给你(ACK信息),稍后再关闭连接。 (主动方)

CLOSE_WAIT:这种状态的含义其实是表示在等待关闭。怎么理解呢?当对方close一个SOCKET后发送FIN 报文给自己,你系统毫无疑问地会回应一个ACK报文给对方,此时则进入到CLOSE_WAIT状态。接下来呢,实 际上你真正需要考虑的事情是察看你是否还有数据发送给对方,如果没有的话,那么你也就可以 close这个 SOCKET,发送FIN报文给对方,也即关闭连接。所以你在CLOSE_WAIT状态下,需要完成的事情是等待你去关 闭连接。(被动方)
LAST_ACK: 这个状态还是比较容易好理解的,它是被动关闭一方在发送FIN报文后,最后等待对方的ACK报 文。当收到ACK报文后,也即可以进入到CLOSED可用状态了。(被动方)
TIME_WAIT: 表示收到了对方的FIN报文,并发送出了ACK报文,就等2MSL后即可回到CLOSED可用状态了。 如果FINWAIT1状态下,收到了对方同时带FIN标志和ACK标志的报文时,可以直接进入到TIME_WAIT状态,而无 须经过FIN_WAIT_2状态。(主动方)。
3.3合并(Merge)
【解释】
combine or cause to combine to form a single entity.
组合或导致组合以形成单个实体。

【链接】
https://microsoftedge.microsoft.com/addons/detail/pdf-merge/pnjanoinmphalikklibcgfeknmgfamgi?hl=en-US
https://play.google.com/store/apps/details?id=com.futureplay.mergematch&hl=en_US&gl=US
https://www.sodapdf.com/pdf-merge/

【正文】
Combine PDF files online with ease. Soda PDF is the solution for users looking to merge multiple files into a single PDF document. Our tool is easy to use and FREE*

【翻译】
轻松在线合并 PDF 文件。Soda PDF 是希望将多个文件合并到单个 PDF 文档中的用户的解决方案。我们的工具易于使用,免费*
3.4同步(synchronization)
【解释】
the operation or activity of two or more things at the same time or rate.
同时或速率对两种或两种东西的操作或活动。

【链接】
https://www.merriam-webster.com/dictionary/synchronization
https://docs.microsoft.com/en-us/windows/win32/sync/synchronization
https://www.javatpoint.com/synchronization-in-java

【正文】
concept
When two devices work together and have precise time requirements, they need to be synchronized. Synchronization is based on specifying a common time reference between two devices. For example, if you want to record a 32 track audio signal on two 16 track tape drives, the tape transfer shafts of the two drives need to be locked together. This process is called synchronization. If the two devices are not synchronized, no matter how consistent their starting time is, there will be a time drift due to the difference in the mechanical structure of the two devices.
The synchronization of desktop music production system is usually carried out between sequencer (or sequencer software) and multi track recorder. The main purpose of synchronization is to record different MIDI timbres on a separate track. Even if you only use a multitasking computer (both a sequencer and a digital audio recorder), it also has synchronization problems. Although the computer-based digital audio equipment is much more accurate than the mechanical tape recorder, there will be some problems if there is no synchronization.
When two (or more) devices are synchronized, one is called the master (subject to the time code sent internally), while the other is called the slave. When there is only one slave, the synchronization signal can be sent directly from the master to the slave. In this case, the slave clock mode should be set to “external clock mode”. When there are multiple slaves, a special device to generate synchronization signal is needed as the master to synchronize multiple slaves…

【翻译】
概念
当两个设备一起工作并对时间有精确要求的时候,就需要在它们之间进行同步。同步是基于在两个设备之间规定一个共同的时间参考。例如,你想将32轨的音频信号录制在两台16轨磁带机上,则这两个磁带机的磁带传送轴就需要锁定在一起,这个过程就称为同步。如果这两个设备没有进行同步,无论它们开始的时间多么一致,也会由于两台设备机械结构的差异而产生时间漂移。
桌面型音乐制作系统经常遇到的同步通常是在音序器(或音序软件)与多轨录音机之间进行的,同步的目的主要是将不同MIDI音色的声音录到单独的音轨上。即使你只使用一台多任务型电脑(既是音序器,又是数字音频录音机),它本身也同样存在同步问题。虽然以计算机为基础的数字音频设备比机械式磁带录音机要精确得多,但是如果缺少同步,也会出现一些问题。
当两台(或多台)设备进行同步的时候,其中一台称为主机(以其内部发送的时间码为准),而其它的则称为从机。在只有一台从机的时候,同步信号可直接由主机发送给从机,这时,从机的时钟方式要打到“外部时钟方式”(External Clock Mode)。有多台从机时,则需一个专门产生同步信号的设备作为主机,以便多台从机进行同步。
3.5行为模型方面(behavioral model aspect)
【解释】
A model aspect that emphasizes the behavior of the instances in a system, including their methods, collaborations, and state histories.
强调系统中实例行为的模型方面,包括其方法、协作和状态历史记录。

【链接】
https://www.healthline.com/health/behavioral-therapy
https://behaviormodel.org/
https://www.verywellmind.com/psychological-process-of-addiction-22261

【正文】
Behavioral model
Observer mode
Observer pattern defines a one to many dependency, which allows multiple observer objects to listen to a topic object at the same time. When the state of the subject object changes, it notifies all observer objects so that they can automatically update themselves.

  1. There is a bad side effect of dividing a system into a series of cooperative classes, which is to maintain the consistency of related objects. We do not want to make all kinds of close coupling in order to maintain consistency, which will bring inconvenience to maintenance, extension and reuse;
  2. When one object needs to change other objects at the same time, and it doesn’t know how many objects need to be changed, we should consider using observer pattern;
  3. There are two aspects in an abstraction, one of which depends on the other. In this case, the observer pattern can encapsulate the two in independent objects and make them change and reuse independently;
    All in all, what the observer pattern does is decouple. Let both sides of the coupling depend on abstraction rather than concrete. So that their changes will not affect the changes on the other side.
    Use: use observer mode when one object needs to change other objects at the same time, and the number of other objects is not known.
    Comments: This is a typical spy. Spy is used to transmit information to the organization. The organization makes corresponding adjustments according to the different intelligence.
    Template method
    Define the skeleton of the algorithm in an operation, and delay some of them to subclasses. Template method makes subclass not change the structure of an algorithm, it can redefine some specific steps of the algorithm, transfer invariant behavior to superclass, and remove duplicate code from subclass, which shows its advantages.
    Code repetition is a common phenomenon in programming. If we see repeated code in more than one place, we should try to combine them into one, and the program will become better. Subtle repetition occurs in different but essentially identical structures or steps.
    Think about the importance of the examination paper for millions of times.
    Command mode
    Encapsulating a request as an object allows you to parameterize customers with different requests, queue or log requests, and support revocable operations.
    This means that we can do a lot of things between the two, such as specifying at different times, arranging and executing requests, supporting undo and redo operations, and so on.
    Comments: Division of labor and cooperation, efficiency is the best, do a good job of single responsibility.
    Command mode vs mediator mode vs observer mode: all three use middlemen to communicate between classes. Mediator mode is to solve the interaction between many classes, while command mode decouples the object calling the operation with the object guiding how to implement the operation. When the subject object changes its state, it will inform all observer objects, so that they can automatically communicate with each other Update yourself. The mediator is only for the sake of simple interaction and convenient maintenance, and the command mode can indeed record the whole operation log, so as to find out the cause of system problems in the future and support transactions. Observer pattern is a one to many decoupled way, cut many to yourself do not need to know.
    Chain of responsibility
    To make multiple objects have the opportunity to process the request, so as to avoid the coupling relationship between the sender and receiver of the request, connect the object into a chain, and pass the request along the chain until one object handles it.
    Just like we send express, we can’t send the express directly to the younger brother of SF express, but through a point, and then he is giving it to the head office. The head office will distribute it according to the conditions, and the head office will deal with it one level at a time. Finally, we can go to the brother of SF express. But we don’t need to know the process, we just need express delivery, that’s all.
    Comments: do a good job in the principle of single responsibility, but be careful that the email address is wrongly written and no one receives it.
    State mode
    When an object’s internal state changes, allowing its behavior to change, the object appears to have changed its class. Since all the state related codes are stored in a specific state class, it is easy to add new states and transitions by defining new subclasses.
    Since the state change behavior will also change with the change of state, we need to separate the state, so that the maintenance can be more useful.
    Comments: the open close principle is everywhere.
    Chain of responsibility mode vs state mode: both modes appear when the program needs to make a judgment. The chain of responsibility needs a choice of order, while the state mode does not need a specific order. However, we know that the program is constantly changing, and the so-called change is invariable. Therefore, we need to encapsulate these branches in subclasses separately Let’s dynamically add or modify the items we need to select.

【翻译】
行为型模式
观察者模式(Observer)
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。
1.将一个系统分割成一系列相互协作的类有一个很不好的副作用,那就是需要维护相关对象间的一致性。我们不希望为了维持一致性而使各类紧密耦合,这样会给维护、扩展和重用都带来不便;
2.当一个对象的改变需要同时改变其他对象,而且它不知道具体有多少对象有待改变时,应该考虑使用观察者模式;
3.一个抽象有两个方面,其中一方面依赖于另一方面,这时用观察者模式可以将这两者封装在独立的对象中使它们各自独立地改变和复用;
总之,观察者模式所做的工作其实就是解除耦合。让耦合的双方都依赖于抽象,而不是依赖于具体。从而使得各自的变化都不会影响另一边的变化。
使用:当一个对象的改变需要同时改变其他对象,且不知道其他对象的个数的时候,使用观察者模式。
点评:这就是典型的间谍呀,利用间谍来给组织传输情报,组织在根据情报的不同做出相应的调整。
模板方法模式(TemplateMethod)
定义一个操作中的算法的骨架,而将一些不走延迟到子类中。模板方法使得子类可以不改变一个算法的结构既可以重定义该算法的某些特定步骤,把不变行为搬到超类,去除子类中重复代码体现它的优势。
代码重复在编程中是常见的现象,如果我们在一个以上的地方看到重复的代码,那么我们就该想办法把他们合二为一,程序就会变的更好。微妙的重复会出现在不同但本质相同的结构或步骤中。
点评:想想我们考试的试题吧,总不能把全国好几百万的考生的试卷重复几百万遍吧,继承的重要性。
命令模式(Command)
将请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,队请求排队或记录请求日志,以及支持可撤销的操作。
将调用操作的对象鱼知道如何实现该操作的对象解耦,这就意味着我们可以在这两者之间做很多的事情,比如在不同的时刻指定,排列和执行请求,支持撤销和重做的操作等。
点评:分工合作,效率才是最好的,做好单一职责。
命令模式VS中介者模式VS观察者模式:三者都是运用中间者来进行类与类之间的沟通,中介者模式是解决许多类之间的相互交互,而命令模式是将调用操作的对象与指导如何实现该操作的对象解耦,主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。中介者仅仅是为了交互的简洁和维护的方便,而命令模式的有点确实可以记录整个操作的日志,以便在日后的系统出问题时查找出原因,支持事务。观察者模式是一种一对多的解耦方式,切多到自己不需要知道。
职责链模式(Chain of ResPonsiblity)
使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系,将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理为止。
就像我们送快递,我们不能把快递直接给顺丰快递的小哥,而是通过一个点,然后他在给总公司,总公司在根据条件往下分发,一级一级的处理,最后才能到顺丰快递的小哥那里。但是我们却不需要知道到底经过了那些流程,我们只是需要快递,仅此而已。
点评:做好单一职责原则,但是小心邮件地址写错无人收件。
状态模式(State)
当一个对象的内在状态改变时容许改变其行为,这个对象看起来像是改变了其类。将特定的状态相关的行为都放在一个对象中,由于所有与状态相关的代码都存放在一个具体的状态类中,所以通过定义新的子类可以很容易地增加新的状态和转换。
由于状态的改变行为也会随着状态的变化而变化,所以我们要把状态分开,这样维护才会更用以。
点评:开放-封闭原则真实无处不在。
职责链模式VS状态模式:两者的出现都是在程序需要做出判断的情况下才出现的模式,职责链的需要一个顺序的抉择,而状态模式不需要具体的顺序,但是我们知道程序是不断的变化的,正所谓变才是不变的,所以我们需要把这些分支单独封装的子类中,这样才能让我们动态的去添加或者去修改这些我们需要选择的条件。从而不再需要If或者swith。
解释器模式(interpreter)
给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。可以很容易的扩展和改变文法,
如果一种特定类型的问题发生的频率足够高,那么就可以考虑将该问题的各个实例表述为一个简单语言中的句子,也就是说,通过构建一个解释器,该解释其解释这些句子来解决该问题。这样就不用为没疑问字符串模式都构造一个特定的算法。
点评:专业的东西,咱们就用专业的工具来解决,简单,快捷。
中介者模式(Mediator)
用一个中介对象来封装一些列的交互对象的交互,中介者使各个对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互。一般应用于一组对对象,定义良好,但是复杂的方式进行通信的场所。
由于在面向对象中,我们倡导的是单一职责原则,所以在一个项目中可能会存在非常多的类,这样两个类之间的交互就会形成蜘蛛网型的错乱,对于维护是非常不利的。这时我们就可以建立一个中介者,利用中介者来进行类与类之间的交互,为类之间的交互起到搭桥牵线的作用。
点评:我们的操作系统,是不是就是一个中介者模式呢。
访问者模式(Visitor)
表示一个作用于某对象结构中的各个元素的操作,它使你可以再不改变各元素的类的前提下作用于这些元素的新操作。
元素稳定,但是关于元素的状态的变化确实可以变化的,对于元素稳定,但是对于依赖于复杂对象结构的构建的操作就变的非常的容易,仅需要增加一个新的访问者即可在一个对象的结构上增加一个新的操作。
点评:结构足够稳定,运转变化很多,才能容易使用。
策略模式(Strategy)
用来封装几乎任何类型的规则,只要在分析过程中发现有在不同时间需要不同的业务规则,都可以用策略模式,例如商场的打折、积分都可以。
继承提供了一种支持多种算法或行为的方法,我们可以直接生成一个类A的子类B,C,D,从而给他们不同的行为,但是这样会将行为硬编进A中,对于A的维护是非常不利的,但是我们仔细分析就会发现其实他们只是算法或者行为不同,将算法封装在独立的策略类(Strategy)中,使得你可以独立于A类去改变其他的类,使他已于切换,易于理解,易于扩展,这显然是组合要优于继承。
点评:先组合,在继承。
备忘录模式 Memeton
备忘录模式在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态了。
可以避免暴露一些只应由对象A管理却又必须存在对象A之外的信息,备忘录模式把可能很复杂的对象A的内部信息对其他对象屏蔽起来,从而保持了封装边界。
3.6关联结束(association end)
【解释】
The endpoint of an association, which connects the association to a classifier.
关联(将关联连接到分类器)的终结点。

【链接】
https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/association-end
https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/association-end-multiplicity
https://www.vanguardngr.com/2020/10/endsars-harvard-alumni-association-demands-end-to-killings/

【正文】
An association end identifies the entity type on one end of an association and the number of entity type instances that can exist at that end of an association. Association ends are defined as part of an association; an association must have exactly two association ends. Navigation properties allow for navigation from one association end to the other.

【翻译】
关联端标识关联一端的实体类型以及可以在关联该端存在的实体类型实例数。关联端定义为关联的一部分;关联必须正好有两个关联结束。导航属性允许从一个关联端导航到另一个关联端。
3.7二进制关联(binary association)
【解释】
An association between two classes. A special case of an nary association.
两个类之间的关联。一个纳里协会的特例。

【链接】
https://www.sciencedirect.com/topics/computer-science/binary-association
https://www.uml-diagrams.org/association-reference.html
https://www.britannica.com/topic/measure-of-association

【正文】
Measure of association, in statistics, any of various factors or coefficients used to quantify a relationship between two or more variables. Measures of association are used in various fields of research but are especially common in the areas of epidemiology and psychology, where they frequently are used to quantify relationships between exposures and diseases or behaviours.

【翻译】
在统计学中,用于量化两个或多个变量之间的关系的各种因素或系数的关联度量。关联度用于各种研究领域,但在流行病学和心理学领域尤其常见,它们经常被用来量化接触与疾病或行为之间的关系。
3.8合议图(collanoration diagram)
【解释】
A diagram that shows interactions organized around the structure of a model, using either classifiers and associations or instances and links. Unlike a sequence diagram, a collaboration diagram shows the relationships among the instances. Sequence diagrams and collaboration diagrams express similar information, but show it in different ways. See: sequence diagram.
显示围绕模型结构组织的交互的图表,使用分类器和关联或实例和链接。与序列图不同,协作关系图显示了实例之间的关系。序列图和协作图表示类似的信息,但以不同的方式显示。参见:序列图。

【链接】
https://searchsoftwarequality.techtarget.com/definition/collaboration-diagram
https://www.techopedia.com/definition/16467/collaboration-diagram
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-uml-collaboration-diagram/

【正文】
Collaboration graph is another form of dynamic graph, which emphasizes the organization of objects participating in interaction.
The action of picking up the car starts from the customer. She sends a message showing the list to the reservation application module, and then the staff of the company sends a check message to the reservation application module. After receiving the message check information, the reservation application will reply to the company employee that the application exists, and then reply to the customer to allow the customer to pick up the car. After receiving the message, the employees fill in the work record and register the car status.
The exchange of collaboration diagram and sequence diagram
The process of student degree evaluation is as follows: the academic administrators input the student number of the student to be evaluated into the preliminary degree evaluation module, and the preliminary degree evaluation module will query the corresponding sketching results and rewards and punishment records as the basis for degree evaluation. The preliminary degree evaluation module prints the results of the preliminary evaluation, and the printed version of the preliminary evaluation is submitted to the academic staff, and the control flow ends.

【翻译】
前言:协作图是动态图的另一种表现形式,它强调参加交互的各对象的组织。
取车的动作从客户开始,她向预定申请模块发送出示清单的消息,然后由公司员工向预定申请模块发送核对的消息,预定申请在收到消息核对的信息后,回复公司员工申请存在,然后再回复客户允许客户取车。公司员工收到消息后填写工作记录和登记汽车状态。
协作图与时序图的互换
学生学位评审的流程如下:教务人员将需评审的学生的学号输入学位初评模块,学位初评模块会查询相应写生的成绩和奖惩记录来作为学位评定的依据。学位初评模块将初评的结果打印,学位初评打印稿被提交给教务人员,控制流结束。
3.9部署图(deployment diagram)
【解释】
A diagram that shows the configuration of run-time processing nodes and the components, processes, and objects that live on them. Components represent run-time manifestations of code units.See: component diagrams
让皮亚吉特学习心理学,专注于思维的发展和儿童的发展。在他的研究中,他发现7至11岁的孩子发展的能力,他这就是他所学的多重分类。多重分类是根据公共功能将对象重新组合到类和子类的层次结构中。

【链接】
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-deployment-diagram/
https://creately.com/blog/diagrams/deployment-diagram-tutorial/
https://www.lucidchart.com/pages/uml-deployment-diagram

【正文】
The Unified Modeling Language (UML) is the standard language that many software engineers and business professionals use to create a broad overview for complex systems. A deployment diagram is one type of diagram created with this language. Along with our UML diagramming tool, use this guide to learn more about deployment diagrams.

【翻译】
在面向对象的编程中,多重继承是属性,其中类继承多个类的属性。Java 不支持通过类进行多重继承。在 java 中,使用接口实现多个继承。接口包含方法和常量。这些方法是抽象的,没有方法体。这些方法通过类实现。要了解有关接口的更多信息,请阅读以下操作:在 Java 中使用接口并举例说明
3.10控制焦点(focus of control)
【解释】
A symbol on a sequence diagram that shows the period of time during which an object is performing an action, either directly or through a subordinate procedure.
序列图上的符号,显示对象直接或通过从属过程执行操作的时间段。

【链接】
https://www.businessmanagementideas.com/notes/focus-of-control-meaning-features-and-levels/5233
https://www.psychologytoday.com/us/blog/moments-matter/201708/locus-control
https://www.psychologydiscussion.net/articles/locus-of-control-meaning-types-and-influence-psychology/1424

【正文】
Locus of control refers to one’s assumption about responsibility for good and bad events. Every person during his lifetime comes across some good and some had outcomes. While he acts to maximise the possibility of good outcomes and enjoys the success of his life, he tries to minimise the possibility of bad outcomes.

【翻译】
控制源是指一个人对好与坏事件负责的假设。每个人在他有生之年都会遇到一些好结果,有些人也有结果。虽然他的行为是为了最大限度地提高良好结果的可能性,并享受他一生的成功,他试图尽量减少坏结果的可能性。
第四页作业
4.1一般化(generalization)
【解释】
a general statement that is based on only a few facts or examples; the act of making such statements
仅基于少数事实或实例的一般性陈述;作出这种陈述的行为

【链接】
generalization noun - Definition, pictures, pronunciation … (oxfordlearnersdictionaries.com)
https://www.freethesaurus.com/generalization
https://legal-dictionary.thefreedictionary.com/generalization

【正文】
Fear not the new generalization. Does the fact look crass and material, threatening to degrade thy theory of spirit?
The very hopes of man, the thoughts of his heart, the religion of nations, the manners and morals of mankind are all at the mercy of a new generalization. Generalization is always a new influx of the divinity into the mind.

【翻译】
不要害怕新的概括。事实看起来愚蠢和物质, 威胁要贬低你的精神理论吗?人类的希望、他心中的思想、国家的宗教、人类的礼仪和道德,都受制于一种新的概括。泛化总是神性进入心灵的新潮。
4.2执行(implementation)
【解释】
Beginning to use good scientific judgment, statistical analysis, root cause identification, robust solution implementation.
开始运用良好的科学判断、统计分析、根本原因识别、稳健的解决方案实施。

【链接】
https://www.healthline.com/health/pregnancy/implantation-cramping
https://medical-dictionary.thefreedictionary.com/implementation
https://www.merriam-webster.com/thesaurus/implementation

【正文】
Pregnancy happens when an egg is fertilized by sperm in the fallopian tubes. Once fertilized, the cells start to multiply and grow. The zygote, or fertilized egg, travels down into the uterus and becomes what’s called a morula. In the uterus, the morula becomes a blastocyst and eventually burrows into the uterine lining in a process called implantation.

【翻译】
当卵子由输卵管中的精子受精时,就会发生妊娠。一旦受精,细胞开始繁殖和生长。受精卵,或受精卵,向下进入子宫,成为所谓的莫拉。在子宫中,莫拉成为一个胚胎,并最终在称为植入的过程中钻进子宫内膜。
4.3继承(inheritance)
【解释】
a thing that is inherited.
继承的东西。

【链接】
https://www.state.nj.us/treasury/taxation/inheritance-estate/inheritance.shtml
https://www.investopedia.com/terms/i/inheritance.asp
https://www.rottentomatoes.com/m/inheritance_2020

【正文】
Inheritance refers to the assets that an individual bequeaths to his or her loved ones after he or she passes away. An inheritance may contain cash, investments such as stocks or bonds, and other assets such as jewelry, automobiles, art, antiques, and real estate.

【翻译】
继承是指个人在去世后遗赠给其亲人的资产。遗产可能包含现金、股票或债券等投资,以及其他资产,如珠宝、汽车、艺术品、古董和房地产。
4.4接口(interface)
【解释】
a point where two systems, subjects, organizations, etc. meet and interact.
两个系统、主体、组织等相互影响和相互作用的点。

【链接】
https://www.interface.com/US/en-US/carpet-tile/featured
https://www.amazon.com/Computer-Recording-Audio-Interfaces/b?node=11973691
https://www.javatpoint.com/interface-in-java

【正文】
An interface in Java is a blueprint of a class. It has static constants and abstract methods.The interface in Java is a mechanism to achieve abstraction. There can be only abstract methods in the Java interface, not method body. It is used to achieve abstraction and multiple inheritance in Java.In other words, you can say that interfaces can have abstract methods and variables. It cannot have a method body.

【翻译】
Java 中的接口是类的蓝图。它有静态常量和抽象方法。Java 中的接口是实现抽象的机制。Java 接口中只能有抽象方法,不能有方法正文。它用于在 Java 中实现抽象和多重继承。换句话说,您可以说接口可以具有抽象方法和变量。它不能具有方法体。
java 中的同步是控制多个线程对任何共享资源的访问的功能。
4.5元模型(metamodel)
【解释】
The Art of Software Architecture Design Methods and Techniques
软件体系结构设计方法与技术的艺术

【链接】
https://www.uml-diagrams.org/uml-meta-models.html
https://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/metamodel.html
https://iso20022.plus/model/metamodel/

【正文】
If someone ever wants to get brainsick and/or feel defeated, the easiest way is to try to comprehend the UML metamodeling approach which is used by OMG to describe UML.The metamodeling approach means that “a metamodel is used to specify the model that comprises UML”. This approach supposedly “offers the advantages of being more intuitive and pragmatic for most implementors and practitioners.” Let’s take a look at some details of the approach.

【翻译】
如果有人想要得脑筋不从,/或感到被打败,最简单的方法是尝试理解由 OMG 用来描述 UML 的 UML 元模型方法。
元模型方法意味着"元模型用于指定包含 UML 的模型"。这种方法被认为"为大多数实施者和实践者提供了更直观、更务实的优势"。让我们看看该方法的一些细节。
4.6模块(module)
【解释】
each of a set of standardized parts or independent units that can be used to construct a more complex structure, such as an item of furniture or a building.
一组标准化部件或独立单元,可用于构建更复杂的结构,如家具或建筑物。

【链接】
https://www.britannica.com/technology/module-building
https://www.haskell.org/tutorial/modules.html
https://webpack.js.org/concepts/module-federation/

【正文】
Modules are executed within their own scope, not in the global scope; this means that variables, functions, classes, etc. declared in a module are not visible outside the module unless they are explicitly exported using one of the export forms. Conversely, to consume a variable, function, class, interface, etc. exported from a different module, it has to be imported using one of the import forms.

【翻译】
模块在它们自己的范围内执行,而不是在全球范围内执行;这意味着模块中声明的变量、函数、类等在模块之外不可见,除非它们使用其中一个导出窗体显式导出。相反,要使用从其他模块导出的变量、函数、类、接口等,必须使用其中一个导入窗体导入它。
4.7多样性(multiplicity)
【解释】
Mr. Putin 'needs there to be a multiplicity of oligarchs for him to keep power, ’ said one person close to Rusal.
一位接近俄罗斯铝业的人士说,普京需要有多种寡头来维持权力。

【链接】
https://www.stardock.com/products/multiplicity/
https://www.imdb.com/title/tt0117108/
https://courses.lumenlearning.com/vccs-mth163-17sp/chapter/identify-zeros-and-their-multiplicities/

【正文】
Our KVM switch virtualization frees up your workspace, removing the cables and extra hardware of a traditional KVM switch. Whether you are a designer, editor, call center agent or road warrior using both a PC and laptop, Multiplicity makes working across multiple computers a breeze.

【翻译】
我们的 KVM 交换机虚拟化可释放您的工作空间,消除传统 KVM 交换机的电缆和额外硬件。无论您是使用 PC 和笔记本电脑的设计师、编辑、呼叫中心代理还是道路战士,倍增使跨多台计算机工作变得轻松自如。
《需求工程——软件建模与分析》读后感:
读软件需求分析首先明确了软件需求包含的三个不同层次,业务需求即组织机构或客户的需求目标,用户需求即用户使用产品必须要完成的任务,功能需求即开发人员需要实现的软件功能。从需求的定义上我们可以知道需求关注的是究竟想开发什么与设计细节实现细节项目规划信息或者测试信息无关,不重视需求过程会给项目带来极大风险,所以在需求过程中我们要注意避免以下几种情况,无足够用户参与,用户需求不断扩展,用户需求不明确或者说模棱两可,不必要的特性即为软件画蛇添足,过于精简的规格说明,忽略了用户分类,不准确的计划,而高质量的需求过程要求产品开发过程中的通力合作同时充分了解其市场,因此要想完成一份优秀的需求就必须具备完整性(功能完整),正确性(准确陈述其功能),可行性,必要性(每项需求都硬把客户真正需要的和最终系统),划分优先级,无二义性(只能有一个明确统一的解释),可验证性等特性。同时需求规格说明也需具备完整性,一致性,可修改性,可跟踪性(即每项软件需求与它的根源和设计元素,源代码,测试用例之间建立起链接链)。

那么什么是需求工程?需求工程是所有需求处理活动的综合,它收集信息、分析问题、整合挂点、记录需求并验证其正确性,最终反应软件被应用后与其环境互动形成的期望效应。需求工程是为了在软件开发前需要软件工程师们去了解并去设计出一套解决方案。因为软件工程师并不是了解所有领域。所以更加需要更用户沟通。需求工程十分重要。虽然人们很早就认识到这一点,但是在时间、人力、物力、财力的投入上却并没有那么重要。事后必然会导致需求分析水平低,软件开发质量低,用户抱怨多的问题出现。

为了解决这样的问题需求分析师们必须具备以下技能以方便、明确、成功的做出需求分析:

1.需要专业技能,懂得需求工程的相关知识、理解需求工程的相关理论、熟悉需求工程的各项活动、掌握需求工程的各种办法与技术是必须得;

2.是要有分析技能,必须可以从大量信息中提取、分析、整合出有用的信息处理,了解用户需求中的冲突与遗漏,分析可行性;

3.需要交流技能,这是必须的,要掌握交谈和提问的技巧,否则很难跟不懂软件的客户出现隔阂,隔行如隔山,大家不能各说各的吧;

4.观察技能、建模技能、写作技能、创新技能、协调技能等。需求工程师应该具有敏锐的洞察力,可以通过观察用户的工作环境和工作过程,发现通过谈话及其他方法所无法发现的重要信息。同时也应该掌握从传统流程图到结构化的分析模型,直至当今的统一建模语言等多种分析工具。因为需要跟客户、管理人员、开发人员等交涉信息,所以需要写好书面的需求规格说明书。写作技能是必须的。需求工程师需要通过写作清晰的表达出复杂的概念。

图书销售系统项目的发展建议
摘要:随着社会的不断发展,信息技术的不断进步,图书销售系统也得到了很大的发展。图书馆管理系统是图书资源、储存等相关信息的重要工具,将会直接影响到整个图书馆管理工作的效率以及质量。本文主要是对图书馆销售系统的发展趋势进行了研究与探讨,并且提出了相关的建议。
1、在开发的时候要尽可能的编写文档,保证项目在之后可以维护且发展
2、要注重数据的安全问题,保证用户信息安全。
3、完善界面增强用户体验。

你可能感兴趣的:(A002-185-2531)