社区
Java
帖子详情
怎样用面向对象的方式设计一个带有多个步骤的流程呢?
javavm
2003-09-29 08:55:57
有多个流程,这些流程中有很多步骤都是相同的,我应该如何设计呢?
...全文
117
18
打赏
收藏
怎样用面向对象的方式设计一个带有多个步骤的流程呢?
有多个流程,这些流程中有很多步骤都是相同的,我应该如何设计呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
icecloud
2003-10-16
打赏
举报
回复
command模式
类似于filters的实现
liushenling
2003-10-16
打赏
举报
回复
1。设一个步骤类,(即节点类,包括,该步骤的名称,前提步骤,。。。)
2。设计一个流程类,包含很多步骤,且步骤之间用任务驱动!
无名2018
2003-10-16
打赏
举报
回复
UP
学而优则仕2
2003-10-10
打赏
举报
回复
如果你没有用对象的观点,在你的眼里就只有过程而没有这些职责的承担者---对象,也就没有类了。那还谈什么java?
所以,你应该重新分析你的问题,而不是在过程的驱动下寻找算法。这些过程行为谁来完成?可以抽象为一个类还是多个?如果是多个其关系如何?
有了承担责任的对象,过程行为就可以赋给相应的类来实现。比如假定有一个计算器,如果我要作加法运算,需要先输入一个数,按+,在输入一个数;如果我要做减法,就需要在中间按-。这些方法或者说功能需要计算器对象都有了相关的定义,然后根据接受的不同信息用不同的方法实现。
至于约束流程中各个步骤的顺序,要么在运行前能够描述和表达出来,要么在运行时能够通过一定的规则进行判断(你至少需要把规则表达出来)。
这些问题都清楚了以后,在用java实现的时候才可以去考虑如何应用一些设计模式之类的经验来达到设计规范化和满足其他一些设计要求。
qiume
2003-10-08
打赏
举报
回复
呵呵,抽象类!!!
aalup
2003-10-08
打赏
举报
回复
to fangsoft() :
我是你的学生
yiningchen
2003-10-08
打赏
举报
回复
用所谓的command或者State模式不是很好么?我觉得command的描述在这里可能有歧义,但是State的描述听上去和你说得很吻合。只是你的说明不是很清楚。
XmanDZJ
2003-10-07
打赏
举报
回复
建议采用command模式,形成一个command链,将各个流程作为一个单独的用例进行封装即可
fangsoft
2003-10-05
打赏
举报
回复
先建模,后设计.
fangsoft,
2003,10,5
swinging
2003-10-02
打赏
举报
回复
引用:
=======================
例如流程一的步骤为:a,b,c,d,e,f
而流程二的步骤为:a,b,d,e,g。
========================
如果只是考虑对流程的不同方式的组装,可以考虑使用Command模式。
wingnal
2003-10-02
打赏
举报
回复
这都不会呀!
anyh
2003-10-01
打赏
举报
回复
我觉得你自己还没把问题弄清 至少你的问题没有表达清楚,比如你说的约束条件是什么?
javavm
2003-09-30
打赏
举报
回复
各位帮我想想拉,谢谢
javavm
2003-09-30
打赏
举报
回复
其实我最关心的问题是如何约束流程中步骤的顺序,例如流程一的步骤为:a,b,c,d,e,f
而流程二的步骤为:a,b,d,e,g。如果仅仅在某个类中提供这些步骤的方法,而没有其他的约束条件,是没法实现我的要求的。
happyegg
2003-09-30
打赏
举报
回复
1。 需要保存状态的话,你可以把这些状态变量做成参数传入传出。
2。如果这些流程都有相似之处的话,那就做一个基类,提供很多的处理方法,所有的流程都继承这个父类,这样,状态变量就在子类里面,需要处理的时候调用父类方法
jbluesun
2003-09-29
打赏
举报
回复
其实每个class里面的编程还是过程性的,如果实在不能设计出更多的class,你就把那些相同的步骤抽取出来做成这个class的一个method吧。
javavm
2003-09-29
打赏
举报
回复
我的流程是需要保存状态的,用静态的没法实现吧
happyegg
2003-09-29
打赏
举报
回复
把相同的步骤抽取出来,创建一个util的类来存放。然后其他的步骤就使用这个util类的方法来做相同的动作。这个不关设计模式的事,是OOP编程思想方面的。
这些方法最好做成static的
面向对象
范式分析和
设计
流程
面向对象
范式是一种新的,不同的编程思考
方式
,许多人一开始在学习如何处理
一个
OOP项目时都会感到非常困难。但是了解到任何事物都被认为是对象,并且学会用
面向对象
的风格去进一步思考之后,我们就可以开始利用OOP所提供的所有优点创造出“好的”
设计
。如果我们正在考虑的是
一个
包含丰富细节而且需要许多
步骤
和文档的方法学,将很难判断什么时候停止。只要我们知道了对象和接口,就可以编写程序了。由于各种原因我们可能需要比这些更多的描述和文档,但是我们需要的信息不能比这些更少。
如何进行
面向对象
分析、
面向对象
设计
和
面向对象
编程
假设我们正在参与
一个
微服务的开发。微服务通过 HTTP 暴露接口给其他系统调用,换句话说,其他系统通过 URL调用微服务的接口。某天,项目管理者对我们说:“为了保证接口调用的安全性,需要
设计
和实现接口调用的鉴权功能,只有经过认证的系统,才能调用微服务的接口。希望你们负责这个任务,争取尽快上线这个功能。”这个时候,我们可能感到无从下手原因有下列两点。(1)需求不明确项目管理者提出的需求有些模糊和笼统,不够具体和细化,与落地进行
设计
和编码还有一定的距离。
面向对象
程序
设计
步骤
面向对象
程序
设计
的第一步,就是在问题领域中识别出有效的对象,然后从识别出的对象中抽象出类来。面对纷繁复杂的现实问题,往往存在多种对象划分的
方式
,而不同的划分会带来类的
设计
以至于程序结构的各种不同。对象划分有一些理论,但是不是这门
面向对象
的入门课程能覆盖的。而且目前的理论也还不是放诸四海皆准的简单操作指南。我们举了
一个
数字钟的例子,希望通过这个例子表明对象划分的重要性,给你
一个
感性认识。在今后面对实际
面向对象
的分析与
设计
面向对象
的分析与
设计
1.
面向对象
是一种思维
方式
UML 统一建模语言,是一种建模工具,表达
设计
思想的工具 2.软件功能是如何完成的 类 定义了对象群体的逻辑结构,包括属性和操作 系统运行时,类作为产生对象的模板,在物理层面是不存在的 对象 系统运行时必须为每
一个
需要的对象分配内存、保存数据 对象存在于物理层面,每个对象都有自己的数据空间(内存) 所有的对象共享同一块代码空间 消息 对象之间的一种交流手段 就像我们日常工作中的各种交流手段 3.模型的定义 建模 m
C++ 类库管理系统的分析与
设计
:
面向对象
开发全
流程
实践
本文介绍了
一个
C++类库管理系统的
面向对象
开发过程。该系统旨在解决开发团队中类管理混乱的问题,核心功能包括类信息管理、继承关系维护、成员管理、高效查询和评价互动等。文章详细阐述了从需求分析到系统
设计
的完整
流程
:首先识别关键类(ClassItem、ClassLibrary等)及其关系,然后
设计
数据结构(使用set实现自动排序和高效查询)和类结构(封装属性和操作),并着重介绍了创新的类评价互动系统。通过这个案例,展示了
面向对象
设计
的封装、继承、多态等原则在实际项目中的应用,以及内存管理、性能优化等技术考量。该系
Java
51,407
社区成员
86,107
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章