认真对待ASCII绘图:程序员如何绘制代码图

荣誉提名
交互式数据可视化计算方法在HCI中的应用软件工程师与开发者

文献标题

Taking ASCII Drawings Seriously: How Programmers Diagram Code

文献信息

  • 主题领域: 软件开发中的ASCII图形应用及分析
  • 关键词: 编程, 图形化表示, ASCII图表, 软件开发, 文档工具, 图形设计空间, 开源代码, 知识传递

研究背景与问题

  • 问题与挑战:

    • 大部分编程工具以文本为主,程序员为使代码可视化,通常使用ASCII图表(基于文本的图形化表现形式)来表达视觉概念。然而,对这些图的学术研究较少,研究者对其创建原因、使用场景和展示内容缺乏系统性了解。
    • 当前代码文档化的主要问题包括:文档与代码不一致、更新复杂、维护困难,以及可视化与文本整合不足。
  • 重要性:

    • ASCII图表在软件开发生命周期的多个阶段均有实际用途,包括设计、测试、代码审查和知识传递。系统理解这些实践可以改进未来工具,实现文本与图形的紧密结合。
  • 研究动机与相关工作:

    • 近年来,有相当多研究尝试将可视化添加到编程的教育、沟通和开发工具中,但大多集中于特定形式的图表(如UML)。对于开发者如何在实际代码中嵌入可视化(例如ASCII图表)的研究较少。
    • 本研究补充和扩展了Cherubini等研究对图表在软件开发中的角色的调研,但采用了对ASCII图的内容和设计方式的系统性分析。

解决方案

  • 研究方法:

    • 采访了9位ASCII图表作者以回答研究问题(ASCII图表的特性、角色及展示的内容)。
    • 汇集了4大开源项目的507幅ASCII图表(Linux、Chromium、LLVM、TensorFlow),通过内容分析生成一个包含七个维度的图表设计空间。
  • 创新之处:

    • 采访与内容分析结合:首次系统性分析了ASCII图表作为专业文档化工具的角色。
    • 设计空间模型:定义了7个维度来分类这些图表,详细刻画其表现形式及与代码的关联。
  • 实施步骤与技术:

    • 数据收集:通过代码库中注释的格式特征手动筛选出2156幅ASCII图表。
    • 编码与分析:基于概念、可视化形式和与代码关系等方面为代表性图表进行主题分析,并归纳出分类维度。
    • 采访:讨论图表的创作动机、设计流程及受众需求,总结出使用图表的五大实用场景。

研究成果

  • 具体成果:

    1. 关键特性: ASCII图表具有“文本”和“可视化”的双重特性。
      • 作为文本,它与代码无缝整合,便于操作、查看与协作。
      • 作为可视化形式,它能更好地表达一些难以用代码或文字清晰描述的概念。
    2. 角色与用途:
      • 重新表达外部信息(离线草图或反向工程的结果)。
      • 测试案例说明。
      • 协助代码审查与验证。
      • 为他人或将来的自己提供文档支持。
    3. 设计空间:
      • 覆盖七个维度(概念、视觉编码、注释、抽象、省略、范围、引用),反映出ASCII图表内容和形式的多样性。
    4. 工具设计启发: 提供了设计未来文本与可视化结合工具的建议,例如支持双向编辑(ASCII与矢量图形)以及与代码的更紧密链接。
  • 优势:

    • 对比现有工具(如外部文档或高级可视化工具),ASCII图表因其嵌入性质具有更高的可用性,能融入现有软件开发流程。
    • 低创建门槛,广泛兼容性(适用于任何文本编辑器、终端等工具)。
  • 实验与评估结果:

    • 从4个大型开源代码库采集的2156幅图中分析得出:尽管ASCII图表形式简单,但从内容和视觉形式上表现出了极大的多样性。
    • 设计空间能清晰描述这些图表的组成与功能,适用于进一步研究和工具设计。
  • 局限性与未来方向:

    • 局限性:
      1. 仅选择了4个开源项目样本,可能未全面覆盖所有使用场景。
      2. 数据分析主要由计算机科学背景研究员完成,可能对其他领域图表的理解不够深入。
    • 未来方向:
      1. 开发支持更丰富媒体格式的工具,同时维持其广泛兼容性。
      2. 探索与大规模编程工具兼容的交互式图表编辑器。
      3. 利用自然语言处理(例如大型语言模型)生成动态可视化的自动化工具。

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/papers/chi/147729/2024

广告推荐

学习 AI 编程到 CodeNow

open_in_new打开DOI链接
DOI: https://doi.org/10.1145/3613904.3642683
一眼看懂

论文快照

fact_check
dataset
来源
CHI
calendar_month
年份
2024
emoji_events
奖项
荣誉提名
group
作者
6 位作者
sell
研究子方向
交互式数据可视化、计算方法在HCI中的应用
work
职业/产业
软件工程师与开发者
article
内容状态
已索引正文
hub
相关论文
10 篇相关论文