首页 > 代码库 > JSBinding+Bridge.Net:框架与逻辑的关系

JSBinding+Bridge.Net:框架与逻辑的关系

在JSB+Bridge工程中你可以同时维护Cs版本和Js版本的游戏。

框架代码:简称framework,表示那些不进行热更的代码

逻辑代码:简称logic,表示那些可进行热更的代码

 

在Cs工程中,将代码明确划分为框架和逻辑。框架代码放在 Assets/Scripts/GameFramework,逻辑代码放在 Assets/Scripts/GameLogic。游戏运行过程中,框架代码跑的是C#,逻辑代码跑的也是C#。

在Js工程中,框架代码也是在 Assets/Scripts/GameFramework 下,这个目录是从Cs工程映射过来的,修改任意一边的内容,另外一边就会自动变化。逻辑代码则是放在 Assets/StreamingAssets/JavaScript/Gen2.javascript 中的。Gen2是Cs工程下的逻辑代码编译生成的Js代码。在游戏运行过程中,框架代码跑的是C#,逻辑代码跑的是Js。

在BridgeProj工程中,把 Cs工程下 Assets/Scripts/GameLogic 整个目录映射过来。他的目标是把这些逻辑代码编译生成Js代码给Js工程使用。这里会有个问题,逻辑代码是可以依赖框架代码的,如果只是把逻辑代码映射到BridgeProj工程中,是不可能编译得过的。这个问题是通过csw.cs解决的。比如说,

 

返回:JSBinding+Bridge.NET:Unity游戏热更新方案

JSBinding+Bridge.Net:框架与逻辑的关系