设计模式在实际开发中的应用


分析功能:

1.接到项目后要先分析好模块,分析好模块后再从模块里分析功能,把一个大的项目分成N个模块再把模块分析成N个功能点,把每个功能点都进行封装,有一个管理类进行管理。

代码逻辑分工

  1. 代码要做到层层管理,一个类管理着另外的一个些管理类,管理类里面又要管理封装一些功能点。做这一部分的时候建议使用观察者设计模式,定义 一个接口父类,让后通过不同的功能子类来基础接口父类,最后通过调用接口父类来管理子类。

    2.要做到功能和流程区分,字段和逻辑区别。 这里就是代码实现是要注意点地方,代码实现时要注意到功能逻辑不能和框架结构相混淆,要做到代码结构和功能实现相分离,如果项目中if判断用的话可以考虑使用枚举。

代码设计
1.搭建好框架结构,主题思想就是分而治之,高内聚,低耦合。

2.. 分而治之: 就是把每个功能点封装成一个类,一个类就只负责一个件事,多了不管!!! 再者就是定义好抽象类和类,接口等一些规范,尽量就是把每个概念相同的类定义一个抽象类(概念相同就某个模块里的一个功能点,想这些功能点都是在封装干一件事件所以他们的概念是相同的,所以就把他们这些功能点都给封装成一个抽象的父类,让他们继承),把功能相同的定义成接口(功能点相同的就是把一些功能定义成接口,比如,有的继承了抽象父类并且没有继承MonoBehaviour的类需要有 MonoBehaviour的功能点,在这时就不能再让继承了抽象父类的,功能点类去继承MonoBehaviour了,所以这时候可以定义一个接口,让接口继承MonoBehaviour,然后在让封装功能点的类去继承接口这时封装功能点的类就有MonoBehaviour的功能点了,以后的用法都是这样类似用法,要灵活运用抽象类和接口的用法), 而这些封装功能点的类要进行继承抽象类和接口进行规范。
高内聚 :就是把封装好功能点的类进行封装把他们放在一个管理类里面进行统一管理,初始化和更新。
低耦合: 就是把每个管理类在进行封装把每个不同的管理类都在封装在一个类里面进行管理(俗称:外观类)

.总的思想就是一个管理类封装一个些功能 点 让后在让另一个管理类来管理这些管理类 做到游戏程序只有一个进口,分层管理 ,层层管理。尽量少写散弹式的脚本,要做到一个类管理所有类。做到层层管理。

.. 如果状态超过两种或者两种一上了建议使用枚举 ,让后可以用很少的字段来控制状态的切换。

总结:

在项目开始之前首先要做的就是分析功能并按照客户要要来选择合适的技术框架,框架没有最好的,只用最合适的,这样做的有一个好处就是可以避免后期客户需求改动幅度特别而需要重写。
在一般的的项目中界面UI使用MVC框架还是蛮多的,MVC框架可以很好的把数据和功能实现相分离,这样可以做到修改数据或者功能实现不会牵扯太多的代码。我现在经常用的框架就是MVC,轻量级分布式状态机,还有就为外观模式(观察者模式),在这里我要说的是,观察者模式和MVC配合使用会用意想不到的效果。虽然MVC可以把数据和实现相分离但是如果界面中没有好的代码结构那么以后改起来一样会很头疼,所以这样我比较喜欢使用MVC做总体框架,界面UI使用观察者设计模式来实现。
最后我想说的是如果在项目经验不多的时候可以多看一些大神的代码,和一些项目的源码,这样可以快速的提升自己的编码水平和设计水平。

原文地址:http://blog.51cto.com/14058389/2314771

时间: 2024-11-01 09:24:46

设计模式在实际开发中的应用的相关文章

Java 设计模式之模板方法开发中应用

