gpt4 book ai didi

user-interface - 编程中应采用哪些替代的用户输入技术?

转载 作者:行者123 更新时间:2023-12-04 06:51:04 25 4
gpt4 key购买 nike

由于需要输入大量特殊符号等,因此编程与例如文字处理特别不同。

在当前新的用户界面技术中,哪些适合编程,为什么?

还是语言语法的想法是问题,我们应该以更具象征性的方式进行编程,如果是,这将如何影响用户界面?

编辑:当我指定用户界面技术时,我将其开放给使用现有硬件(鼠标/键盘)和其他一些东西的东西,例如多点触摸,手势识别,增强现实(有关一些出色的示例,请参见HitLabNz)。我对如何将它们应用于编程很感兴趣。

最佳答案

我只是在想这个。我打算写一篇关于它的博客文章,我不妨从这里开始。在编程中,我认为我们不仅需要一种新的输入法,还需要一种新的隐喻。这是一个三层的事情。模型隐喻接口(interface)。

最近,我一直在思考,语言对于表示计算而言是一个糟糕的隐喻。语言是我们用于交流的东西。您可以将程序看作是与计算机的通信,同时也是与其他程序员的通信。但是,除了书面文字以外,还有其他交流方式。我正在这里处理列表,请随时编辑此帖子以向列表中添加更多内容。

交流方式

  • 语音
  • 肢体语言
  • 手势
  • 面部表情
  • 手语
  • 绘画/绘画
  • 拨盘,按钮,滑块,指向,拖动(gui)

  • 编程的另一个隐喻是构建。这是一些构建功能性事物的可能方法,可以构成编程接口(interface)的基础

    构建功能性事物的方法
  • 齿轮/ Spring 和其他力学
  • 折纸/裁切/粘合
  • 跳线
  • 电子电路
  • 铰链,球轴承,车轮
  • 喷泉阀门和管道
  • 阿基米德机器:皮带轮,杠杆,螺丝
  • 乐高

  • 根据定义,指定计算的另一种方式。

    定义方法
    -约束
    -分类
    -集合论
    - 特性
    - 症状
    -逻辑表
    -规则
    -铁路(如铁路图中所示)

    但是请记住为什么我们要这样做。编程语言现在的工作方式显然存在一些弱点,(否则我们不想制作新语言),所以在设计新语言时,请记住它们

    当前语言存在的问题
  • 接口(interface)已隐藏
  • API是隐藏的
  • 副作用是导致bug的主要原因-程序的任何部分都可能影响其他任何部分。
  • 重构-有时您会发现自己在重复自己,因此需要一种简单的方法将重复内容分解为宏,函数或其他隐喻。这主要是通过大量的文本操作来手动完成的(或者在Java中是半自动完成的)。是否有一个新的比喻会使这种事情看起来完全愚蠢?
  • 您需要一种简单的方法来定义自己的构建基块,即“单词”或成语,以用于构建更复杂的结构。您自己的工具,您自己的环境部分。许多语言都不允许您以一流的方式进行操作。
  • 编译器会因丝毫错误而严厉惩罚程序员。
  • 变量缺乏时间感-无法查询过去已设置变量的所有值的历史记录。换句话说,我们可以使用一种编程语言来“倒带”程序进度吗?变量经常更改为意外值这一事实是错误的另一个来源。这是副作用问题
  • 的另一半
  • 大多数编程语言都有相当陡峭的学习曲线
  • 在整个代码中都对库或小部件X的引用很大程度上将您带到了该库-如果不进行大量重构就很难切换到类似的等效库。这很大程度上与库具有名称这一事实有关,为了使用库,我们在整个代码中对该库的名称及其方法进行了硬编码。有没有更好的办法?
  • 并行性差,多线程会导致错误,竞争条件和死锁。是否有更好的并行处理方法,使此类错误无法实现?仅这个问题就导致了许多新语言的创建。
  • 超越人们的想象范围,人们。键盘可能是输入复杂关系和符号的最有效界面。你确定吗?除了鼠标,触摸屏或平板电脑外,还有更多选择。与计算机交互的方式数不胜数-我们都只选择了一种或两种相当普通的方式。
  • 关于user-interface - 编程中应采用哪些替代的用户输入技术?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/441816/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com