DataRoom 是一款基于 SpringBoot + Vue 技术栈构建的开源大屏设计器,集成了 MyBatis-Plus、ElementUI、ECharts、G2Plot 等主流前端与后端生态。 在传统 BI 工具动辄需要 SQL 编写、DAX 公式或复杂配置的背景下,DataRoom 的核心理念是:让业务人员也能成为大屏设计师。 二、工具优势一站式大屏解决方案,从数据源接入->数据清洗处理->大屏设计->大屏预览->大屏发布上线支持多种数据集接入,如:原始数据集、自助数据集(支持多表关联)、存储过程、JSON(静态数据)、JS脚本 三、功能介绍1、大屏管理支持大屏【新增】、【编辑】、【设计】、【预览】、【复制】、【删除】操作2、大屏设计器采用拖拉拽可视化设计,支持30+基础组件、40+种图表组件、15种边框组件、10多种修饰组件3 、资源库支持资源自定义上传、在大屏设计器中直接引用资源,如:3D图片、边框图片、装饰条、背景图4、数据源支持MySQL、PostgreSQL、Oracle 、ClickHouse、SqlServer等主流数据库接入
打算用一句话概括每一个设计原则 单一职责原则 一个类只负责一项职责,有且仅有一个原因引起类的变更。 里氏替换原则 所有引用基类的地方必须能透明地使用其子类对象。
数据链路的稳定性 接口服务的兜底 指标准确性的验证机制 重算机制 本文内容有限,很多设计的小细节未能体现,感兴趣的欢迎交流,希望上述内容对正在从事大屏建设的同学有一些新的启发和思考。 01 背景 在今年的敏捷团队建设中,我通过Suite执行器实现了一键自动化单元测试。Juint除了Suite执行器还有哪些执行器呢?由此我的Runner探索之旅开始了! 供应链大屏是供应链事业部重要的看数工具,尤其在大促期间,为业务管理层掌握大促实时动态提供了支撑,为事业部的目标达成、排产提供重要的数据支持。 3)大屏结果分钟级落库,并通过Grafana,创建大屏数据监控看板,持续监控大屏数据,通过异常拐点发现问题点,避免遗漏问题。并结合不同看板分析数据趋势及变化原因。 4)结合大屏计算逻辑,通过京东动力搭建测试模型,做到自由指定时间计算大屏指标明细,验证分析大屏数据。
从去年年初开始,我们团队内部就在做两个编辑器: 3d编辑器 支持搭建3d场景。 拓扑/大屏编辑器 支持搭建大屏/拓扑/组态场景。 下面是几个项目的示例图: [示例图] [示例图2] [示例图3] [示例图4] 中间是一个三维场景,使用三维编辑器编辑而成,周边是一些大屏元素,使用大屏编辑器编辑。 和一般的大屏编辑器不同,我们的大屏编辑器不仅支持大屏元素的排布,也支持分层拓扑图,架构图,交通图等,以及组态功能。 基于canvas + HTML5元素共同开发,能够支持更多丰富的功能和效果。 通过派发事件和接受事件来展示和隐藏内容,效果是可以的,问题在于易用性并不好,通过编辑器实现起来复杂,一般的实施人员用起来难度大。 总结 上面是一些设计与思考,主要是基于拓扑/大屏编辑器的思考。为了有更好的产品,我们一直在努力的架构,设计与思考。 有关三维编辑器,有很多类似的设计理念,以后又机会再说。
6大设计原则总结 一、单一职责原则 单一职责原则:英文名称是Single Responsiblity Principle,简称是SRP。定义:应该有且仅有一个原因引起类的变更。 但是,这个原子该怎么划分是设计模式中的一大难题,在实践中可以根据以下几个规则来衡量: 一个接口只服务于一个模块或业务逻辑; 通过业务逻辑压缩接口中的public方法,接口时常去回顾,尽量让接口达到“满身筋骨肉 ”,而不是“肥嘟嘟”的一大堆方法; 已经被污染了的接口,尽量去修改,若变更的风险较大,则采用适配器模式进行转化处理; 了解环境,拒绝盲从。 一个展示数据的列表,按照原有的需求是6列,突然有一天要增加1列,而且这一列要跨N张表,处理M个逻辑才能展现出来,这样的变化是比较恐怖的,但还是可以通过扩展来完成变化,这就要看我们原有的设计是否灵活。 换一个角度理解,依照Java语言的称谓,开闭原则是抽象类,其他五大原则是具体的实现类,开闭原则在面向对象设计领域中的地位就类似于牛顿第一定律在力学、勾股定律在几何学、质能方程在狭义相对论中的地位,其地位无人能及
而现代智慧交通大屏,利用可视化的方式整合多源数据,一屏即可实现全域感知和综合监测,又利用各类交互设计,提升数据大屏的联动能力,加快决策过程。 点击跳转:大屏中各组件支持点击事件,例如针对指标卡可以实现点击跳转的功能,实现从宏观指标到微观详情的快速穿透。 三、配置过程进入平台后,选择交通监测系统,进入数据大屏的配置页。在数据大屏中支持多种交互动作,其中交互组件作为与用户直接交互的核心元素,包含按钮、导航、输入框等多种类型。3.1. 回到数据大屏的配置页,将地址填入并绑定“车牌号” 作为跳转参数,确保查询结果与输入的车牌号精准匹配。完成后,我们预览测试一下。 交互能力多,支撑多维度分析:覆盖页面导航、图表联动、下钻分析、过滤筛选等能力,使大屏从静态展示升级为“宏观到微观” 的数据探索工具,助力用户深入洞察,提升决策质量与效率。
架构设计原则 6大设计原则 Single Responsibility Principle : 单一职责原则 Liskov Substitution Principle : 里氏替换原则 并不是说在实际项目开发中对这六大原则中的每一条都遵循到极致,而是说在项目开发的过程中,根据项目的实际需求尽量的去遵守这些原则。 6 内容耦合: 这是最高程度的耦合,也是最差的耦合。当一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部。 内聚性又称块内联系。 6 功能内聚: 这是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。与其他模块的耦合是最弱的。 image 1、GOF在书中说:设计模式是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述; 设计模式就是不断反省,将软件开发经验抽象积累成解决问题的预案。
架构设计模式—6大设计原则架构设计是软件开发中非常重要的一环,良好的架构可以提高软件系统的可维护性、可扩展性和可重用性。在架构设计过程中,遵循一定的设计原则可以帮助我们构建合理的架构。 本文介绍6大常用的架构设计原则,他们是:单一职责原则(Single Responsibility Principle, SRP) 单一职责原则要求一个类或模块只负责完成一项职责。 以上6大设计原则是架构设计过程中常用的准则,不同的原则可以结合使用,根据具体的应用场景进行选择。遵循这些原则可以帮助我们构建高质量的软件系统。 另外,NotificationManager 类是一个通知管理器,根据依赖倒转原则,它依赖于 NotificationService 接口而不是具体的实现类。 这样设计的好处是,我们可以方便地添加新的形状,而不会影响到已有的代码功能。
就移动用户体验设计而言,不断地实践是检验其好坏的一条必经之路。在这篇文章中我们聚焦于基础,我们需要去解决的是,如何避免打断用户或者强迫用户思考的问题。 适用于一个平台的完美设计决策可能会在另一个平台上显得格格不入。 TB银行app缺乏一个应用程序应有的特质 用户流程 1、你的应用程序里不应该有“死胡同” 用户体验设计本质上就是在设计流程,而流程在多数情况下是用来完成用户目标的。 Azendoo的错误状态有一个简单的“如何解决问题”的说明 2、不要把用户引向浏览器 用户在使用应用程序时,所有操作都应该在该应用程序中进行。 如果应用程序缺少某些功能和内容,尝试使用一些嵌入应用的浏览器;但是不要调出手机的浏览器,这样会导致用户失去方向并无法返回原先的应用程序。这会提高用户抛弃应用的概率从而转化率会降低。 ?
内容总览 六大设计原则都有哪些 一、单一职责原则 二、里氏替换原则 三、依赖倒置原则 四、接口隔离原则 五、迪米特法则 六、开放封闭原则 内容详解 一、单一职责原则 单一职责原则:英文名称是Single 但是,这个原子该怎么划分是设计模式中的一大难题,在实践中可以根据以下几个规则来衡量: 一个接口只服务于一个模块或业务逻辑; 通过业务逻辑压缩接口中的public方法,接口时常去回顾,尽量让接口达到“满身筋骨肉 ”,而不是“肥嘟嘟”的一大堆方法; 已经被污染了的接口,尽量去修改,若变更的风险较大,则采用适配器模式进行转化处理; 了解环境,拒绝盲从。 一个展示数据的列表,按照原有的需求是6列,突然有一天要增加1列,而且这一列要跨N张表,处理M个逻辑才能展现出来,这样的变化是比较恐怖的,但还是可以通过扩展来完成变化,这就要看我们原有的设计是否灵活。 换一个角度理解,依照Java语言的称谓,开闭原则是抽象类,其他五大原则是具体的实现类,开闭原则在面向对象设计领域中的地位就类似于牛顿第一定律在力学、勾股定律在几何学、质能方程在狭义相对论中的地位,其地位无人能及
由于大屏的开发基于Web 端,因此网页设计规范中使用的最小字号为12px,小于12px 的很多浏览器不会识别。 在大屏的设计中,12px 的字号会显得较小,因为大屏本身很大,观者都是站在较远的地方才能看清全貌。 对于不同比例的大屏,字号的选择依据也会有一定的差异。 图2 02 大屏设计布局解析 大屏设计的四个流程有:需求调研、数据分析、产品设计、可行性测试。 大屏要有看点 一个铺满文字和图表的大屏,很难让人产生观赏情绪,因此大屏的设计一定要有看点。 看点可以理解为大屏的主视觉元素,一般面积占比较大,用于即刻抓住观者眼球。 图6表述了大屏设计三个层次相对应的设计依据。 图6 另外,主题风格的美感还要建立在对行业、业务、数据等方面有效的表达上,不然常常会收到以下评价: (1)视觉上很炫酷,但是总感觉跟我们金融行业不搭调。
相关文章: 从零开发一款可视化大屏制作平台 演示地址: V6可视化大屏编辑器 作者: 徐小夕 几个月前我写了一篇关于从零开发一款可视化大屏制作平台 的文章, 简单概述了一下可视化大屏搭建平台的一些设计思路和效果演示 , 这篇文章我会就 如何设计可视化大屏搭建引擎 这一主题, 详细介绍一下实现原理。 按照我一向的写作风格, 我会在下面列出文章的大纲,以便大家有选择且高效率的阅读和学习: 快速了解数据可视化 如何设计通用的大屏搭建引擎 大屏搭建引擎核心功能实现 拖拽器实现 物料中心设计 动态渲染器实现 如何设计通用的大屏搭建引擎 说到 “引擎” 这个词也许有种莫名的高大上, 其实在互联网技术中, 我们经常会听到各种相关的名词,比如 “浏览器渲染引擎” , “规则引擎” , “图像识别引擎” 等, 我觉得 综上我们总结出了可视化大屏的必备要素: 我们只要充分的理解了可视化大屏的组成和特征, 我们才能更好的设计可视化大屏搭建引擎, 基于以上分析, 我设计了一张基础引擎的架构图: 接下来我就带大家一起来拆解并实现上面的搭建引擎
让我们一起来看一下如何从0到1设计一个数据大屏。 大屏设计器支持多种数据来源配置,支持数据实时同步更新,同时大屏设计器基于 WEB 页面渲染,可灵活投屏多种屏幕终端。 精心预设多种行业模板,极致展示数据魅力。 二、积木大屏安装/集成 支持maven本地集成或在线使用 本示例以本地安装为例;本地安装完成后,进入大屏后台;就可以开始大屏制作了。 三、大屏设计步骤 1. 创建大屏 点击“新建”,弹出新建数据大屏弹框,输入大屏名称,选择文件夹,点击“保存并设计”即创建了大屏 可重新选择大屏的背景色或背景图片。 2. ,即可设计完整大屏了。
既然不可能完全封闭,设计人员必须对于他设计的模块应该对哪种变化封闭做出选择。 开放封闭原则(Open Closed Principle)即为解决这些问题而产生,它强调的是你设计的模块应该从不改变。 举例: 先对以上三个原则再一次加深理解,以电脑主机为例: 如果电脑坏掉了,要排查问题,找到引起电脑不能开机的原因,根据键盘灯和显示器的反应,可以得出关于内存,电源是否出现问题。 6. 接口隔离原则(ISP Interface Segregation Principle)概念 A、客户端不应该依赖它不需要的接口。 B、类间的依赖关系应该建立在最小的接口上。 我们在做系统设计时也需要考虑对系统之间或模块之间的接口采用定制服务。采用定制服务就必然有一个要求:只提供访问者需要的方法 接口的设计粒度越小,系统越灵活,这是不争的事实。
,对修改关闭,并不意味着不做任何修改,底层模块的变更,必然要有高层模块进行耦合,否则就是一个孤立无意义的代码片段 开闭原则的好处 开闭原则是一个最基本的原则,另外五个原则都是开闭原则的具体形态,是指导设计的工具和方法 不允许出现在接口或抽象类中不存在的public方法 参数类型、引用对象尽量使用接口或抽象类,而不是实现类 抽象层尽量保持稳定,一旦确定不允许修改接口或抽象类一旦定义,应立即执行,不能有修改接口的想法,除非是彻底的大返工 将相同的变化封装到一个接口或抽象类中 将不同的变化封装到不同的接口或抽象类中 不能有两个不同的变化出现在同一个接口或抽象类中.封装变化,找出预计的变化或不稳定的点,为这些变化点创建稳定的接口,准确的讲是封装可能发生的变化.23个设计模式都是从各个不同的角度对变化进行封装的 . ---- 开闭原则也只是一个原则,实现拥抱变化的方法很多,并不局限于这6大设计原则,但是遵循着6大设计原则基本上可以应对大多数变化.
依赖倒置原则(Dependence Inversion Principle,DIP): 代码设计要依赖于抽象接口,不要依赖于具体实现。 通过面向抽象的编程方式来降低类之间的耦合,便于扩展。
由于台式电脑的规模和尺寸更大,此类触摸屏的设计可能会给设计师带来一些独特的挑战。 当你习惯了用拇指大小的区域来做屏幕设计时,你如何去设计超大触摸屏? 这里笔者整理了一个关于超大触摸屏的设计指南,为设计师们设计用户交互提供灵感。 用户在公共场所中使用大屏设备,并不意味着他们希望其他人知道自己在做什么,特别是在输入一些重要信息时。而屏幕越大,其他人就越有可能看到用户输入的内容。 6.网络连接问题 4.jpg 当涉及到超大触摸屏设计时,最需要考虑的问题是产品的网络环境。如何才能使产品在有无网络的情况下都能正常工作? 结论 你是否有过对超大触摸屏设计的经验?这种触摸屏的设计已经成为一种流行的趋势。就算目前你还没有做过此类的设计,相信不久你也会接触到。
开闭原则(OCP) 是 面向对象设计中“可复用设计”的基石,是面向对象设计中最重要的原则之中的一个,其他非常多的设计原则都是实现开闭原则的一种手段。 遵循开闭原则设计出的模块具有两个主要特征: (1) 对于扩展是开放的(Open for extension)。这意味着模块的行为是能够扩展的。 作为 系统设计的抽象层,要预见全部可能的扩展,从而使得在不论什么扩展情况下,系统的抽象底层不需改动;同一时候,因为能够从抽象底层导出一个或多个新的详细实现,能够改变系统的行为,因此系统设计对扩展是开放的 这就要求我们在设计的时候,要很清楚地了解用户需求,推断需求中包括的可能的变化,从而明白在什么情况下使用开闭原则。
相信对于从事大数据相关的人员来说,数据的可视化大屏是最能展现自己工作价值的一个途径。可视化大屏就是数据分析的最后成果的展示,而如果能设计出更直观、更酷炫、更具有科技感的大屏,更能获得客户的青睐。 类似下图这种的: 还是这种的: 那好看的,令客户满意的可视化大屏究竟应该如何制作呢,下面我们就来一起了解和学习一下设计可视化大屏的几大必备步骤,保你设计无忧,工作越干越得劲。 2、确定物理大屏尺寸,明确设计稿的尺寸 看板设计好后均是要在大屏上进行展示,所以要提前确定好对应的物理大屏尺寸,这样设计出来的大屏才能获得最好的视觉体验,也会展示的更加完美。 注意:若物流大屏分辨率过高时,可以采用分辨率减半的设计方法去进行设计。 3、确定大屏展示的关键指标 确定好大屏尺寸后,就需要确定大屏展示的关键指标内容,那什么是关键指标呢? 6、确定大屏的设计风格 大屏的设计风格需要依旧对应的行业类型、指标数据、客户需求等进行整体搭配,总体分为两种风格: 那针对大屏设计给大家推荐一个公开课,保证让你看完受益匪浅,除此之外,联系对应的小助手
如果对每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有发生变化,那么类型S是类型T的子类型.