Skip to content

Commit

Permalink
🐳 [对接文档] fix 源码不在同包下,解析出错问题。
Browse files Browse the repository at this point in the history
  • Loading branch information
iohao committed Jul 8, 2024
1 parent 1e8b078 commit e9c3eba
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 2 deletions.
16 changes: 15 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -579,7 +579,21 @@ ioGame 具备[全链路调用日志跟踪](https://www.yuque.com/iohao/game/zuru



与前端对接联调方面,ioGame 提供了[游戏文档生成](https://www.yuque.com/iohao/game/irth38)的辅助功能,可以做到**代码即对接文档**。简单地说,当业务代码编写完后,框架会自动生成最新的文档。如果没有游戏文档的生成,那么你将要抽出一些时间来编写、维护对接文档的工作,而且当团队人数多了之后,文档就会很乱、不同步、不是最新的、忘记更新等情况就会出现。
与前端对接联调方面,ioGame 提供了[游戏文档生成](https://www.yuque.com/iohao/game/irth38)的辅助功能,可以做到**代码即对接文档**。简单地说,当业务代码编写完后,框架会自动生成最新的文本文档。ioGame 除了能提供文本文档的生成外,还能支持生成与客户端联调的代码(即代码文档)、并且是可扩展的。通常,客户端联调代码有:

1. 支持生成 C# 客户端的联调代码,通常用在 Unity、Godot 客户端,具体可阅读 [SDK C# 代码生成](https://www.yuque.com/iohao/game/fgrizbhz4qqzd1vl)
2. 支持生成 TypeScript 客户端的联调代码,通常用在 cocos、laya 客户端,具体可阅读 [SDK TypeScript 代码生成](https://www.yuque.com/iohao/game/mywnvkhemv8wm396)



与前端对接联调方面,ioGame 提供了[生成与客户端联调的代码](https://www.yuque.com/iohao/game/mywnvkhemv8wm396)。代码生成可为客户端开发者减少巨大的工作量,并可为客户端开发者屏蔽路由等概念。直接面向接口编程,面向接口编程的几个优点

1. 帮助客户端开发者减少巨大的工作量。
2. 为双方联调**减少心智负担**。联调代码使用简单,与本地方法调用一般丝滑。
3. 帮助客户端开发者屏蔽与服务器交互部分,将更多的精力放在真正的业务上。
4. 方法**参数类型安全、明确**。可有效避免安全隐患,从而减少联调时的低级错误。
5. 减少服务器与客户端双方对接时的沟通成本,**代码即文档**。生成的联调代码中有文档与使用示例,即使是新手,也能将使用成本拉到 0。
6. 抛弃传统面向协议的对接方式,使用直观易用面向接口的对接方式。传统的对接方式,在客户端发送请求后并不能知道该请求会返回什么,这通常需要在协议文件中阅读与查找。如果协议较少时,这样做的问题并不大,但如果有数百个协议时,这样的工作方式是低效的,因为协议文件中存在着大量的干扰因素。



Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,10 @@ JavaClass analyseJavaClass(Class<?> clazz) {
String srcPath = sourceFilePathFun.apply(resource).replace("class", "java");

File file = new File(srcPath);
javaProjectBuilder.addSourceTree(file);
// 源码在此包才做处理
if (file.exists()) {
javaProjectBuilder.addSourceTree(file);
}

return javaProjectBuilder.getClassByName(clazz.getName());
}
Expand Down

0 comments on commit e9c3eba

Please sign in to comment.