模板方法差不多是Java设计模式中除单例之外的另一种非常简单也是我们在写程序时非常常用的一种方法了.以至于当你看到模板方法的设计模式时你会感觉到,这不是我在程序中经常用到的方法么. 定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类不可以改变一个算法的结构即可重定义该算法的某些特定步骤. 下面是我总结的模板方法中具体的代码实现通用框架 1:抽象的模板类: package template; public abstract class AbstractClass { protect

MVC设计模式在游戏开发中的应用

一 定义 MVC即Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写. MVC是一种"前端"的设计模式. MVC的目的是:希望View和Model分离,当某一方改变时,而另一个方不必随之改变的. 例如,Java EE平台,iOS都是典型的基于MVC思想思想的,那么我们怎么在游戏设计中使用MVC模式呢. 二 MVC架构详解 1 模型Model 一直推荐一种思想:"所有的开发都是以数据位中心".在MV

Android开发中无处不在的设计模式——原型模式

不知不觉这个系列已经写了三篇了,其实很早之前就想写设计模式了,只不过怕自己误人子弟没有提笔去写.后来在实际开发中,发现设计模式可以让一个开发人员融会贯通所学的知识,为了进一步巩固自己,就写下了这一些列文章.前面介绍了三个模式. Android开发中无处不在的设计模式--单例模式 Android开发中无处不在的设计模式--Builder模式 Android开发中无处不在的设计模式--观察者模式 本篇文章介绍的模式其实很简单,即原型模式,按照惯例,先看定义. 用原型实例指定创建对象的种类,并通过拷贝

Android开发中无处不在的设计模式——策略模式

这个系列停更了好久了,差不多可以重新拿起来更一篇了,这篇文章主要介绍策略模式.在这之前,先温习一下前面介绍的4种模式. 设计模式很重要! 设计模式很重要! 设计模式很重要! 重要的事说三遍!!! Android开发中无处不在的设计模式--单例模式 Android开发中无处不在的设计模式--Builder模式 Android开发中无处不在的设计模式--观察者模式 Android开发中无处不在的设计模式--原型模式 接着看下策略模式的定义 策略模式定义了一些列的算法,并将每一个算法封装起来,而且使它

Android开发中无处不在的设计模式——动态代理模式

继续更新设计模式系列,写这个模式的主要原因是最近看到了动态代理的代码. 先来回顾一下前5个模式: - Android开发中无处不在的设计模式--单例模式 - Android开发中无处不在的设计模式--Builder模式 - Android开发中无处不在的设计模式--观察者模式 - Android开发中无处不在的设计模式--原型模式 - Android开发中无处不在的设计模式--策略模式 动态代理模式在Java WEB中的应用简直是随处可见,尤其在Spring框架中大量的用到了动态代理:算是最重要

Java开发中的23种设计模式详解(转)

设计模式(Design Patterns) --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样.项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周

java开发中使用的工厂设计模式

package gongchangdemo; /* * 在java开发中使用较多的一种设计模式:工厂模式:就是一个过渡端 * 通过过度端来取得接口的实例化对象,这个过渡端就称为工厂factory * 这个模式主要是为了解决修改子类,必须要修改main方法,而main方法主要是客户端,客户端 * 经常变来变去不太好,就引进:工厂模式 */ public class gongchangdemo { public static void main(String args[]) { //getinsta

0. Java开发中的23种设计模式详解(转)

设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样.项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周

Java Web开发中MVC设计模式简介

一.有关Java Web与MVC设计模式 学习过基本Java Web开发的人都已经了解了如何编写基本的Servlet,如何编写jsp及如何更新浏览器中显示的内容.但是我们之前自己编写的应用一般存在无条理性,对于一个小型的网站这样的编写没有任何问题,但是一但我们需要编写大型的web工程的话,我们现有的编写模式会造成web应用的可扩展性较差,而且一但出现问题不能准确的定位出问题出在哪里. Java是一门应用设计模式比较广泛的语言.目前主流提出的23种设计模式均可在Java语言编写的程序中所应用.目前