




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
开题报告 基于IOS的点菜系统的设计与实现 胡卫 11通信2班 1 一 研究背景 近几年来 人们的生活方式和生活理念随着生活水平的大幅度提高逐渐发生变化 在整个社会中 餐饮业占据着举足轻重的位置 那么 如何提高餐饮业的服务质量和服务速率也成为了大家所关注的问题 随着无线通信技术的飞速发展 在餐饮业中引入无线点菜技术是对餐饮业的一种技术革命 在大多数的餐饮场所中点菜 查看菜谱都是人工完成的 这需要通过大量的手工劳动完成 速度慢 耗费人力多 而且容易出错 进而导致其工作效率低 造成人力物力的极大浪费 为了节省人力和时间 避免不必要的出错 采用点菜软件去点菜可以解决以上问题 2 二 主要内容 1 要能查看菜单2 可以点菜3 能够选座位4 能计算所点菜的总价格5 可以浏览用户自己以前所点的菜单 3 三 设计方案 1 点菜软件的功能设计2 点菜软件的界面设计3 点菜软件的结构设计4 数据库设计5 工作流程设计 4 1 点菜软件的功能设计 实现的功能 1 查询菜单 2 点菜选菜 3 查看订单 4 增减自选 5 订座功能 5 2 点菜软件的界面设计 1 菜单界面 6 2 点菜软件的界面设计 2 用户菜单界面 7 2 点菜软件的界面设计 3 历史菜单界面 8 2 点菜软件的界面设计 4 座位选择界面 9 3 点菜软件的结构设计 点菜软件采用MVC的设计模式 V是视图 是我们看到的界面 M是模型 指的是用什么样的方法从数据库里取出数据 C是控制 指的是我们点击界面上的按键后 选择M中提供的方法途径 10 4 数据库设计 数据库共建了5张表 1 groupTable 字段有id kind name 表的创建语句为CREATETABLE groupTable id INTEGERPRIMARYKEYAUTOINCREMENTUNIQUE kind TEXTNOTNULLUNIQUE name TEXTUNIQUE 这张表是用来存放菜的种类 2 menuTable 字段有id groupID iKind name price unit detail picName 表的创建语句为CREATETABLE menuTable id INTEGERPRIMARYKEYAUTOINCREMENTNOTNULLUNIQUE groupID INTEGERNOTNULL iKind TEXTNOTNULL name TEXTNOTNULLUNIQUE price INTEGER unit TEXT detail TEXT picName TEXT 这张表是存放所有的菜的详细信息的 11 4 数据库设计 3 orderTable 字段有id menuName Price kind menuNum remark 表的创建语句为CREATETABLE orderTable id INTEGERPRIMARYKEYNOTNULL menuName TEXTNOTNULL Price TEXT kind TEXTNOTNULL menuNum INTEGERNOTNULL remark TEXT 这张表是用来存放用户当前所点的菜的信息 4 group recordTable 字段有id date time room 表的创建语句为CREATETABLE group recordTable id INTEGERPRIMARYKEYAUTOINCREMENTNOTNULLUNIQUE date TEXTNOTNULL time TEXTNOTNULL room TEXTNOTNULL 这张表是用来存放用户历史用餐记录的 5 recordTable 字段有id stateNum menuName menuPrice menuKind MenuNum menuRemark groupID 表的创建语句为CREATETABLE recordTable id INTEGERPRIMARYKEYAUTOINCREMENTNOTNULLUNIQUE stateNum INTEGERNOTNULL menuName TEXTNOTNULL menuPrice TEXTNOTNULL menuKind TEXTNOTNULL menuNum INTEGERNOTNULL menuRemark TEXTNOTNULL groupID INTEGERNOTNULL 这张表是用来存放用户以前所有的点餐的详情 12 5 工作流程设计 工作流程图 13 5 工作流程设计 首界面相当与欢迎界面通过点击button跳转到第二界面 第二个界面可以选择返回第一个界面 或者进入菜单界面 或者进入用餐记录界面 都是通过点击不同的button来跳转 用餐记录界面用一个表格展示用户以前的用餐记录 用户可以选择删除记录 在用餐记录界面通过选中每一条用餐记录可以查看用餐的详细信息 首界面 第二个界面 用餐记录界面 记录详情界面都是用一个UIViewController类控制 菜单界面是最复杂的一个界面 这个界面用三个UIViewController类来控制 选择菜的种类的表格放在最底层的界面上 选择不同的菜品用就在界面上展示当前种类菜的视图 用户在这个界面可以浏览所有的菜品 不同种类的菜品在不同的界面展示 在每个界面用户都可以将当前的菜品添加进自己的菜单 也可以查看当前菜的详细信息 14 5 工作流程设计 用户在菜单界面点好菜之后可以通过点击button进入用户点单界面 这个界面用一个UIViewController类来控制 在用户点单界面用一个表格展示用户所点的菜及菜的总价格 在这个界面用户可以对菜单进行修改 删除不想要的菜 对喜欢的菜可以设置点的份数 还可以对每样菜做备注 用户确定菜单后就通过点击button跳转到座位选择界面 座位选择界面用一个UIViewController类来控制 在这个界面用户能够选择餐厅中的座位 除此之外还有一个NSObject类 在这个类中负责对所有数据的操作 对数据库中的数据进行曾删改查 上面所有界面的数据操作都要到调用NSObject类的方法 到NSObject类中尽进行 15 四 技术路线 1 开发工具开发环境主要包括 1 Xcode 主要开发工具 2 iPhoneSimulator iPhone模拟器 3 SDK SoftwareDevelopmentKit 软件开发工具包 16 2 整个系统基于Objective C编程语言Object C是扩充C的面向对象编程语言 它主要使用于MacOSX和GNUstep这两个使用OpenStep标准的系统 而在NeXTSTEP和OpenStep中它更是基本语言 Objective C可以在gcc运作的系统写和编译 因为gcc含Objective C的编译器 1980年代初布莱德 确斯 BradCox 在其公司Stepstone发明Objective C 目前主要是编写iOS操作系统应用程序的利器 近几年Objective C排名大幅提升 它的流行当归功于iphone的成功 因为Objective C一直被用于编写iPhone应用程序 Objective C是非常实际的语言 它是一个用C写成 很小的运行库 只会令应用程序的大小增加很小 和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反 ObjC写成的程序通常不会比其原始码大很多 而其函式库亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反 17 3 数据库使用MysqlMySQL是一种关联数据库管理系统 关联数据库将数据保存在不同的表中 而不是将所有数据放在一个大仓库内 这样就增加了速度并提高了灵活性 MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言 18 4 设计模式点菜软件采用MVC的设计模式 MVC ModelViewController 模型 model 视图 view 控制器 controller MVC本来是存在于Desktop程序中的 M是指数据模型 V是指用户界面 C则是控制器 使用MVC是将M和V的实现代码分离 从而使同一个程序可以使用不同的表现形式 C存在的目的则是确保M和V的同步 一旦M改变 V应该同步更新 MVC是一个设计模式 它强制性的使应用程序的输入 处理和输出分开 使用MVC应用程序被分成三个核心部件 模型 视图 控制器 它们各自处理自己的任务 视图是用户看到并与之交互的界面 模型表示企业数据和业务规则 在MVC的三个部件中 模型拥有最多的处理任务 被模型返回的数据是中立的 就是说模型与数据格式无关 这样一个模型能为多个视图提供数据 由于应用于模型的代码只需写一次就可以被多个视图重用 所以减少了代码的重复性 控制器接受用户的输入并调用模型和视图去完成用户的需求 它只是接收请求并决定调用哪个模型构件去处理请求 然后再确定用哪个视图来显示返回的数据 19 五 关键问题 1 数据库的设计点菜系统中会所涉及到很多种类的数据 怎样将这些数据分类保存 相互之间不产生混淆就需要设计好数据库各个库表之间的关系 2 内存管理问题IOS程序的内存管理是半自动的 有些对象在不使用用时所占内存会自动释放 有些对象的内存在程序运行事会一直占用 如果不手动释放就会占用大量的内存 导致程序卡顿 所以需要进行手动释放 否则就会造成内存泄露 3 数据处理问题在程序中 关于数据处理的操作特别多 每种操作对应的数据处理都不一样 每
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部门安全生产培训考题课件
- 部门信息安全培训感想课件
- 温湿度协同调控-洞察及研究
- 边坡坍塌安全培训内容课件
- 基于循环经济的甲维盐水剂包装材料绿色化路径
- 基于大数据挖掘的适应症拓展潜力评估与医保目录准入障碍研究
- 基于分子动力学模拟的1,3-环己二酮热稳定性与结晶行为预测研究
- 圆形果冻标准化生产中的工艺瓶颈突破
- 国际标准对接中防火泥高温蠕变测试方法的技术代差问题
- 围兜尺寸标准化与成人个体差异的适配性研究
- 院前急救技能大赛(驾驶员组)理论测试题库(含答案)
- 新编电子商务概论(第4版)教案全套 孟泽云 学习情境1-10 走进电子商务-电子商务法律法规
- 《Sketch up效果图制作》课件-sketch up界面操作
- 2024-2025年全国初中化学竞赛试卷及答案
- 《发动机大修》课件
- 外研社小学英语五年级上册单词表
- 经济数学全套教学课件
- GB/T 43355-2023塑料和其他无孔材料表面抗病毒活性的测定
- 项目式学习的理论与实践探究
- 凤庆县新华乡瓦屋地区铜及多金属矿勘探附属设施建设项目环评报告
- 中建“大商务”管理实施方案
评论
0/150
提交评论