在进行新项目的开发或者接手、后期维护其他一些项目时,经常性的,我们会遇到以下情况:

1、使用新的插件替换已有的bug比较多或者不在维护的插件;

2、因策划需求或美术资源的变更,而不得不更换游戏中的游戏对象/组件;

往往这种时候,由于项目前期的考虑不周,或者项目进度紧急,采用的方案这时候就会暴漏很多问题,举个例子:

项目中使用EZGUI时,文字的显示使用的是SpriteText组件,需要的地方直接进行其Text属性的修改,这时候如果需要替换使用TextMesh,TextMesh的显示需要修改的是text属性(两者大小写不同)。全局搜索一下,就会发现整个项目中充斥了这种东西,如果这个时候要你替换。。。

因此,在项目中,最好不要直接调用Unity3d提供的API,最好进行一次自己的二次封装。

就拿上面的例子来说,简单的处理方案,就是我们可以对这两个组件进行一次函数扩展,都封装为SetText,这样,在调用的地方,都是统一的方法,更换时我们只需要更换定义的地方就可以了。

最新文章

  1. 常用 Git 命令
  2. GCC 编译优化指南(转)
  3. 我的前端架构之二--统一扩展Js方法
  4. EF Code First 更新数据库, 数据库迁移
  5. Spark Streaming 原理剖析
  6. sql 设计反模式
  7. RAC下一个Fatal NI connect error 12170.错误处理
  8. .net core系列之初识asp.net core
  9. 高级软件工程2017第7次作业--团队项目:Beta阶段综合报告
  10. Emojicon表情之快速应用于Android项目
  11. Spring Factory
  12. Unexpected character '�' (1:0) while parsing file
  13. HDU3592(差分约束)
  14. 详解C#7.0新特性
  15. Unique constraint on single String column with GreenDao
  16. Centos7使用yum安装Mysql5.7.19的详细步骤(可用)
  17. 自己写个activex控件,如何知道他的classid(转载)
  18. 把thinkphp项目拷贝到其他电脑上报错
  19. (转)利用Spring AOP自定义注解解决日志和签名校验
  20. java 连接MySQL的代码

热门文章

  1. http请求的组成部分
  2. 【随记】数据库还原失败System.Data.SqlClient.SqlError: 无法执行 BACKUP LOG,因为当前没有数据库备份
  3. 添加标签2 jquery 和JS
  4. Linux 防火墙设置,禁止某个ip访问
  5. CentOS6.5 yum安装桌面环境
  6. auto_ptr, which can release the space automatically
  7. spoj 4487. Can you answer these queries VI (gss6) splay 常数优化
  8. BZOJ 1003 物流运输trans
  9. QT5.1.1中MinGW4.8的环境变量配置
  10. SQL2000和SQL2005和SQL2008同时安装问题