Heim >Backend-Entwicklung >PHP-Tutorial >求设计思路
面向对象 设计模式 系统设计
要做一个模具管理系统。 不要为“面向对象”而面向对象
不要硬性套用“设计模式”
看了快两遍了,可以了又映象就可以了
关键在于你的“模具”类打算干什么
首先想下怎么架构吧。
设计模式不是凭空出来的,而是好根据具体的实体来设计规划的,所以你首先要分析你的系统都应该包含哪些实体。
按照你说的模具管理系统来说,你也说了肯定有“模具”这个实体,肯定还有别的实体,例如
1、牵涉的具体人。谁管理?怎么管理?管理模具的什么?
2、模具的属性。模具与模具之间是否有差异?模具的内容组成是否都是文字?除了文字以外是否有多媒体?
3、模具内容的呈现。列表?图示?
等等
有了这些实体的支撑,你才能决定哪些实体可以封装成对象,而哪些对象之间的关系可以通过设计模式来实现。
先需求分析。是进销存吗?
先需求分析。是进销存吗?
是进销存
模型里面的重点就是“模具”类了。建立数据库,按照MVC做就是了。
模型里面的重点就是“模具”类了。建立数据库,按照MVC做就是了。
额。。。。。。。。。。。。。。
不要为“面向对象”而面向对象
不要硬性套用“设计模式”
看了快两遍了,可以了又映象就可以了
关键在于你的“模具”类打算干什么
现在明确一些了。至少有工厂,模具两个类。系统的主要功能是跟踪模具。从工厂买入模具开始,模具可能出现维修/借入/借出/调入/调出/报废等状况。这些状况出现的时候相应地会涉及到入库/出库。
接下来该做什么分析或者说怎么建模呢?
做面向对象一般是两种情况
1.有一套完整的规划,整站的流程和模块都清晰,然后再OO
2.先按面向过程写程序,把重用的代码块抽出来,把这些代码块组织成类/对象,控制参数变化,逐步实现OO
1是抽象思维,从无形到有形,需要大局观,需要网站分析能力
2是形象思维,从有形到无形,需要观察力,需要归类总结能力
如果你熟悉一个实业的流程,建议用方法2
如果你熟悉一个实业的架构,建议用方法1