软件设计,数据库结构设计,设计思想
无论是设计软件还是设计数据库结构,最重要的是要以面向对象的思维方式来进行理解。
注重理解几个方面?
- 什么是对象
- 对象有哪些特征和行为或操作
- 对象与对象之间有哪些关联关系
- 对象具有哪些场景
了解这几个点之后,就可以进行面向对象设计了。
现在需要设计一个酒店管理系统。那么首先应该会具有哪些对象?比如酒店、客人、客房、客房类型,服务等
酒店具有客房、停车、wifi、早餐、服务呼叫、预订、批量预订、咨询等服务项目,它包含了这些,酒店有哪些特征呢,比如酒店名称,位置,星级,客房数,楼层等等。
客人具有姓名、身份证、性别、年龄、联系方式等特征,具有电话、网上预订、入住、退房、换房、续房、咨询等行为。
客房具有大小,床位数,舒适度,客房类型,电视机设备、价格等特征,客房包含房卡
房卡具有客房编号,入住时间,退房时间,锁定,解锁等状态,具有开房的行为,因退房时间进行决定。
客房类型具有类型名称,描述等简要特征
酒店还具有工作人员的对象,因此会有工作人员的名称、性别、年龄等特征,具有呼叫,卫生服务,开房等行为。
服务具有客房卫生、客房设备保修、开房、退房、看房等行为。
不同地方的客人可能选择不同地方的酒店,不同的价格和类型决定不同的房间。
客人有可能预订之后,但是提前入住,却告知没有房间退房,系统需要给与一个客人的提示信息。
客人到达退房时间,没有及时退房,酒店具有提醒退房的行为
客人入住之后,发现客房设施出现损坏如水电无法正常使用,此时客人需要通知酒店人员进行处理或者换房操作。
为了更加详细的了解酒店的相关特征和行为,有时候免不了要去实地考察和类似系统设计的参考。
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?
· RFID实践——.NET IoT程序读取高频RFID卡/标签