是否有人遇到过这样的情况:用 Java 编写并由(例如)法国程序员编写的现有代码库必须转换为英语程序员可以理解的代码?这里的问题是变量/方法/类名称、注释等都将采用该特定语言。
现在有可用的自动化解决方案吗?
(我在标题中使用了“翻译”一词,但显然我并不是指将代码移植到任何其他编程语言,也不是指 i18n。)
问候,
最佳答案
这当然是一项不平凡的任务。
我的第一个想法是
- 获取一些工具(解析器),将源代码解析为 XML 文件(或 AST)
- 按照您的要求对中间格式进行翻译可以在XML文件中使用XPATH来查找注释、变量名等。
- 那么该工具当然必须支持将XML文件重新转换为java源代码
问题:
- 翻译错误(翻译程序没有领域知识,翻译程序几乎肯定无法正确翻译计算机/编程术语、首字母缩略词、错误输入的单词、驼峰式方法名称等)
- 你不能盲目翻译,理想情况下你需要重构。否则,您可能会得到不再有效的源代码,因为(a:翻译将多个单词与单个翻译相匹配,这可能最终导致类/变量/方法具有相同的等。
- 如何确定不翻译哪些内容(例如 java 标准库类名等)
关于java - 翻译 LOC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1679883/