关于设计模式的

lk829 2010-06-26 09:06:13
烟铺里有很多不品牌的烟 每种品牌的烟又有不同的类型 如香烟按包卖的 雪茄按只卖的
现在想知道烟铺的销售情况

如何设计数据库(自己定义)
用什么设计模式比较好 如何实现 为什么
...全文
277 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
tugotu 2010-06-28
  • 打赏
  • 举报
回复

设计一下表结构不就行了,要啥模式呀?
zhoulingsmile 2010-06-28
  • 打赏
  • 举报
回复
友情帮你顶。。。。。加油
imfor 2010-06-28
  • 打赏
  • 举报
回复
1.定义烟(抽象类)
2.不同品牌的烟(继承烟)和各自品牌的不同味道(虚类)
3.不同型号同一品牌的烟(重写不同品牌的烟)
4.烟的不同的属性(继承3,增加自己品牌的特性)

模板模式可以吗?愚见,愚见!
lk829 2010-06-28
  • 打赏
  • 举报
回复
还有大虾来说下吗
qq22345111 2010-06-28
  • 打赏
  • 举报
回复

考虑一个生产烟的"工厂"
考虑一个销售烟的"Shop"


应该可以使用策略 (愚见)
幻想的天涯 2010-06-28
  • 打赏
  • 举报
回复
具体情况具体分析!
bourbon1795 2010-06-27
  • 打赏
  • 举报
回复
到底是数据库设计还是模式设计。。。。。。两者没关系啊
leafold 2010-06-27
  • 打赏
  • 举报
回复
从楼主的需求来看确实与设计模式没有什么关系。
lk829 2010-06-27
  • 打赏
  • 举报
回复
呵呵 题目中 也说了 如果可以 用uml来描述下相互的关系
vrhero 2010-06-27
  • 打赏
  • 举报
回复
我又没生气谈不上消气...设计模式是对具体问题解决方法的经验总结,没有具体问题就谈不上模式...
段传涛 2010-06-27
  • 打赏
  • 举报
回复
最简单直接的方法 用简单模式 (UML)
lk829 2010-06-27
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 vrhero 的回复:]
这跟“设计模式”有个P关系,不管什么都扯“设计模式”说明你们已经中毒太深走火入魔了...

软件设计是科学,形式主义是歧途...
[/Quote]

呵呵 vrhero消消气 刚刚开始我也差不多这么认为
后来想想实际上 涉及到这类似的销售情况很多(各行各业的) 只是这个题目把范围浓缩的很小 看起来显得高射炮打蚊子
我对于设计模式 一只半解 项目中基本未运用过 只是自己练手的时候用下
对于这题 我是有强烈的好奇心和求知欲望 才发上来大家一起交流下
以上乃本人遇见 大虾见到莫笑

DoNext 2010-06-27
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 vrhero 的回复:]
这跟“设计模式”有个P关系,不管什么都扯“设计模式”说明你们已经中毒太深走火入魔了...

软件设计是科学,形式主义是歧途...
[/Quote]

好大一只螃蟹
vrhero 2010-06-27
  • 打赏
  • 举报
回复
这跟“设计模式”有个P关系,不管什么都扯“设计模式”说明你们已经中毒太深走火入魔了...

软件设计是科学,形式主义是歧途...
newdigitime 2010-06-27
  • 打赏
  • 举报
回复
你不要被绕晕了.
其实可以理解成 一件衣服与一条裤子的区别(件与条的区别)
你管它是盒还是支呢.
数量库中保存的数量,对普通烟来说,是表示盒的数量,对雪茄来说是指支的数量.

销售表的结构:

id(自增编号) orderid(订单id) procid(产品id)外键 num(销售数量) stime(销售日期)

产品表结构:
id(自增编号) procid(产品id)主键 price(价格)对于普通烟来说是每盒价,对于雪茄来说是每支价


Yelena_Lee 2010-06-27
  • 打赏
  • 举报
回复
我想可以这样设计:
1.了解销售情况知道烟的品牌和种类.
2.建一个各种种类的烟的表.
比如:
create table tab_1(
id int primary key identity(1,1),
type varchar(20)
)
3.建一个销售类型表
create table tab_2
(
id int primary key identity(1,1),
salType varchar(10),
)
4.建一个品牌表.
比如:
create table tab_3
(
brandid int primary key identity(1,1),
typeid int not null, -----此列引用上一个表的主键列.
saleId int not null, ----此列引用销售表中的主键列.
detail varchar(20), ---品牌详细名字
)
5.建一个总的烟的销售的表
create table tab_4
(
id int primary key identity(1,1),
brandId int not null, ----引用品牌表的id
price money not null, ----价格
salNum int not null, ----销售数量.
)
6.根据具体的情况简化此操作..
bonnibell 2010-06-27
  • 打赏
  • 举报
回复
抛砖:

<table border="0" cellpadding="0" cellspacing="0" width="100%" >
<tr>
<td> 品牌字典
</td>
<td> 编号 名称
</td>
</tr>
<tr>
<td> 类型字典 </td>
<td>编号 名称</td>
</tr>
<tr>
<td>烟信息表
</td>
<td>编号 名称 品牌编号 类型编号</td>
</tr>
<tr>
<td>烟价格表
</td>
<td>编号 香烟编号 日期 打折类型 价格 </td>
</tr>
<tr>
<td>销售记录</td>
<td>编号 香烟编号 销售日期 销售数量 销售价格</td>
</tr>
</table>


设计模式: 如果只针对每单的销售 可以考虑用 装饰模式(参 head first 设计模式)
kofkyo 2010-06-27
  • 打赏
  • 举报
回复
这个,我等着看答案
lk829 2010-06-27
  • 打赏
  • 举报
回复
主要是思路 有代码更好 不需要具体的实现 有个大概框架就成
悔说话的哑巴 2010-06-27
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lk829 的回复:]
自顶下 继续寻求help
[/Quote]
你是要思路还是?
加载更多回复(16)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