【AICon】 如何构建高效的 RAG 系统?RAG 技术在实际应用中遇到的挑战及应对策略?>>> 了解详情
写点什么

asDox 最新发布版本推动 ActionScript 3 的代码生成

  • 2008-05-15
  • 本文字数:959 字

    阅读完需:约 3 分钟

上周, Michael Ramirez 发布了使用 Python 编写的 ActionScript 3 解析器—— asDox 1.0 Alpha 2 的版本。该解析器建立于针对Java 的 qDox 的基础上,它能够从源文件中提取比如类/接口、import 句柄、JavaDoc 标签和成员声明等一些特定信息。为了对该解析器进行更深入的了解,InfoQ 就此采访了 Ramirez。

Ramirez 这样回忆他最初使用 Python 开发 ActionScript 解析器的初衷:

我决定开发 asDox 是因为我觉得 ActionScript 3 需要一个类似于 qDox 的代码生成工具。而我选择 Python 作为开发语言,是由于 PyParsing 模块的存在。我发现 PyParsing 使用起来非常方便,并且在用它来开发 ActionScript 3 解析器的过程让我觉得挺有意思的。 最终的开发成品是我的目标,但真正要发布一个正规版本可能还是需要花上一些时间。asDox 可以通过生成代码来提高开发人员的工作效率。比如,假使你开发一组 ActionScript 3 类的话,使用 asDox 可以帮助你自动生成 PHP 后端代码。

在关于 asDox 和作为 Flex Builder 一部分的 Adobe 的 ASDoc 之间的关系这个问题上,Ramirez 说:

AsDoc 是通过解析内嵌在 ActionScript 3 源文件中的 JavaDoc 标签来生成 API 文档的工具。而 asDox 不仅能够解析 JavaDoc 标签,还能够解析包、类、变量和方法等等。它能够为开发人员提供了更多 ActionScript 3 源文件中的信息。如果将模板引擎与之结合使用的话,它将会是一个极为强大的代码生成工具。

另外,Ramirez 接着解释了他从 qDox 中的借鉴了什么以及在 asDox 的实现中所做的优化,他指出“asDox 的 Alpha 1 版本有一个和 qDox 的非常接近的 API,这使得 Python 开发人员很难使用 asDox。在Python 不是 Java(Python Is Not Java)发表之后,经过对之前的工作进行重构,最近的这个发布版本对 Python 则更为友好一些。”

asDox 的开发过程并非一帆风顺。正如 Ramirez 所述,“在开发 asDox 过程中最大的挑战是编写 ActionScript 3 解析器。ActionScript 3 是一种很难解析的语言,单就它的文法就很棘手。”

无论如何,Ramirez 计划还是继续他的工作。他说:“我计划为 asDox 开发一个 Adobe Air 桌面应用,但目前,我首先需要将精力集中在 asDox 1.0.0 的发布上。我非常希望能够不断地得到社区的反馈,从而将这个工具进一步优化。”

查看英文原文: New asDox Release Helps ActionScript 3 Code Generation

2008-05-15 22:58799
用户头像

发布了 71 篇内容, 共 19.0 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

【一Go到底】第三十天---排序

指剑

Go golang 10月月更

如何向表中插入数据以及如何更新、删除表中的数据

攻城狮Wayne

Python 10月月更 插入数据

ndarray的赋值、视图、拷贝和广播

攻城狮Wayne

Python 赋值结构 10月月更

C++从入门到精通(第七篇) :string类的讲解和模拟实现

雪芙花

c 10月月更 C++

【一Go到底】第三十一天---查找

指剑

Go golang 10月月更

6000字带你揭开ICT和云计算技术的神秘面纱!

wljslmz

云计算 ICT 以太网 10月月更

Web3学习日记

无人之路

日志 web3

【精彩内容分享】SoCC 2022 | 大规模云系统自动化容量评估的探索与落地 – DeepScaling

TRaaS

数据湖(十五):Spark与Iceberg整合写操作

Lansonli

数据湖 10月月更

Go语言入门09—结构体

良猿

Go golang 后端 10月月更

【笔记】面向过程的SQL扩展(一)

w010w

数据库 sql 10月月更

【运维】Centos 7 一键 搭建 Java开发者环境

石臻臻的杂货铺

Java 运维 10月月更

字母大小写全排列

掘金安东尼

算法 10月月更

分享一份2022最新Java面试八股文:从基础到高级整整涵盖了Java14 个核心技术

程序员小毕

Java 程序员 面试 程序人生 后端

Python 文件处理 open()函数

Python-派大星

10月月更

云数据库助力电池云(二)

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

运维进阶训练营 -W02H

赤色闪电

运维

数据处理

攻城狮Wayne

Python 数据处理 10月月更

Numpy 基础教程之Numpy的介绍

攻城狮Wayne

Python Numpy 10月月更

SAP | Processing Blocks的三种类型

暮春零贰

SAP abap 10月月更

Mimir 速体验 (Part 5):原生 OTLP 数据写入

Grafana 爱好者

Grafana OpenTelemetry Mimir

【分布式技术专题】「架构实践于案例分析」总结和盘点目前常用分布式事务特别及问题分析(上)

洛神灬殇

分布式事务 TCC 分布式事务管理

海龟编程 python绘图工具turtle库的用法 turtle库使用方法大全,画笔设置 画布设置 绘图设置,画笔粗细,画笔颜色, 画笔速度。

Python-派大星

10月月更

C++从入门到精通(第七篇) :vector深度剖析及模拟实现

雪芙花

c 10月月更 C++

Mimir 速体验 (Part 4):数据抓取的高可靠

Grafana 爱好者

Grafana Prometheus Mimir

图解 | 聊聊「秒杀」

小小怪下士

Java 程序员 高并发 秒杀

dockerfile分层构建业务镜像

忙着长大#

Docker 镜像

极客时间运维进阶训练营第二周作业

老曹

ndarray 的创建及属性

攻城狮Wayne

Python 10月月更 ndarray

WLAN无线局域网技术基础(三)无线侧组网概念,2.4GHz频段与5GHz频段区别和优缺点,胖AP架构和瘦AP架构的优缺点

Python-派大星

10月月更

服务怎么升级

agnostic

服务升级

asDox最新发布版本推动ActionScript 3的代码生成_Java_Moxie Zhang_InfoQ精选文章