追求完美用户体验,从变量名设计的细节抓起
在一个安静的办公室里,卧龙和凤雏正坐在电脑前忙碌地工作着。阳光透过窗户洒在他们的脸上,映照出专注的神情。
“变量命名让人摸不着头脑,光看变量名很难搞清楚它的用途。”卧龙眉头紧皱,表情严肃地说道。
“哦?具体是哪些变量呢?”凤雏身体前倾,面露关切地问道。
“有自有变量、元件结果变量、参数变量、系统变量、节点变量。”卧龙摇晃着头说道。
“开发人员是怎么解释这些变量的?”凤雏双手抱在胸前问道。
“开发人员是这样说的,你看看。”卧龙打开微信,指着屏幕说道。
自有变量:用户自己创建的流程变量,在可视化程序工作区的第一个槽位能看见;
元件结果变量:用来存抽象子可视化程序执行结果的;
参数变量:在调用当前可视化程序时传入参数用的;
系统变量:可视化编程平台跟低零代码平台集成后,用来存低零代码平台提供的关键数据的;
节点变量:可视化程序中每个组件节点执行完后自动生成的,用于存当前组件节点执行结果数据的变量。
“那用户光看变量名能直接明白这些变量是干啥用的不?”凤雏眉头皱得更紧,连连摇头说道。
“开发人员说用户得看操作手册,用熟了就懂了。”卧龙摊了摊手,苦笑说道。
“这可不行啊,用户学习是要花时间和精力的,咱可不能因为这些问题耽误用户宝贵的时间。”凤雏眉头紧皱,十分不满地说道。
“我也是这么想的,所以就让开发人员重新取了变量名,要求能让用户直接通过变量名看出变量的用途。”卧龙点了点头,深表赞同地说道。
“开发人员取的新变量名?快给我看看。”凤雏急切地追问。
“我已经看过了,看完感觉头更疼了。”卧龙叹了口气,把新变量名递给凤雏说道。
“这都是些什么呀?流程变量、元件结果……这也太不直白了,用户还是没法直接看懂啊。”凤雏看着新的变量名,眉头拧成了一团说道。
流程变量:用户自己创建的,主要在程序执行过程中用
元件结果(子程序执行结果):用来记录子程序执行完后要返回给主程序的结果变量,这个变量得在子程序里创建,主程序引用后会自动创建
请求参数:用来配置程序树执行前需要的必要参数数据
代码节点执行结果:用来记录代码节点执行完后的执行结果对象
“可不是嘛,我也这么觉得。我还拉了个同事过来,把变量名字的解释都删了,只让他看变量名,问他能不能看出这些变量是干啥的,结果他也直摇头说完全不知道。”卧龙附和道。
“看来这些命名方式还是有问题啊。”凤雏用力地拍了一下桌子说道。
“没错,所以我让开发人员再去改改,改完记得让别人也帮着看看,看的时候别给解释这些变量名是干啥的。”卧龙点点头说道。
“嗯,这样才能真正了解用户的感受。”凤雏认真地说道。
“经过反复修改,最终的变量名确定下来了。”卧龙如释重负地说道。
“都有哪些变量名?”凤雏好奇地问道。
“自定义图形变量、程序被调传入参数、平台整合传入参数、图形程序返回参数、代码程序返回参数。”卧龙指着操作手册,一一念道。
“这些变量名改了好几次,现在这个版本的命名,用户应该能直接看懂变量用法了。”凤雏脸上露出了笑容说道。
自定义图形变量:用户自行创建的图形化变量(只在第一槽位可见)
程序被调传入参数:调用当前图形程序时,传入的启动参数会存在这里
平台整合传入参数:跟低零代码平台集成后,可以获得低零平台传入的数据(如用户及权限)
图形程序返回参数:当所调用图形子程序有返回结果时,会自动存在这里
代码程序返回参数:存自定义扩展图形组件代码返回的结果值
“是啊,而且我们还在变量选择下拉框旁边专门加了变量名作用的解释,这样用户就更清楚了。”卧龙点了点头说道。
“太棒了,这样能提升用户的使用体验。”凤雏竖起大拇指说道。
“我一直坚信,最好的用户体验就是用户不用看操作手册也能轻松操作的系统,我们要朝着这个目标不断努力!”卧龙眼神坚定地说道。
“没错,咱们一起加油!”凤雏用力地拍了一下卧龙的肩膀说道。
两人在讨论完问题后,继续全力以赴地投入工作,以期实现更卓越的用户体验。
上述对话是我们在图形化编程桌面产品在用户体验设计方面的真实故事。我们耗费了三年的时间,执着坚持且潜心探索,始终怀着敬畏之心,最终谨慎地推出了这款图形化编程桌面。它可与传统低零代码平台实现紧密融合,并且通过图形化程序的方式,成功替代了复杂业务的后端代码编写工作。
我们的图形化编程桌面已经为众多大型生产制造业的线边生产系统注入了强大的高效与稳定能量。这些系统成功实现了 7×24 小时的不间断运行,表现极为出色且稳定。今年 6 月,官网(youshuda.cn)将如约而至与大家见面,让我们满心期待它为我们带来更多的震撼与精彩!
相关文章:

