随着技术的发展,用户对软件的界面美观度和交互体验的要求越来越高。在这样的背景下,可视化开发UI(User Interface)成为了提升用户体验和开发效率的重要工具。

通过图形界面来设计和构建用户界面的方法,可视化开发UI可以说改变了软便开发的生态,与传统的代码编写相比,它允许开发者使用拖放等直观的操作来布局界面元素,而无需编写大量的代码,可以达到提升开发效率、加强团队协作、降低技术门槛、快速响应需求变化,增强用户体验的目的。常见的可视化开发UI工具与技术包括拖放界面构建器、模板和预设、响应式设计、交互式原型,以及代码生成等。

为了更好地满足用户需求,尽可能降低用户的使用难度,白鲸数据集成平台WhaleTunnel给用户提供了一套完善的任务开发、任务管理、任务调度、任务监控的可视化UI。

WhaleTunnel支持可视化DAG开发数据集成作业,并且数据源信息单独管理,不需要在每个作业中重复配置数据库连接地址、数据库用户名、密码等信息。

独立的数据源管理功能



图1 创建数据来源

虚拟表管理功能

在WhaleTunnel中,我们统一了同步任务定义的操作规范,Source、Transform、Sink每个任务节点都会显示输入表结构和输出表结构。日常我们在处理如Kafka数据时,由于Kafka中的数据没有schema信息,为了将Kafka中的数据也当成表来处理,同时面对复杂的SaaS数据源,也可以讲SaaS数据源变成虚拟表在后续数据整合中复用并简化操作。

虚拟表管理功能的核心目标是将那些非结构的数据源,通过自定义表结构的方式,抽象成结构化数据,然后在同步任务开发时,可以像那些结构化数据源一样,对数据源中的数据进行字段过滤,字段改名,字段类型映射等操作。

在虚拟表创建时必须指定数据源名称,对于Kafka来说,我们可以在数据源中创建Kafka的数据源,填写Kafka连接地址,topic名称信息。然后创建虚拟表选择前面创建的Kafka数据源,即可针对数据源中的Topic中的数据定义表结构信息。

同步任务数据Mapping开发

WhaleTunnel的同步任务定义是可视化Mapping开发模式。



图2 Create Date Pipelines

全链接监控

WhaleTunnel会监控同步任务的详细信息,目前我们以pipeline为粒度进行汇总并显示到同步任务实例中。通过这些监控信息,用户可以明确了解同步任务读取和写入的数据行数、处理的性能等。

随着人工智能和机器学习技术的发展,未来的可视化开发工具将更加智能,能够根据用户行为和偏好自动优化界面设计。同时,增强现实(AR)和虚拟现实(VR)技术也将为可视化开发带来新的机遇和挑战。随着技术的不断进步,我们期待WhaleTunnel可视化开发UI在未来将发挥更大的作用,为客户的软件开发带来革命性的变化。

本文由 白鲸开源 提供发布支持!

