精华内容
下载资源
问答
  • 产品一致性说明
    千次阅读
    2021-01-17 02:32:48

    但不知道质量一致性检验是什么意思,以及他和型式检验的区别。

    通常,产品生产时在工艺不变,原材料基本一致的情况下,有些质量指标是基本不变的。因此,在产品生产质量控制中,可以对其中有些指标不做监控。型式检验一般是对.

    层次分析法中一致性检验指标ci不可以小于0,cr小于0.1判断矩阵才满足一致性检验,有时候可以等于0,但不能为负。若为负的话,说明数值错了。

    请把原因解释的尽量详细一些,谢谢~~~

    首先要知道,判断矩阵是各层次各因素之间进行两两比较相对重要性而得来的。那么. 但要求判断矩阵具有大体的一致性,所以需要进行一致性检验。这是我的理解~

    带有一致性检查的同步(也可以简称为一致性检查)是 DPM 用来检查和更正受保护数据源及其副本之间的不一致性的过程。作为同步过程的一部分,一致性检查执行逐个.

    甲从50个样品中用自己的方法检验出10个合格品,乙从同样这50个样品中用.

    一致性检验是为了检验各元素重要度之间的协调性,避免出现A比B重要,B比C重要,而C又比A重要这样的矛盾情况出现。1、一致性是指事务的基本特征或特性相同,其.

    判断矩阵通常的是不一致的,但是为了能用它的对应于最大特征根的特征向量作为被比较因素权向量,其不一致程度应在容许的范围内.

    层次分析法是指将与决策总是有关的元素分解成目标、准则、方案等层次,在此基础. 必须对判断矩阵是否可接受进行鉴别,这就是一致性检验的内涵。

    %以下是一致性检验CI=(t-n)/(n-1); CI=(t-n)/(n-1); RI=[0 0 0.52 0.89 1.12 1.26 。

    一致性检验能不能通过和RI矩阵有关系的,你这个检验要求更严格一些所以通zd过不了。我这有推荐的RI矩阵,你可以用我的这个函数试试,应该没问题。或者你自己更回.

    kappa运行参数是什么数据类型

    在诊断试验中,研究者希望考察不同诊断方法在诊断结果上是否具有一致性,比如:不同医务工作者对同一组病人的诊断结果是否一致、不同的诊断方法对同一个样本或研.

    检验一致性:(1)计算一致性指标C.I.=(最大特征值-n)/n-1 ; (2)找出相应的平均随机一致性指标R.I.; (3)计算一致性比例C.R.=C.I./R.I.;当C.R.

    期待看到有用的回答!

    我印象中好像是要用卡方的同质性还是一致性检验,但是又记得那是a*b列联。

    你的目的是比较两组被试的性别、受教育程度、年龄是否一来致吧,那就用普通的卡方分析就可以了,也自就是比较两组的性别、受教育程度、年龄是否存在差异,如果不.

    我不太清楚为什么要做一致性检验,请大大们解释一下,谢谢。

    意义:一致性检验是为了检验各元素重要度之间的协调性,避免出现A比B重要,B比C重要,而C又比A重要,这样的矛盾情况出现。在确定各层次各因素之间的权重时,.

    有多项检测检验点合格率最小的,如有3项检验点合格率分别为90%,80%,70%,其:逐项检验点合格率即满足大于70%的条件,且不合格点不集中。如有1项合格率小于70.

    确实是应该使用Kappa一致性检验评价结果的一致性。任何版本的SPSS都可以做Kappa一致性检验(被包含在卡方检验程序中),步骤跟做卡方检验基本相同,只需在卡.

    AHP模型有四层的时候,怎样进行总排序一致性检验?谢谢各位大虾

    无论多少层,都是从上到下,一层一层进行层次总排序和检验。您可以登录www.ahptool.net查看关于AHP的说明。

    认为判断矩阵中的不一致是由强矛盾判百断、弱矛盾判断、标度离散性、标度有限性共同作用的结果度.论文关于判断矩阵不一致性原因的分析及对一致性调整的解知决方案.

    请问一下矩阵一致性检验具体的计算步骤方法是什么?题目如图 对于计算步骤。

    如果是用spssau分析的话,结果会直接得到一致性检验的结果。具体可以查看spssau帮助手册:层次分析法-SPSSAU

    可以换一种标度方法,不一定要用1-9,可以用e的0/5次方到e的8/5次方标度方法。这个标度方法的一致性检验容易通过。可以下载yaahp自动计算。

    一致性检验是为了检验各元素重要度之间的协调性,避免出现A比B重要,B比C重要,而C又比A重要这样的矛盾情况出现

    更多相关内容
  • 对于分布式系统而言,一致性是在探讨当系统内的一份逻辑数据存在多个物理的数据副本时,对其执行读写操作会产生什么样的结果,这也符合 CAP 理论对一致性的表述。 而在数据库领域,一致性与事务密...

    系列笔记来自极客时间课程《分布式数据库30讲》分布式数据库30讲_分布式数据库_数据库_分布式_后端_架构_分布式系统_分布式存储_后端存储_后端开发_DDB-极客时间

    零、 基础概念

    1. 分布式数据库外部特性

    写多读少、低延时、海量并发、海量存储、高可靠性、关系型数据库

    2. BASE原则

    BASE 代表了三个特性:

    • BA 表示基本可用性(BasicallyAvailable)
    • S 表示软状态(Soft State)
    • E 表示最终一致性(EventualConsistency)

    具体含义:

    • 基本可用性:系统某些部分出现故障,其余部分依然可用。
    • 软状态或柔性事务:数据处理过程中,存在数据状态暂时不一致的情况,但最终会实现事务的一致性。
    • 最终一致性:在主副本执行写操作并反馈成功时,不要求其他副本与主副本保持一致,但在一段时间后这些副本最终会追上主副本的进度,重新达到数据状态的一致。也就是说,各副本数据中途可以不一致,但最后一定要是一致的。

    一、 一致性

           对于分布式系统而言,一致性是在探讨当系统内的一份逻辑数据存在多个物理的数据副本时,对其执行读写操作会产生什么样的结果,这也符合 CAP 理论对一致性的表述。

           而在数据库领域,一致性与事务密切相关(ACID),研究如何协调事务之间的冲突。

           因此,当我们谈分布式数据库的一致性时,实质上是在谈数据一致性和事务一致性两个方面。

           

           本文主要介绍数据一致性,及其常用模型。

    二、 数据一致性

    1. 两种观察视角

        状态一致性:数据所处的客观、实际状态所体现的一致性;

        操作一致性:外部用户通过协议约定的操作,能够读取到的数据一致性

    2. 状态一致性(强、弱一致性)

            任何变更操作后,数据只有两种状态,所有副本一致或者不一致。

            在某些条件下,不一致的状态是暂时,还会转换到一致的状态(最终一致),所以习惯上大家会把不一致称为“弱一致”。相对的,一致就叫做“强一致”了。

    举个例子

            这种模式的副作用体现在以下两点:性能差,可用性问题(任何一台故障均不可用)。

            NoSQL 产品是应用弱一致性的典型代表,但接受度仍然是有限的,这就是BASE 理论中的 E 所代表的最终一致性(Eventually Consistency),弱于最终一致性的产品就几乎没有了。

    3. 操作一致性

           最终一致性,在语义上包含了很大的不确定性,所以很多时候并不是直接使用,而是加入一些限定条件,也就衍生出了若干种一致性模型。

    • 写后读一致性
    • 单调读一致性
    • 前缀一致性
    • 线性一致性
    • 因果一致性 ...

    五、 常见操作一致性模型

    1. 写后读一致性

            写后读一致性(Read after Write Consistency),也称为“读写一致性”,或“读自己写一致性”(Read My Writes Consistency)

           自己写入成功的任何数据,下一刻一定能读取到,其内容保证与自己最后一次写入完全一致,这就是“读自己写一致性”名字的由来。

    2. 单调读一致性

           在小明发布照片后的瞬间,小红也刷新了朋友圈,此时读取到副本 R1,所以小红看到了照片;片刻之后,小红再次刷新,此时读取到的副本是 R2,于是照片消失了。小红以为小明删除了照片,但实际上这完全是程序错误造成的,数据向后回滚,出现了“时光倒流”。想要排除这种异常,系统必须实现单调读一致性。

           单调读一致性(Monotonic Read Consistency)的定义:一个用户一旦读到某个值,就不会读到比这个值更旧的值。

    3. 前缀一致性

    在一些更复杂的场景下还是会出现时间的扭曲,再用一个例子来说明

           小明和小红的评论分别写入了节点 N1 和 N2,但是它们与 N3 同步数据时,由于网络传输的问题,N3 节点接收数据的顺序与数据写入的顺序并不一致,所以小刚是先看到答案后看到问题。

           显然,问题与答案之间是有因果关系的,但这种关系在复制的过程中被忽略了,于是出现了异常。保持这种因果关系的一致性,被称为前缀读或前缀一致性(Consistent Prefix)。要实现这种一致性,可以考虑在原有的评论数据上增加一种显式的因果关系,这样系统可以据此控制在其他进程的读取顺序。

    4. 线性一致性

           在“前缀一致性”的案例中,问题与答案之间存在一种显式声明,但在现实中,多数场景的因果关系更加复杂,也不可能要求全部做显式声明。所以,更可靠的方式是将自然语意的因果关系转变为事件发生的先后顺序。

           线性一致性(Linearizability)就是建立在事件的先后顺序之上的。在线性一致性下,整个系统表现得好像只有一个副本,所有操作被记录在一条时间线上,并且被原子化,这样任意两个事件都可以比较先后顺序。但是,集群中的各个节点不能做到真正的时钟同步,这样节点有各自的时间线。如何将操作记录在一条时间线上呢?这就需要一个绝对时间,也就是全局时钟。

           从产品层面看,主流分布式数据库大多以实现线性一致性为目标,在设计之初或演进过程中纷纷引入了全局时钟,比如 Spanner、TiDB、OceanBase、GoldenDB 和巨杉等等。

           工程实现上,多数产品采用单点授时(TSO),也就是从一台时间服务器获取时间,同时配有高可靠设计; 而 Spanner 以全球化部署为目标,因为 TSO 有部署范围上的限制,所以Spanner 的实现方式是通过 GPS 和原子钟实现的全局时钟,也就是 TrueTime,它可以保证在全球范围内任意节点能同时获得的一个绝对时间,误差在 7 毫秒以内。

    5. 因果一致性

            因果一致性的基础是偏序关系,也就是说,部分事件顺序是可以比较的。至少一个节点内部的事件是可以排序的,依靠节点的本地时钟就行了;节点间如果发生通讯,则参与通讯的两个事件也是可以排序的,接收方的事件一定晚于调用方的事件。

            基于这种偏序关系,Leslie Lamport 在论文“Time, Clocks, and the Ordering of Events in a Distributed System”中提出了逻辑时钟的概念。

            借助逻辑时钟仍然可以建立全序关系,当然这个全序关系是不够精确的。因为如果两个事件并不相关,那么逻辑时钟给出的大小关系是没有意义的。多数观点认为,因果一致性弱于线性一致性,但在并发性能上具有优势,也足以处理多数的异常现象,所以也在工业界得到了应用。

    展开全文
  • 当你的问题思考提升一个层次,从前端框架设计角度思考的时候,会不会思考这样的问题:对于交互样式比较固定的业务系统,能否基于UI一致性、UI设计规范进行规范的交互方式、页面及组件样式设计,简易高效的进行界面...


    一、前言

    做前端开发一段时间后,你会不会发现自己在持续的做着页面重复开发的工作,后面甚至干脆是Ctrl+CCtrl+V操作。你可能会说,那就使用组件啊!的确,通过抽取公用视图,创建子组件的方式确实可以提升代码复用度。上面是回答是基于你做程序员开发某个产品模块功能点的时候做出的。当你的问题思考提升一个层次,从前端框架设计角度思考的时候,会不会思考这样的问题:对于交互样式比较固定的业务系统,能否基于UI一致性、UI设计规范进行规范的交互方式、页面及组件样式设计,简易高效的进行界面搭建?通过搭建可视化、所见即所得的Web APP代码自动化生成平台降低前端开发的学习成本和门槛应如何设计?如何应用以上特性最大化实现产品UI一致性,提升用户体验?

    基于此,自己阅读了大量的文献资料,例如,美团的“乐高”、阿里的“飞冰”等,并以此探究如何最优实现前端产品开发的持续性,提升用户体验。

    二、痛点

    为满足业务层面的快速发展,在开发过程中由于UI缺乏标准,设计层面缺乏标准化的规范约束,UI设计风格不统一,导致的用户体验不佳问题不断凸显,很难去落实统一的设计规范,具体体现在以下4个层面:

    • 设计层面:由于UI缺乏标准化设计规范,在不同Web App及不同开发语言平台上设计风格不统一,导致用户体验不一致;设计资源与代码均缺乏统一管理手段,无法实现知识积累沉淀,无法适应新业务的快速开发需求。

    • 开发层面:组件代码碎片化,存在重复开发的情况,产出质量难以保证;由于各端代码API不统一,维护拓展成本较高,变更主题、适配Dark Mode等需求难以实现。

    • 测试层面:重复走查,频繁回归,每次版本出库均需验证组件质量。

    • 产品层面:版本迭代效率低,版本需求吞吐量低,不具备业务的快速拓展能力。

    为改善用户端体验的一致性,提升多技术方案间组件的通用性和复用率,降低整体视觉改版带来的研发成本,需要PM/UI/RD共同维护一套设计规范,在产品上统一风格,在源头上统一设计,在代码中统一实现。

    基于上述开发工作中的切实痛点,以及未来可预见的Web端能力需求,迫切需要一套统一的UI设计规范,以此沉淀设计风格,建立统一的UI设计标准。

    通过抽离成熟的业务场景,建立可提供高质量、可扩展、可统一配置的基于ElementUIiViewAnt-design-vue等主流UI样式库的组件代码库,使之具备支持多业务高层次的代码复用能力,进而提高UI业务中台能力,使项目保持高度一致性。

    UI一致性是绝大部分研发团队面临的共性问题,大家对落地设计规范,提高UI中台能力,提升产研效率具有强烈的诉求。通过UI一致性的建设,不仅可以在品牌上实现体验升级,更可以全面提高产研效率,为业务的快速迭代提供有力支持和有效保障。

    统一的品牌符号、品牌特征,有助于加深产品在用户心目中的印象。统一的用户界面和交互形式,能帮助用户加深对产品的熟悉感和信任感。而一个好的设计语言可以在体验上为产品加分,也能够更好的创造一致性体验。

    为了帮助更多的业务模块定制符合一致性原则的专属设计风格,可在实践中不断总结经验,开发一套通用的UI一致性解决方案。通过UI一致性工具链落地项目建设,并打造一整套的闭环UI开发流程。

    三、方案全景

    美团外卖UI一致性套件由积木工具链代码组件库定制化设计云协作平台以及文档化说明(官网)四部分组成。

    • 积木工具链:通过建立包含相同设计元素的统一物料市场PM通过Axure插件拾取物料市场中的组件产出原型稿;UI/UE通过Sketch插件落地物料市场中的设计规范,产出符合要求的设计稿。未来,希望通过高保真原型输出,可以给中后台项目、非依赖体验项目提供更好的服务体验,赋予产品同学直接向技术侧输出原型稿的能力。

    • 代码组件库ElementUIiViewAnt-design-vue):设计稿中的组件与RD代码仓库中组件一一对应。

    • 定制化设计云协作平台:与美团内部的印迹团队(云协作平台)合作开发,在RD的设计稿中标注了哪些是代码组件库中已有的元素,避免重复开发,同时关联了官网中该组件的使用说明,是代码组件库与官网的纽带。

    • 文档化说明:官网详细描述了代码组件库的集成方式、组件的使用方法,降低开发上手难度,只需要理解接口和职责即可进行业务开发。

    3.1 拓展阅读 什么是UI/UE设计?

    3.1.1 什么是 UE 设计?

    UE设计一般指游戏设计或游戏相关设计,还有网站的ue设计,其实就是UserExperience的缩写。是指用户访问一个网站或者使用一个产品时的全部体验。他们的印象和感觉,是否成功,是否享受,是否还想再来/使用,他们能够忍受的问题,疑惑和BUG的程度。

    UE是一种纯主观的在用户使用一个产品(服务)的过程中建立起来的心理感受。因为它是纯主观的,就带有一定的不确定因素。个体差异也决定了每个用户的真实体验是无法通过其他途径来完全模拟或再现的。但是对于一个界定明确的用户群体来讲,其用户体验的共性是能够经由良好设计的实验来认识到。

    而UE设计就是指设计人和产品或服务互动的一种机制,以用户体验为基础进行的人机交互设计时要考虑用户的背景、使用经验以及在操作过程中的感受,从而设计符合最终用户的产品,使得最终用户在使用产品时愉悦、符合自己的逻辑、有效完成并且是高效使用产品。交互设计的目的是使产品让用户能简单使用。任何产品功能的实现都是通过人和机器的交互来完成的。因此,人的因素应作为设计的核心被体现出来。

    3.1.2 UI 设计是什么?

    ui的全称是:UserInterface即用户界面,是指对软件的人机交互、操作逻辑、界面美观的整体设计。很多同学不知道ui是什么,以为画个ICON图标就是做ui了,导致很多人都忙着画各种各样的图标,这样很容易让那些新人们走错路。

    软件设计可分为两个部分:编码设计与UI设计。编码设计大家都很熟悉,但是UI设计还是一个很陌生的词,即使一些专门从事网站与多媒体设计的人也不完全理解UI的意思。UI的本意是用户界面,是英文User和interface的缩写。从字面上看是用户与界面2个组成部分,但实际上还包括用户与界面之间的交互关系。

    界面设计。在漫长的软件发展中,界面设计工作一直没有被重视起来。做界面设计的人也被贬义的称为“美工”。其实软件界面设计就像工业产品中的工业造型设计一样,是产品的重要买点。一个友好美观的界面会给人带来舒适的视觉享受,拉近人与电脑的距离,为商家创造卖点。界面设计不是单纯的美术绘画,他需要定位使用者、使用环境、使用方式并且为最终用户而设计,是纯粹的科学性的艺术设计。

    3.1.3 UE 与 UI 的区别

    简单的说UE多一个动效,UI就是图标。UE和UI在一定程度上是有所不同的,UI重视的是为用户提供良好的感官,而UE重视的是对用户行为的引导。两者应该是互相包含,互相影响。

    UI是使用界面,UE是使用感受,就拿京东和中国亚马逊来说,UI设计各有千秋,但是按照中国人的使用习惯京东的UE感觉更好,或许外国人的使用感受亚马逊更好,UI是客观的UE较为主观。在产品开发中,尤其是手机或者网站的开发过程中,最关键的是UI和UE。UE是用户体验设计师,UI是视觉设计师。通俗点讲,用户体验设计师就是管产品好不好用,是不是人性化。视觉设计师就是产品的美观。

    在图形界面产生之前,长期以来UI设计师就是指交互设计师。交互设计师的工作内容就是设计软件的操作流程,树状结构,软件的结构与操作规范(spec)等。一个软件产品在编码之前需要做的就是交互设计,并且确立交互模型,交互规范。

    四、UI一致性协作闭环流程

    1. 设计师逐步将设计语言沉淀为设计规范(包括组件、颜色、字体、图片等)上传至仓库供整个设计团队查阅,同时将其量化并内置于积木Sketch插件中;开发工程师负责将其代码化,针对ElementUIiVIewAnd-design-vue等主流UI框架进行组件库开发。

    2. 设计师使用积木Sketch插件绘制设计稿,可以保证设计元素均从既定的设计标准中获取,产出符合业务设计规范的设计稿,而代码组件库中也有对应的实现。

    3. 绘制完成的设计稿上传至协作平台,交付开发工程师进行设计稿还原。

    4. 开发工程师拿到设计稿后,就可以知道本次需求哪些组件已内置于代码组件库中,并可以点击设计稿中的链接,直接查看组件的使用说明。

    虽然UI一致性落地会增加开发工程师一定的工作量,推进一致性建设也是一个艰难的工作,且由于成本较高,无法量化评估收益,但一旦有效运作起来后,团队将获得丰厚的回报。UI一致性的建设需要设计者对现有状态有足够的认识,对业务有充分理解,以及优秀的设计能力,同时还要不断地进行实践和优化。为了保证一致性项目的成功落地,避免“半途而废”,可通过制定一系列的推进措施来提高执行力与产出质量:

    1. 项目小组不能脱离日常需求开发工作。这样可以保证设计师所沉淀的设计元素始终来自于最新的业务场景,同时项目产出可以快速应用到最新的版本中得以验证。

    2. 优先选择受视觉因素影响较大、投入产出比高的模块场景进行改造,化繁为简,确定最小验证闭环 (MVP,Minimum Viable Product),在实践中不断优化,进而跑通整个流程。

    3. 项目推进由UI同学按版本提出需求,业务端排期并落地实施,由UI统一验收。

    4. 建立阶段性目标,并完成指定的具体工作规划,定期复盘完成情况,保证项目的持续推进。

    细化来看,UI一致性整体方案主要分为两个部分,一个是设计体系建设,另一个则是工具链建设。设计体系建设是基础,主要是设计师沉淀设计风格,建立统一的UI设计标准,而工具链建设则是支撑,是开发人员通过开发一系列的工具将开发过程闭环,实现设计体系落地。

    在长期的版本迭代中,随着功能的不断增加以及UI的持续改版,新旧样式混杂,维护极为困难。设计师通过将页面走查结果归纳梳理,制定设计规范,从而选取复用性高的组件进行组件库搭建

    通过搭建组件库可以进行规范控制,避免控件的随意组合,减少页面之间的差异;

    组件库中组件既能满足业务特色,同时也可以应对不断变化的业务环境,具有云端动态调整能力,可以在规范更新时进行统一调整。

    在不影响需求实现以及设计效果的前提下,只有在方案设计中尽可能使用组件,提升组件覆盖度,才可能真正通过组件库来提效。而除了在新的需求中使用组件,还需要将已有页面内容尽量替换成组件,才能避免页面升级时的重复修改问题,真正提高产研效率。在进行组件库建设时要注意以下几点。

    • 选择合适粒度

    组件的粒度曾是困扰设计师与开发工程师很久的一个问题,虽然有构建设计系统的核心理论——原子设计理论为指导,即按照“原子、分子、组织、模板、页面”五个层面进行页面设计。这一理论对于从零开发新应用没有任何问题,但进行一致性改造的Web App,往往会暴露出很多设计问题,对于已经存在数百个成熟的线上页面,改造存在非常大的困难,必须根据具体业务选择合适粒度。在进行组件制作前,项目开发工程师需要对已有页面进行梳理,对使用到的组件进行分类,并根据组件的使用频率进行排序,制定逐步替换计划。从而避免组件库虽然做的很全、花费了大量人力,但实际很多组件都用不上,或者开发的组件过少,覆盖场景不足等问题。

    通过将走查结果与设计师反复交流,会发现复用性较高的组件大体可以分为两类:第一类“基础控件”,也就是类似于标签、按钮、开关、弹窗等具备基础功能的元素,对应原子理论中的原子;第二类“业务组件”,类似于商品卡片等,是由“基础控件”组成(比如商品卡片由“标签控件”与“图片控件”组成),同时“业务组件”还能相互组合,成为更高阶的“复杂组件”,类似于原子理论中的分子。“业务组件”的组合又是千变万化,不同样式的业务组件可以组成类似“商家列表”、“菜品列表”等“模板”,而“模板”与“基本控件”组合在一起,就成为了“页面”。

    • 具备拓展性

    组件必须具备一定的可配置属性才能提升适用场景覆盖度。可配置属性体现在三个方面:组件支持局部元素展示隐藏,例如商品卡片的标题、说明、价格可根据接口数据控制展示逻辑;组件支持多种样式,例如商品卡片的左图右文排列、上图下文排列;组件支持业务方配置主题,如调整高亮色、调整对齐方式等。

    • 支持统一管理

    组件管理功能对UI一致性起着至关重要的作用,这主要体现在两方面:首先是设计风格沉淀,通过形成自己的独特风格,设计团队根据设计规范,对符合UI一致性业务场景的组件不断进行抽象及建设,沉淀出越来越多的通用业务组件,这些组件需要及时扩充到Library中,供团队成员使用;另外一个作用则是保持团队使用的组件均为最新组件。由于各种原因,组件的设计元素(色彩、字体、圆角等属性)可能会发生变更,需要及时提醒团队成员更新组件,从而保持所有页面的一致性。

    UI设计语言与自身业务关联性很强,很多业务模块都有一套自己的设计系统。“通用”通常意味着无法满足具有业务特色的需求,不同业务的组件、色彩系统、动效、字体样式等千差万别,其中任意一环的缺失都会导致UI一致性被破坏。

    设计语言并不是一个抽象的概念,例如,大家提到美团就想起美团黄,提到阿里就想起阿里橙、提到京东就想起京东红等,通过设计语言可以传达品牌主张和设计理念。同一板块产品必须形成一套属于自己的独特风格,对于一致性元素处理有一套自己的标准,对于产品的设计者而言,必须将这种风格化延续,才能使我们整个项目具备高度的一致性,才能保持“产品特色“,保证吸引力。

    以插图为例,插图作为一种视觉语言,是品牌识别度的关键核心元素,与单纯的文案信息不同,图形化在直观描述固有信息的同时,也在塑造情感背景,使用户更具沉浸感和共情性。插画在提升产品用户体验的同时完成商业目标,在表达效果及生产效率上有独特的优势,在追求效率的互联网产品中被大量地运用。

    由于之前产品中的插图未经系统整合,而插画师的个人风格明显,不同的设计师在图形化的工作协同中,风格很难复现,而单纯由一名设计师去完成整体业务的插画建设工作也存在一定风险。不同设计师之前画过的元素无法互通,造成很多元素重复设计、风格不统一,缺乏系统性地创作和整理,无法最大化地提升生产效率,并且影响产品的品质感。所以插图体系在保持品牌一致性、提升工作效率以及规避风险上尤为重要。

    Iconfont可译为图标字体,顾名思义就是用字体文件取代图片文件来展示图标、特殊字体等元素的一种方法,不仅具有矢量性、可自由变化大小的特点,而且支持任意改变颜色。。简单来说,Iconfont就是把多个图标文件打包为ttf字体文件,注册到系统中,Web App可以像使用字体一样使用图标。其原理可以简单理解为通过ttf字体文件维护一个Unicode码与图形的映射关系。当使用Iconfont为项目助力的时候,配置多个图标不再需要去下载数个PNG文件,仅需要维护一套ttf字体文件即可。

    Web App发展到一定阶段,必然面临着包体积会越来越大,无用图片与相似图片也会越来越多的问题。同时,由于开拓新业务而不断涌现的新场景,又不可避免地新增大量的图片。总结来看,图片文件在一致性项目中需要解决两个问题,即存量图片的处理以及新增图片的管理。

    对于存量图片,必须判断其合理性,项目中存在大量相似图片,这些图片可能仅是padding不同,或者颜色尺寸存在微小差异,可以通过脚本扫描相似图片,根据图片的特征Hash判断图片的相似度,相似度高的图片根据UI建议,保留一张即可。那如何防止新增图片“重蹈覆辙”呢?通过建立图片管理后台,将图片按场景分类,标准图片需从组件代码库中选取,新增图片执行PR策略,需相关负责人审核,可有效防止相似图片的堆积问题。

    动效是指那些能够为产品赋予生机的动态界面元素及视觉效果,这些交互效果通常与特定的响应行为相关,甚至包括那些与交互行为没有直接关联的临时状态。

    精细而恰当的动画效果可以传达状态,增强用户对于直接操纵的感知,通过视觉化的方式向用户呈现操作结果。

    随着业务需求的不断增加,动效的使用比重在不断增加,重要性日渐凸显,也是增强用户体验与竞品拉开差距的重要因素,因此,统一规范的使用动效尤为重要。通过动效库建设,UI层面可以承载品牌、传递情感,加深用户对Web App的印象,让用户放松、愉悦;RD层面同一组件可在多场景直接复用,还降低了研发成本。

    颜色可以起到传递品牌信息、区分信息的所属关系、标明控件的选中状态以及对内容的信息进行分层级展示等功能。重要的信息需要在页面中被突出展示。系统级色彩体系主要定义了应用的主要颜色、文字颜色、辅助颜色以及标准渐变色,颜色在一定时期内建议不再支持新增。通过将标准色板内置于插件中,限制UI绘制设计稿时的使用范围,而RD工程师仅可通过代码组件库中选取颜色,保证色值的准确性,也便于进行主题定制。

    字体是体系化界面设计中最基本的构成之一。用户通过文本来理解内容和完成工作,科学的字体系统将大大提升用户的阅读体验及工作效率。设计师在字体设计过程中需要关注非常多的方面,比如字体family、字距、行高、段落等等。如何让文字看起来更自然,是设计师团队一直探寻的答案,UI工程师根据文字的层级关系,指定了HeadlineSubtitleBodyButton以及Caption的文字使用规范,根据设计稿中文字的位置,就可确定文字的具体样式。

    在组件代码库时,应具有以下功能:

    • 提高项目可维护性

    由于组件库中的组件职责单一,降低了系统的耦合度,开发人员可以很容易地了解该组件提供的能力。组件可以自由替换、组合为高阶组件,在进行组件更新时仅需修改一处。每个项目成员维护一定数量的组件,让团队中每个人都能发挥所长,可以最大化团队的开发效率。

    • 实现文档化

    组件接口有统一的规范,降低新人的上手难度,新成员只需要理解接口和职责即可开发组件代码,由于代码的影响范围仅限于组件内部,对项目的风险控制也非常有帮助。通过对组件统一管理,实现代码的积累沉淀与有效复用,全面提升了新业务的需求开发效率。

    • 便于单元测试

    由于组件职责单一而清晰,对外仅暴露接口,概念上可以把组件当成一个函数,输入对应着输出,这让自动化测试变得更加简单。

    • 实现无障碍等定制化功能

    无障碍功能可以改善残障人士的用户体验,组件库中的组件资源高内聚,完全由自身控制加载,不与全局或其他组件产生影响。组件的加载、渲染路径清晰可控,对于组件功能定制,实现类似于无障碍等功能较为方便。

    目前,市面上耳熟能详的组件库包括阿里的Antd DesiginFusion Design以及美团的Roo Design等,基本都是服务于Web开发的组件库,通过这些组件库可以快速搭建一些中后台系统。

    为什么没有知名的Native开源组件库呢?因为每个应用的主题、风格以及交互体验都是不同的,而这些不同恰恰是传达品牌主张和设计理念的灵魂,因此必须结合业务,针对ElementUIiViewAnt-design-vue等主流UI样式库进行组件库开发。通过搭建全平台代码组件库,可以保证同一个UI组件在各端表现一致,进行UI升级时降低改错或遗漏的风险,除此之外,还能降低测试压力,提高需求的吞吐率。

    官网相当于项目的门面,一个好的门面才能吸引更多的用户,才能更好地对项目进行推广。官网作为设计师与开发工程师沟通的媒介,需要两者共同维护。通过官网可以帮助团队内设计师沉淀设计风格,建立统一的UI设计规范,帮助RD工程师进行组件文档管理与查阅。

    4.1 手册功能

    当前的官网应主要包括设计语言组件库插画库以及资源下载,分别服务于UIRD工程师。

    4.1.1 设计语言

    UI一致性项目采取“原子理论”的构成原理,即从最小的元素开始定义,进而将这些元素按照规则进行组装,拼接成组件,最后通过这些组件拼接成最终的页面,这是一个由点到面的过程。设计语言章节主要服务于UI/UE工程师,该章节通过视觉、设计模式、动效等三个子章节使得读者能够快速了解项目的设计规范,从而快速上手。

    4.1.2 组件库

    组件库是设计模式中各种元素的具体实现,在这个页面描述了组件的使用方式。

    4.1.3 插画库

    插画库中则介绍了插画的使用场景,插画的绘制规范以及插画案例展示。

    4.1.4 资源下载

    提供产品下载功能。

    4.2 方案设计

    由于官网以纯粹的图文展示为主,且迭代频率较快,因而选择当下较为普遍的文档-网站生成系统VuePress,只需按照一定规范将书写的Markdown文档放至相应目录,前端自动解析后生成导航,并且支持多语种、图片、文件、视频等素材。这种方式极大地缩短了官网的开发周期,即便是没有前端经验的同学也能快速上手。

    为了方便UI工程师对官网文档的修改,应基于文档网站生成系统搭建在线编辑平台。通过该平台,相关人员可以直接做到在线编辑、发布,节约了UI工程师RD工程师的沟通成本以及发布成本。填充期间,使用者可以实时预览编辑的内容,修改后只需点击保存即可立即更新到网站中。

    官网支持平台化功能,不同业务方可以创建属于自己的文档站点,一个好的文档站点对于设计组的方案推广、外部接入都大有裨益。

    4.3 工具链的闭环

    当我们信心满满的把UI一致性解决方案推广到日常开发中时,除了听到可以提升效率的褒奖外,开发同学对项目的吐槽声也常常传入我们的耳边,“怎么才能知道设计稿中的哪个组件已经开发完成了?”,“查询这个组件的使用方法好麻烦,每次都要去官网检索”,“规范颜色、图标的名称是什么?怎么才能引用到?…”

    我们无法限制别人的选择,所以只能让这套体系变得更好用,如果不去优化整个流程,将其串联起来形成闭环,后面整个项目可能都会慢慢崩塌,可以考虑将设计稿作为衔接RDUI的纽带,可以把官网与代码仓库打通。

    通过定制设计云协作平台,在给RD的设计稿中标注了哪些是代码组件库中已有的元素,避免了重复开发,同时关联了官网上该组件的使用说明,RD工程师在开发过程中遇到组件使用问题无需检索,点击即可跳转至使用文档,真正做到了一致性元素的全覆盖。

    五、拓展阅读

    展开全文
  • 数据一致性解决方案

    千次阅读 2022-03-12 21:21:17
    数据一致性解决方案 CAP理论 C:一致性、A:可用性、P:分区容错性 CAP只能满足两个 CA:两阶段提交的严格选举协议 CP弱A:RAFT协议等多数派选举协议 AP:GOSSIP等冲突解决协议 数据一致性 时间一致性:所有相关数据...

    数据一致性解决方案

    CAP理论

    C:一致性、A:可用性、P:分区容错性
    CAP只能满足两个
    CA:两阶段提交的严格选举协议
    CP弱A:RAFT协议等多数派选举协议
    AP:GOSSIP等冲突解决协议

    数据一致性

    时间一致性:所有相关数据副本任意时刻数据一致
    事务一致性:事务之行前后数据一致
    应用一致性:分布式事务一致

    BASE理论

    基本可用:允许偶尔失败
    软状态:数据状态要求任意时刻一致
    最终一致性:弱一致性

    数据一致性解决方案

    多副本数据一致性:
    一般用于容灾和高可用:副本之间通过同步复制或者异步复制的方式达到数据一致。
    分布式事务数据一致性:
    本地事务是指数据库的单机事务处理,有点是严格的ACID特性,高效、可靠、状态可以只在资源管理器中维护、应用编程模型简单。缺点:不具备分布式事务处理能力,隔离的最小单位受限于资源管理器。
    分布式事务:事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点上。

    强一致性解决方案:

    一次请求对多个数据源的数据进行完整性以及一致性的操作,满足事务的特性,要么全部成功,要么全部失败,保证原子性以及可见性。
    强一致性通过锁定资源的方式,但是会牺牲性能,使用之前需要谨慎评估。

    XA分布式事务

    XA协议:
    是X/OPEN组织提出的分布式事务规范,该规范主要定义了全局事务管理器(TM)和本地资源管理器(RM)之间的接口,本地资源管理器往往由数据库实现。
    主流的数据库产品都提供了XA接口,XA接口是一个双向的系统接口,在事务管理器以及多个资源管理器之间作为通信桥梁。
    之所以需要XA,是因为在分布式系统中从理论上讲,两台机器是无法达到一致性状态的,因此引入了一个单节点进行协调。
    有全局事务管理器管理的机器可以跨多个资源和进程,负责各个本地资源的提交和回滚,全局事务管理器一般使用XA二阶段提交协议与数据库进行交互。

    二阶段提交(2PC)

    在这里插入图片描述

    准备阶段:
    事务协调者向所有事务参与者发送事务内容,询问是否可以提交事务,并等待参与者回复。
    提交阶段:
    如果协调者收到了参与者的失败信息或者超时信息,直接给所有参与者发送回滚信息进行事务回滚;否则发送提交信息。
    2PC方案实现起来比较简单,但是实际项目中使用比较少
    缺陷:

    • 性能问题:所有参与者在事务提交阶段处于同步阻塞状态,容易造成性能问题;
    • 可靠性问题:如果协调者存在单点故障问题,一旦协调者出现故障,参与者一直处于锁定状态;
    • 数据一致性问题:第二阶段如果发生局部网络问题,一部分收到提交消息,一部分没有收到,会导致数据不一致。

    三阶段提交(3PC)

    在这里插入图片描述

    三阶段提交是在二阶段提交的基础上的改进版本,主要是加入了超时机制,同时在协调者和参与者中都引用了超时机制。
    三阶段是将二阶段里面的准备阶段拆分为两个阶段,插入了一个预提交阶段,这样原先二阶段准备之后,参与者发生崩溃或者错误所引起的问题。
    第一阶段:
    事务协调者向所有事务参与者发送事务内容,询问是否可以提交事务(canCommit),并等待参与者回复。参与者收到请求之后,检查是否可以提交,如果认为可以执行事务操作,返回Yes,并进入预备状态(参与者不执行事务操作),否则返回No。
    第二阶段:
    协调者根据第一阶段中参与者的相应情况来决定是否可以进行基于事务的预提交操作:
    任何一个参与者反馈abord,即中断事务,协调者向所有参与者发送abord,abord或者超时都会中断事务。
    第三阶段:
    第二阶段中所有参与者均返回yes,会向所有参与者发送doCommit请求,参与者收到doCommit请求之后会正式执行事务提交,并释放整个事务期间的占用资源,各参与者向协调者返回完成的消息,协调者收到所有参与者的反馈的ack完成的消息后,完成事务的提交。
    注意:
    在进入第三阶段之后,无论是协调者出现问题,还是协调者与参与者的网络出现问题,都会导致参与者无法收到协调者的请求,此时参与者都会在等待超时之后继续执行事务提交(因为异常的情况毕竟是少数)

    弱一致性解决方案

    弱一致性:复制是异步的,最终一致性是弱一致性的特例,保证用户最终能够读取到某操作对系统特定的数据更新。
    弱一致性为了提高系统的吞吐量,允许一定程度上的数据脏读。

    最终一致性解决方案

    强一致性的技术实现成本很高,运行性能低,很难满足真实业务场景下的高并发需求,在实际的生产环境中,通常采用最终一致性的解决方案。
    最终一致性:不追求任意时刻系统都能满足数据完整且一致的要求,通过一段业务上可接受时间之后,系统能达到数据完整且一致的目标。

    消息队列

    在这里插入图片描述

    建立两个消息topic,一个用来处理正常的业务提交,一个用来处理异常冲正消息。请求服务向正常的topic提交业务请求,如果全部正常,则数据一致;如果出现任何异常,向异常的topic提交业务请求,负责回滚。

    事务消息方案

    在这里插入图片描述

    核心: 消息队列必须支持半事务消息(如RocketMQ),半事务消息提供类似于X/OPEN XA二阶段提交的分布式事务功能,这样能够确保请求服务执行本地事务和发送消息在一个全局事务中,只有本地事务成功执行之后,消息才会被投递。消息一旦被投递,默认设计业务执行必须成功(通过重试机制)。如果因为某些异常导致业务最终执行失败,系统无法自愈。只能通过告警的方式等待人工干预。

    数据订阅方案

    在这里插入图片描述

    核心: 监听数据库的更新日志,并转换成消息流供消费端进行订阅处理。业务订阅是异步的,会存在一定的消息延迟。

    TCC事务补偿

    在这里插入图片描述

    TCC是服务化的二阶段编程模型,尝试(try)、确认(confirm)、取消(cancel)均由业务编码实现。
    try阶段: 尝试执行业务,完成所有业务的检查,实现一致性;预留必须的业务资源,实现准隔离型。
    confirm阶段: 真正执行业务,不做任何检查,仅适用于try阶段预留的业务资源,同时要满足幂等性。
    cancel阶段: 取消执行业务,释放try阶段预留的业务资源,操作要满足幂等性。

    相比于二阶段提交:
    TCC位于业务层服务,二阶段提交位于资源层
    **性能提升: **业务来实现控制资源锁的粒度大小,不会锁定整个资源
    数据最终一致性: 基于confirm和concel的幂等性,保证最终事务完成确认或者取消。
    可靠性: 解决了XA协议的协调者单点故障的问题,由主业务方发起并控制整个业务活动,业务管理器也变成多点,引入集群。
    缺点:
    都要有具体业务实现,业务耦合度较高,提高开发成本。

    saga事务模式

    在这里插入图片描述

    核心思想: 将长事务拆成多个本地短事务,由saga事务协调器进行协调,如果正常结束,则正常完成;如果某个步骤失败,根据相反顺序依次调用补偿操作,达到事务的最终一致性。
    基本协议:

    • saga事务由许多幂等的有序的小事务组成;
    • 每个小事务都有对应的补偿,用于撤销执行后的结果;
      和TCC相比,没有预留动作,直接提交。
      有些场景不适合补偿,比如发送短信,发了之后如果撤销,就得再给用户发送说明撤销,体验较差。
    展开全文
  • 分布式系统的一致性问题(汇总)

    万次阅读 多人点赞 2019-09-02 15:32:19
    保证分布式系统数据一致性的6种方案 问题的起源 在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性? 具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要...
  • 点击上方“朱小厮的博客”,选择“设为星标”后台回复”加群“获取公众号专属群聊入口随着业务的快速发展、业务复杂度越来越高,传统单体应用逐渐暴露出了一些问题,例如开发效率低、可维护差、架构...
  • UI设计中的一致性原则

    千次阅读 2020-09-08 15:40:58
     我们遵循一致性的原则目的是为了减少用户认知负荷,用户能够轻易上手使用产品,熟悉的导航路径,熟悉的设计模式。  我们知道,我们的用户是忙碌的,没有耐心,他们不愿意花更多时间来学习使用你的产品。所以我们...
  • 在传统的IT时代,一致性通常指强一致性,强一致性通常体现在你中有我、我中有你、浑然一体;而在互联网时代,一致性的含义远远超出了它原有的含义,在我们讨论互联网时代的一致性之前,我们先了解一下互联网时代的...
  • 移动端UI一致性解决方案

    万次阅读 多人点赞 2020-11-26 20:00:21
    总第424篇2020年 第48篇外卖UI一致性项目是外卖UI设计团队与研发团队共建的项目,目的是改善用户端体验的一致性,提升多技术方案间组件的通用性和复用率,降低整体视觉改版带来的研发成...
  • 分布式数据库的数据一致性管理是其最重要的内核技术之一,也是保证分布式数据库满足数据库最基本的ACID特性中的 “一致性”(Consistency)的保障。在分布式技术发展下,数据一致性的解决方法和技术也在不断的演进,...
  • 一致性维度与数据仓库

    千次阅读 2018-10-11 15:20:22
    一致性维度与数据仓库    1、一致性维度概念   维度建模的数据仓库中,有一个概念叫Conformed Dimension,中文一般翻译为“一致性维度”。一致性维度是Kimball的多维体系结构(MD)中的三个关键性概念之一,...
  • 如何理解Zookeeper的顺序一致性

    千次阅读 热门讨论 2018-05-18 08:47:19
    在此期间我听到2种不同的关于一致性的说法。一种说法是Zookeeper是最终一致性,因为由于多副本、以及保证大多数成功的Zab协议,当一个客户端进程写入一个新值,另外一个客户端进程不能保证马上就能读到这个值,但是...
  • 一致性的本质 一致性定义:逻辑层面,一致性(consistency)是指一個形式系統中不蕴含矛盾(wiki)。在计算机系统的范畴之内,一致性其实是一种人们对于系统的综合需求,人们往往需要计算机的运行结果或状态是确定...
  • 分布式系统如何保证数据的一致性

    万次阅读 2018-08-06 21:58:56
    作者:buguge ...來源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得...当然目前有很多开源的分布式事务产品,例如java JTA,但是这种解决方案的成本是非常高的,而且实现起来非常复杂,效率也比较低...
  • 多处理机Cache一致性问题及解决办法

    万次阅读 2016-07-17 15:25:30
    由于多数SMP(对称多处理机)结构是采用总线互连的,侦听一致性协议是基于侦听总线事务来保持Cache一致性的协议,所以多数产品采用侦听协议。基于总线互连的SMP是通过高速共享总线将若干个商用的微处理器
  • Transaction 也就是所谓的事务了,通俗理解就是一件事情。从小,父母就教育我们,做事情要...于是,人们就归纳出事务的第一个特性:原子(Atomicity)。我靠,一点都不神秘嘛。 特别是在数据库领域,事务是一个
  • 在分布式系统中,同时满足“一致性”、“可用性”和“分区容错性”三者是不可能的。分布式系统的事务一致性是一个技术难题,各种解决方案孰优孰劣? 在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的...
  • 在传统的IT时代,一致性通常指强一致性,强一致性通常体现在你中有我、我中有你、浑然一体;而在互联网时代,一致性的含义远远超出了它原有的含义,在我们讨论互联网时代的一致性之前,我们先了解一下互联网时代的...
  • 一致性测试--总结_2

    千次阅读 2014-05-13 10:24:46
    一致性测试只是一个标准框架,不能代替实际的工程测试,如FAT,SAT。 一致性测试表示 DUT按DL/T860标准规定方法与其他IED互连运行的能力。 其实一个设备不使用IEC61850规范也可以跑起来,现在就是为了确立一个统一...
  • 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本) 可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新...
  • redis系列之数据库与缓存数据一致性解决方案

    万次阅读 多人点赞 2017-09-03 17:09:58
    redis系列之数据库与缓存数据一致性解决方案  -- 来自中华石杉老师视频 数据库与缓存读写模式策略 写完数据库后是否需要马上更新缓存还是直接删除缓存? (1)、如果写数据库的值与更新到缓存值是一样的,不...
  • 在危急时刻,数据库一致性检测(DBCC)可能是你最重要的工具。本文向你简单介绍DBCC的功能,它们包括: 检测表和相关目录的完整性。  检测整个数据库。  检测数据库页的完整性。  重建任何指定表中的目录。 ...
  • 一致性: 1.强一致性 这种一致性级别是最符合用户直觉的,它要求系统写入什么,读出来的也会是什么,用户体验好,但实现起来往往对系统的性能影响大 2.弱一致性 这种一致性级别约束了系统在写入成功后,不承诺立即...
  • 分布式系统事务一致性到CAP,BASE理论

    千次阅读 2017-02-08 10:44:00
    对于上面三个例子,相信大家一定看出来了,我们的终端用户在使用不同的计算机产品时对于数据一致性的需求是不一样的: 1、有些系统,既要快速地响应用户,同时还要保证系统的数据对于任意客户端都是真实可靠的,...
  • 分布式系统事务一致性解决方案

    千次阅读 2018-08-31 15:18:00
    在OLTP系统领域,我们在很多业务场景下都会面临事务一致性方面的需求,例如最经典的Bob给Smith转账的案例。传统的企业开发,系统往往是以单体应用形式存在的,也没有横跨多个数据库。我们通常只需借助开发平台中特有...
  • 美团酒店直连产品数据一致性演进

    千次阅读 2016-12-26 16:27:00
    经过两年的成长,美团酒店直连平台终于在2015年末发展为国内最大的酒店直连业务平台,其接入的业务类型也从最初的经济连锁,拓展到高星渠道、小连锁集团、非标准住宿等,获得了业界一致好评。 随着美团点评的日益...
  • USB2.0一致性测试方法和报告解读

    万次阅读 2020-02-19 22:46:06
    为了保证测试的一致性,USB-IF提供了发包软件USBHSEFT,需要安装在PC端。软件下载地址:https://www.usb.org/usb2tools 2 USB-IF要求的测试内容 不同的产品需要完成的测试内容不同,USB-IF提供了测试矩阵。手机...
  • 在计算机科学领域,分布式一致性是一个相当重要且被广泛探索与论证问题,首先来看三种业务场景。 1、火车站售票 假如说我们的终端用户是一位经常坐火车的旅行家,通常他是去车站的售票处购买车票,然后拿着车票去...
  • 虽然强一致性可以提高用户的体验,但是牺牲了系统的可用性,在经过综合的考虑和验证下,业界普遍的做法是在一致性和可用性进行了平衡,也就是提高系统的可用性,保证系统的最终一致性。而系统的幂等就是保证系统由强...
  • 电口以太网物理层一致性测试原理与过程    关键字: 以太网 物理层 一致性测试  1、 以太网物理层信号特点  以太网对应OSI七层模型的数据链路层和物理层,对应数据链路层的部分又分为逻辑链路控制子层...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 193,029
精华内容 77,211
热门标签
关键字:

产品一致性说明