追求完美用户体验,从变量名设计的细节抓起
在一个安静的办公室里,卧龙和凤雏正坐在电脑前忙碌地工作着。阳光透过窗户洒在他们的脸上,映照出专注的神情。 “变量命名让人摸不着头脑,光看变量名很难搞清楚它的用途。”卧龙眉头紧皱,表情严肃地说道。 “哦?具体是…...
matlab实现K均值聚类
在MATLAB中实现聚类分析,可以使用MATLAB内置的聚类函数,如kmeans(用于K均值聚类),linkage和cluster(用于层次聚类),或者使用MATLAB的统计和机器学习工具箱中的其他函数。 以下是一个…...

详解BOM编程
华子目录 BOM编程window对象常见的window对象的属性常见的window对象的方法注意 history对象history对象的属性history对象的方法 screen 对象navigator 对象属性方法 location对象属性方法示例 BOM编程 JavaScript本质是在浏览器中运行,所以JavaScript提供了BOM&a…...

情感分类学习笔记(1)
文本情感分类(二):深度学习模型 - 科学空间|Scientific Spaces 一、代码理解 cw lambda x: list(jieba.cut(x)) #定义分词函数 您给出的代码定义了一个使用 jieba 分词库的分词函数。jieba 是一个用于中文分词的 Python 库。该函数 cw 是…...

EtherCAT运动控制器Delta机械手应用
ZMC406硬件介绍 ZMC406是正运动推出的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT、EtherNET、RS232、CAN和U盘等通讯接口,ZMC系列运动控制器可应用于各种需要脱机或联机运行的场合。 ZMC406支持6轴运动控制,最多可扩展至32轴&#…...

物联网杀虫灯—新型的环保杀虫设备
型号推荐:云境天合TH-FD2S】物联网杀虫灯是一种新型环保杀虫设备,其中风吸式太阳能杀虫灯作为其一种特殊类型,展现了独特的工作原理和优势。 风吸式太阳能杀虫灯以太阳能电池板为电源,白天储存电源,晚上为杀虫灯提供电…...
加盟零食店的真是大冤种
关注卢松松,会经常给你分享一些我的经验和观点。 我一朋友,在老家县城去年失业没事干,手里有一点钱但不多,就想着自己干点啥 。最后经多方打听考察,加盟了一个零食店,前前后后花去了近五六十万,…...

力扣刷题--数组--第三天
今天再做两道二分查找的题目,关于二分查找的知识可看我前两篇博客。话不多说,直接开干! 题目1:69.x 的平方根 题目详情: 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数&#…...

开源即时通讯IM框架 MobileIMSDK v6.5 发布
一、更新内容简介 本次更新为次要版本更新,进行了bug修复和优化升级(更新历史详见:码云 Release Notes、Github Release Notes)。 MobileIMSDK 可能是市面上唯一同时支持 UDPTCPWebSocket 三种协议的同类开源IM框架。轻量级、高…...
React 第二十七章 Hook useMemo
useMemo 函数可以用于缓存计算结果,以避免不必要的重复计算。 在React的函数组件中,当组件重新渲染时,函数组件内的所有代码都会重新执行。有些计算可能是非常消耗资源的,例如进行复杂的计算或进行网络请求。如果这些计算的结果在…...