花样玩转“所见即所得”的可视化开发UI的更多相关文章

  1. iOS开发UI篇—简单介绍静态单元格的使用

    iOS开发UI篇—简单介绍静态单元格的使用 一.实现效果与说明 说明:观察上面的展示效果,可以发现整个界面是由一个tableview来展示的,上面的数据都是固定的,且几乎不会改变. 要完成上面的效果, ...

  2. iOS开发UI篇—常见的项目文件介绍

    iOS开发UI篇—常见的项目文件介绍 一.项目文件结构示意图 二.文件介绍 1.products文件夹:主要用于mac电脑开发的可执行文件,ios开发用不到这个文件 2.frameworks文件夹主要 ...

  3. iOS开发UI篇—popoverController简单介绍

    iOS开发UI篇—popoverController简单介绍 一.简单介绍 1.什么是UIPopoverController 是iPad开发中常见的一种控制器(在iPhone上不允许使用) 跟其他控制 ...

  4. iOS开发UI篇章 15-项目中的常见文件

    iOS开发UI篇-常见的项目文件介绍 一.项目文件结构示意图 二.文件介绍 1.products目录:主要用于mac电脑开发的可运行文件.ios开发用不到这个文件 2.frameworks目录主要用来 ...

  5. 可视化开发_AppInventor2似乎被抛弃了

    工具 blockly google,mixly,scratch,app inventor2 的分别 可视化编程,青雀,来自 白鹭 没源码 如果想二次开发呢,初版拖拽控件生成,后期维护的时候找程序员加功 ...

  6. React 可视化开发工具 shadow-widget 的非可视开发方法

    Shadow Widget 提倡在可视设计器中开发用户界面,输出转义标签,而非 JSX.许多童鞋可能不知道 SW 同样支持用 JSX 设计界面,开发体验比原生 React 编程好出很多,本文就介绍这方 ...

  7. iOS开发UI篇—CAlayer(自定义layer)

    iOS开发UI篇—CAlayer(自定义layer) 一.第一种方式 1.简单说明 以前想要在view中画东西,需要自定义view,创建一个类与之关联,让这个类继承自UIView,然后重写它的Draw ...

  8. iOS开发UI篇—UITabBarController简单介绍

    iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...

  9. iOS开发-UI 从入门到精通(三)

    iOS开发-UI 从入门到精通(三)是对 iOS开发-UI 从入门到精通(一)知识点的综合练习,搭建一个简单地登陆界面,增强实战经验,为以后做开发打下坚实的基础! ※在这里我们还要强调一下,开发环境和 ...

  10. iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增强实战经验,为以后做开发打下坚实的基础! ※开发环境和注意事项: 1.前期iOS-UI ...

随机推荐

  1. 关于Compilation failed: internal java compiler error的解决方法(Idea)

    关于Compilation failed: internal java compiler error的解决方法(Idea) idea编译项目时出现java: Compilation failed: i ...

  2. uniapp ios 白屏

    这个问题找了两天,问题出现的很离谱代码编译没问题,安卓.ios真机运行也没问题,打包以后安卓没问题,iphone 12(ios16.6.1)安装也没问题,还有一个iphone 6s(ios14.7.1 ...

  3. 10-Python进程与线程

    Python进程 创建新进程 from multiprocessing import Process import time def run_proc(name): #子进程要执行的代码 for i ...

  4. 使用 GPU 进行 Lightmap 烘焙 - 简单 demo

    作者:i_dovelemon 日期:2024-06-16 主题:Lightmap, PathTracer, Compute Shader 引言 一直以来,我都对离线 bake lightmap 操作很 ...

  5. 在Linux驱动中使用proc子系统

    在Linux驱动中使用proc子系统 背景 proc文件系统是个简单有用的东东:驱动创建一个proc虚拟文件,应用层通过读写该文件,即可实现与内核的交互. 本文适用于3.10以后的内核,v3.10以前 ...

  6. 震撼登场,全国产RK3588J工业核心板,让您的产品更具特色!八核2.4GHz!

    RK3588J全国产工业核心板10月正式出售如需预定,请与创龙科技联系. 更多详情,请登录创龙科技天猫旗舰店. 瑞芯微RK3568J.RK3588J技术交流QQ群:567208221,欢迎加入!

  7. Springboot+Shiro+Mybatis+mysql实现权限安全认证

    Shiro是Apache 的一个强大且易用的Java安全框架,执行身份验证.授权.密码学和会话管理.Shiro 主要分为两个部分就是认证和授权两部分 一.介绍 Subject代表了当前用户的安全操作 ...

  8. SpringBoot 整合EasyExcel 获取动态Excel列名

    导读 最近负责消息网关,里面有个短信模板导入功能,因为不同模板编号对应不同参数,导入后的数据定时发送,涉及到Excel中列名不固定问题,于是想根据列名+值,组合成一个大JSON,具体代码如下. 引入依 ...

  9. @ConfigurationProperties 还能这样用

    在编写项目代码时,我们要求更灵活的配置,更好的模块化整合.在 Spring Boot 项目中,为满足以上要求,我们将大量的参数配置在 application.properties 或 applicat ...

  10. Spring Cloud提供者actuator依赖

    <!-- actuator依赖 --> <dependency> <groupId>org.springframework.boot</groupId> ...