范例:如何在源代码中,使用 “ASCII 艺术图”解释代码?

317 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1 前言

一般的源代码编写都是在文本编译器(vscode、notepad++)或者IDE软件中进行,在进行代码注释时,我们不得不选择文字。但俗话说:“一图胜千言”,如果能在代码中直接画图,可以使我们的代码注释得到简化,而且带图的注释也能更好的让人理解。怎样能在源代码的文本文件中画图呢?用ASCII字符画图是一个不错的选择!如下是linux5个英文字母的ASCII字符艺术图。本文接下来的内容将会带大家看一下,用ASCII字符做代码注释的范例。

 __        __                                                 
/  |      /  |                                                
$$ |      $$/        _______         __    __        __    __ 
$$ |      /  |      /       \       /  |  /  |      /  \  /  |
$$ |      $$ |      $$$$$$$  |      $$ |  $$ |      $$  /$$/ 
$$ |      $$ |      $$ |  $$ |      $$ |  $$ |       $$  $$<  
$$ |      $$ |      $$ |  $$ |      $$ __$$ |       /$$$$  \ 
$$ |      $$ |      $$ |  $$ |      $$    $$/       /$$/ $$  |
$$/       $$/       $$/   $$/        $$$$$$/        $$/   $$/                                                                                                                          

2 范例

2.1 数据结构(Data Structures)

代码中最常见的一种ASCII艺术图是说明数据结构的形状。这个范例来自LLVM image.png

Jikes RVM中数据结构的布局:

image.png

Swift编译器内部:

image.png

2.2 状态机(State Machines)

JavaScript分析:

image.png

Cloud Spanner 中的 RPC

image.png

I/O流状态:

image.png

2.3 问题域中的逻辑结构(Logical Structure in the Problem Domain)

反编译的NWScript程序中的控制流:

image.png

ECC内部:

image.png

格式化数字

image.png

量子电路

image.png

在OS内核中均衡内存管理对象

image.png

子类型关系(这是一个非常酷的特殊情况,其中 ASCII 艺术图也是代码):

image.png

DBF文件的格式:

image.png

URI的结构

image.png

2.4 几何学(Geometry)

阿波罗制导计算机中的姿态控制:

image.png

四叉树

image.png

铣床的速度控制

image.png

滚动网页

image.png

我正在参与掘金技术社区创作者签约计划招募活动点击链接报名投稿