个人简介

Echo Blog


江湖无名 安心练剑
  • 数据分析-01-什么是埋点
    什么是埋点 所谓埋点是数据领域的专业术语,也是互联网应用里的一个俗称。 它的学名应该叫做事件追踪,对应的英文是Event Tracking。 它主要是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。 埋点是为了满足快捷、高效、丰富的数据应用而做的用户行为过程及结果记录。数据埋点是一种常用的数据采集的方法。 埋点是数据的来源,采集的数据可以分析网站/APP的使用情况...
    2020-06-03 05:34:28 | Data
  • JavaParser 系列学习-08-变量和引用
    解决符号和参考 与其他解析器一样,JavaParser接收源代码中存在的信息,并将其组织成一棵树,即抽象语法树。 在许多情况下,AST中显示的信息足以满足用户的需求。 但是,在其他情况下,您可能需要详细说明AST并计算其他信息。 特别是,您可能需要解析引用并找到节点之间的关系。 从某种意义上讲,这意味着跟踪新链接并将树转换为图形。 当我们找到Java代码中使用的名称时,我们会将其...
    2020-05-29 06:24:18 | java
  • JavaParser 系列学习-07-格式化输出&词汇保存
    漂亮的印刷和词法保存 您可以将JavaParser用于不同的目的。 最常见的两个是代码生成和代码转换。 在这两种情况下,您最终都将生成Java代码,可能将其存储在扩展名为.java的文件中。 在 CompilationUnit 上对 toString() 的简单调用将返回一个字符串,可用于编写源代码。 我们面临的问题是:它将如何格式化AST中的代码? 答案是两种方式之一: ...
    2020-05-29 06:24:18 | java
  • JavaParser 系列学习-06-comments 注释
    注释-这里是龙 这个问题从哪里开始? -用经典的程序员隐喻看来。 我想说,作为开发人员社区,已经花了更多时间讨论关于注释解析的想法,而不是JavaParser项目中的任何其他功能。 很难开始,也许是因为它的尾巴(坏双关语)还没有结束。 在撰写本文时,该库的下一个主要版本计划从头开始重建行为。 为什么评论如此具有挑战性? 好的,正式的注释不构成语言的抽象语法树的一部分。 抽象部分...
    2020-05-29 06:24:18 | java
  • JavaParser 系列学习-05-快速访问
    飞行访问 在本章中,我们将不停地浏览JavaParser库提供的主要功能。 您可以将其视为快速入门指南,使您可以开始在本地计算机上运行。 我们将分析一个有趣的代码,尽管基本的计算器以反向波兰符号格式输入输入并计算结果(维基百科)。 它还具有一个简单的存储功能,可以存储单个数字,类似于您会发现的普通计算器。 该类的长度合理,因此可以在附录A中找到。 随行同伴 首先,尽管我们应该在...
    2020-05-29 06:24:18 | java
  • JavaParser 系列学习-01-AST 简单介绍
    AST 抽象语法树简介 抽象语法树简介 如果不先了解语法树的概念,就不可能考虑Java语言解析器将如何有用。 首先,我们尝试想象源代码可以表示为一棵树。 两者都有一个起点,从这里分支彼此独立地形成,无论是作为代码语句,还是在树的情况下,都是实际的分支。 与真实树的分支一样,将复杂的语句分解成较小的部分的过程将继续进行,直到我们碰到末端或叶子为止。 代表Java代码的树将具有一个代...
    2020-05-29 06:24:18 | java
  • JavaParser 系列学习-00-介绍
    是什么 JavaParser库以其最简单的形式允许您与Java源代码进行交互,作为Java环境中的Java对象表示形式。 更正式地说,我们将此对象表示形式称为抽象语法树(AST)。 此外,它提供了一种方便的机制,可以使用我们称为“访客支持”的功能来导航树。 这使开发人员能够专注于在源代码中识别有趣的模式,而不必编写费力的树遍历代码。 该库的最终主要功能是能够操纵源代码的基础结构。 ...
    2020-05-29 06:24:18 | java
  • java AST 抽象语法树-JavaParser 实际使用
    简单使用 maven 引入 <dependency> <groupId>com.github.javaparser</groupId> <artifactId>javaparser-symbol-solver-core</artifactId> <version>3.15.21</ver...
    2020-05-29 06:24:18 | java