自己写的爬虫小案例
网址:aHR0cDovL2pzc2NqZ3B0Lmp4d3JkLmdvdi5jbi8/dXJsPS92aWV3L3dvcmtpbmdVbml0L3dvcmtpbmdVbml0Lmh0bWw 这串代码能够爬取勘察单位企业的详细信息。 import requests import time import csv f open(勘察单位公司信息.csv,w,encodingutf-8,newline) csv_writer …...
Kafka 环境搭建和使用之单机模式详细教程
上一篇:Kakfa 简介及相关组件介绍 下一篇:Kafka 环境搭建之伪分布式集群详细教程 Kafka 环境搭建 Kafka的环境搭建可以根据不同的需求和场景采取不同的模式,主要包括以下几种: 单机模式(Standalone Mode): 在这种模式下,Kafka、Zookeeper 以及生产者和消费者都在同一…...

Xamarin.Android项目使用ConstraintLayout约束布局
Xamarin.AndroidX.ConstraintLayout Xamarin.Android.Support.Constraint.Layout Xamarin.AndroidX.ConstraintLayout.Solver Xamarin.AndroidX.DataBinding.ViewBinding Xamarin.AndroidX.Legacy.Support.Core.UI Xamarin.AndroidX.Lifecycle.LiveData ![在这里插入图片描述]…...
探索Java 18:未来技术趋势与革新之路
Java,作为一门历史悠久而又历久弥新的编程语言,始终站在技术发展的前沿,引领着软件开发的潮流。随着Java 18的发布,我们再次见证了这门语言的自我迭代与革新。本文将深入探讨Java 18带来的新特性、技术趋势,以及它如何…...

毕业论文怎么写? 推荐4个AI工具
写作这件事一直让我们从小学时期就开始头痛,初高中时期800字的作文让我们焦头烂额,一篇作文里用尽了口水话,拼拼凑凑才勉强完成。 大学时期以为可以轻松顺利毕业,结果毕业前的最后一道坎拦住我们的是毕业论文,这玩意不…...

JVM认识之垃圾收集算法
一、标记-清除算法 1、定义 标记-清除算法是最基础的垃圾收集算法。它分为标记和清除两个阶段。先标记出所有需要回收的对象(即垃圾),在标记完成后再统一回收所有垃圾对象。 2、优点和缺点 优点:实现简单缺点: 可能…...

docker-compose部署gitlab
需要提前安装docker和docker-compose环境 参考:部署docker-ce_安装部署docker-ce-CSDN博客 参考:docker-compose部署_docker compose部署本地tar-CSDN博客 创建gitlab的数据存放目录 mkdir /opt/gitlab && cd mkdir /opt/gitlab mkdir {conf…...

Colab/PyTorch - 001 PyTorch Basics
Colab/PyTorch - 001 PyTorch Basics 1. 源由2. PyTorch库概览3. 处理过程2.1 数据加载与处理2.2 构建神经网络2.3 模型推断2.4 兼容性 3. 张量介绍3.1 构建张量3.2 访问张量元素3.3 张量元素类型3.4 张量转换(NumPy Array)3.5 张量运算3.6 CPU v/s GPU …...

翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习三
合集 ChatGPT 通过图形化的方式来理解 Transformer 架构 翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习一翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习二翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深…...
基于Seata实现分布式事务实现
Seata 是一个开源的分布式事务解决方案,它提供了高性能和简单易用的分布式事务服务。Seata 将事务的参与者分为 TC(Transaction Coordinator)、TM(Transaction Manager)和 RM(Resource Manager)…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG
TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码:HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...

【Veristand】Veristand环境安装教程-Linux RT / Windows
首先声明,此教程是针对Simulink编译模型并导入Veristand中编写的,同时需要注意的是老用户编译可能用的是Veristand Model Framework,那个是历史版本,且NI不会再维护,新版本编译支持为VeriStand Model Generation Suppo…...