原文:Unity应用架构设计(1)—— MVVM 模式的设计和实施(Part 2)

MVVM回顾 经过上一篇文章的介绍,相信你对MVVM的设计思想有所了解。MVVM的核心思想就是解耦,View与ViewModel应该感受不到彼此的存在。 View只关心怎样渲染,而ViewModel只关心怎么处理逻辑,整个架构由数据进行驱动。不仅View与ViewModel彼此解耦,ViewModel与ViewModel之间也是解耦的。 通过消息订阅 发布机制,解决了ViewModel之间的强依赖 ...

2017-03-25 00:52 1 4042 推荐指数:

查看详情

Unity应用架构设计(1)—— MVVM 模式设计实施(Part 1)

初识 MVVM 谈起 MVVM 设计模式,可能第一映像你会想到 WPF/Sliverlight,他们提供了的数据绑定(Data Binding),命令(Command)等功能,这让 MVVM 模式得到很好的实现。 MVVM 设计模式顾名思义,通过分离关注点,各司其职。通过 Data ...

Thu May 12 07:58:00 CST 2016 7 6147
Unity应用架构设计(4)——设计可复用的SubView和SubViewModel(Part 1)

『可复用』这个词相信大家都熟悉,通过『可复用』的组件,可以大大提高软件开发效率。 值得注意的事,当我们设计一个可复用的面向对象组件时,需要保证其独立性,也就是我们熟知的『高内聚,低耦合』原则。 组件化设计的思路 不管是开发客户端应用程序还是开发服务器端应用程序,『组件』这个词我们并不 ...

Tue Mar 28 01:29:00 CST 2017 3 1140
Unity应用架构设计(13)——日志组件的实施

对于应用程序而言,日志是非常重要的功能,通过日志,我们可以跟踪应用程序的数据状态,记录Crash的日志可以帮助我们分析应用程序崩溃的原因,我们甚至可以通过日志来进行性能的监控。总之,日志的好处很多,特别是对Release之后的线上版本进行异常的跟踪。 日志存储的分类 在平常开发时 ...

Wed Jul 05 08:52:00 CST 2017 1 1657
Unity应用架构设计(10)——绕不开的协程和多线程(Part 2)

在上一回合谈到,客户端应用程序的所有操作都在主线程上进行,所以一些比较耗时的操作可以在异步线程上去进行,充分利用CPU的性能来达到程序的最佳性能。对于Unity而言,又提供了另外一种『异步』的概念,就是协程(Coroutine),通过反编译,它本质上还是在主线程上的优化手段,并不属于真正 ...

Fri May 26 20:55:00 CST 2017 5 3978
Unity应用架构设计(10)——绕不开的协程和多线程(Part 1)

在进入本章主题之前,我们必须要了解客户端应用程序都是单线程模型,即只有一个主线程(Main Thread),或者叫做UI线程,即所有的UI控件的创建和操作都是在主线程上完成的。而服务器端应用程序,也就是我们常见的Web应用程序往往是多线程的,故用户A访问势必不会影响用户B的访问过程。所以对 ...

Thu May 25 01:13:00 CST 2017 3 1383
Unity应用架构设计(2)——使用中介者模式解耦ViewModel之间通信

当你开发一个客户端应用程序的时候,往往一个单页会包含很多子模块,在不同的平台下,这些子模块又被叫成子View(视图),或者子Component(组件)。越是复杂的页面,被切割出来的子模块就越多,子模块越多,彼此之间需要同步的数据和状态就越频繁,即易产生耦合。那么如何保证在复杂业务情况下 ...

Sun Mar 26 01:17:00 CST 2017 2 2320
浅谈iOS中MVVM架构设计

  MVVM就是在MVC的基础上分离出业务处理的逻辑到viewModel层。   M: Model层是API请求的原始数据,充当DTO(数据传输对象),当然,用字典也是可以的,编程么,要灵活一些。Model层是比较薄的一层。   V: View层,视图展示,由viewController ...

Fri Dec 16 16:37:00 CST 2016 0 2366
unity 架构设计的学习

对于游戏开发而言,不同种类的游戏其架构方式都不同,并不存在什么完美架构模式某种类型是可以有分别的框架的,比如上帝视角ARPG,比如GAL,比如格斗,比如跑酷,比如卡牌,比如打飞机游戏。而他们使用的游戏架构自然也是不同的。通常来说游戏项目最合理的方式是由一个主程根据项目需求制定一套新的结构和各部分间 ...

Sun Jan 10 00:18:00 CST 2016 0 3556
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM