B端问答 - “Ant Design 与 Zan Design 之间的区别?”

2024-01-23 23:30
文章标签 ant design 区别 问答 之间 zan

本文主要是介绍B端问答 - “Ant Design 与 Zan Design 之间的区别?”,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图片

这是一位读者面试时遇到的问题,我给他解答过后也想将这个问题分享背后究竟有着哪些可以学习的点

首先给你们30秒钟的时间进行思考,来回答会从哪些方面进行总结?

如果你还不知道 Ant Design 与 Element 究竟是什么,可以去访问 Youthce.com/resources 我的个人网站了解

图片

下面是我的想法,首先这类问题,其实更适用于 Ant Design 与 公司自身设计规范 的差异,它所考察的是你是否有在实际项目当中真实处理过 设计系统/设计规范 相关的需求(其实设计系统与规范存在着很多差异点,之后有时间细细再聊,又给自己挖坑)

服务的人群:

Ant Design 是为中小型企业提供的管理后台的综合解决方案,它的立足点不是为 **某一个产品/某一个系统** 服务,更多是想着服务大多数企业,出发点就决定了Ant Design 需要去考虑设计系统的通用性,也就是需要提供给更多的用户去进行使用

而 Zan Design,它是针对自身的几条重要产品线:“商城、零售” 提炼出来的设计共性,进而形成的设计规范,最初目的是为了团队内部协作所延伸出来的设计系统。在实际使用过程中,会极大程度上考虑有赞企业自身的个性化需求

图片

这其实就牵涉到B端产品当中一个非常重要的问题:通用与个性

在通用与个性之间,往往是没有止境的,因为一个设计系统是 无法做到绝对的通用,如果想做到绝对的通用,那只能为你提供去撰写他们的工具,比如 vscode figma

而个性往往也是相对的,因为一个设计系统,也会存在很多不同的情况,如何在这些不同点当中去梳理总结一些属于自身产品个性化的内容。最终的个性化就会变得是 很多个产品的集合

因此在面试时还可以补充你对于通用与个性的看法,多方面展示自己。我们再聊 Ant Design 与zan design 的第二个区别

系统成熟度

设计系统的出现,并不是出现过后一成不变,而是需要随着 社区人数的建议,对于自身系统进行调整

你可以发现 Ant Design 已经经历过 三次大版本的迭代,并且在系统成熟度上有了很大的提升。它自身组件、API 也在不断进行完善,从最早时的青涩到现在的成熟也是一步一步走来,因此当自身团队也需要做设计系统时,也需要考虑到这一问题

图片

而 Zan Design 则一直停在自己 1.0 版本没有进行大范围调整改动,这也证明一个设计系统当满足自身企业需求过后便只需进行日常维护即可,不用做大范围改动。也从这里反应出来 Zan Design 只适合用于与有赞自身相关企业进行使用,不利与大面积推广

行业影响力

Ant Design 目前在行业当中算是十分出名,毕竟有着阿里这个稳定的后背,比起隔壁家的Element 日子可过得好过了, Ant D 不仅在国内有着不少的用户,同时在国际上也是有着非常多的使用者,Ant D 除了在18年圣诞节的黑天鹅事件之外,没有什么槽点

相比之下 Zan Design 就显得有些简单,甚至不如 Element,也正是因为它主要用于有赞自己平台,因此不需要太大的影响力

技术类型

虽然技术方面不是设计师擅长的,但设计系统的对比肯定少不了技术框架,虽然两者的技术类型都是 React ,但是可以聊的点还是非常的多

目前市面上针对B端产品的前端技术类型一共分为三类:Vue、React、Angular

首先 Angular 在国内主要推行比较缓慢,少有团队在进行使用。因此在这里首先就被排除

而 Vue 在国内的大火,离不开其创始人 华裔:尤雨溪 (别人同样也是设计师,和我们之前的差距咋这么大),而Vue最具代表性的便是 Element,因Vue拥有这中文技术文档、较低的门槛、不错的技术社区,在国内也算站着半壁江山

而 React 最具代表性的便是 Ant Design,首先非常感谢 Ant Design 提供一个较为完整的设计系统,确实在帮助很多中小企业上,坚守住了B端设计的底线。

我曾经看到很多小团队在研发B端项目时,没有设计师使用Ant Design 也能够保证其页面有着不错的设计效果

总结

其实回归这一个题目,本身所考察的就是一个面试者能否有处理设计系统的经验,而回归设计系统本身,你可以从 技术类型的选择、设计系统搭建时的心得、设计系统搭建后的维护角度更多的去发散。

面试本身就是一个交流,你要做的只是聊出自己的想法便是,这个问题问你,你还会怎么回答?我们评论区见

知识搬运,顺带推广下我的开源项目:aidex sharp快速开发平台

 码云地址:https://gitee.com/big-hedgehog/aidex-sharp。欢迎体验,欢迎star和fork,关注我们最新的研发动态哦,好运呦!

这篇关于B端问答 - “Ant Design 与 Zan Design 之间的区别?”的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/637867

相关文章

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

分辨率三兄弟LPI、DPI 和 PPI有什么区别? 搞清分辨率的那些事儿

《分辨率三兄弟LPI、DPI和PPI有什么区别?搞清分辨率的那些事儿》分辨率这个东西,真的是让人又爱又恨,为了搞清楚它,我可是翻阅了不少资料,最后发现“小7的背包”的解释最让我茅塞顿开,于是,我... 在谈到分辨率时,我们经常会遇到三个相似的缩写:PPI、DPI 和 LPI。虽然它们看起来差不多,但实际应用

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Spring中@RestController和@Controller的使用及区别

《Spring中@RestController和@Controller的使用及区别》:本文主要介绍Spring中@RestController和@Controller的使用及区别,具有很好的参考价... 目录Spring中@RestController和@Controller使用及区别1. 基本定义2. 使

Qt 中 isHidden 和 isVisible 的区别与使用小结

《Qt中isHidden和isVisible的区别与使用小结》Qt中的isHidden()和isVisible()方法都用于查询组件显示或隐藏状态,然而,它们有很大的区别,了解它们对于正确操... 目录1. 基础概念2. 区别清见3. 实际案例4. 注意事项5. 总结1. 基础概念Qt 中的 isHidd