OC小项目之攒机

题目是这样的:做一个组装电脑的小程序,类似于中关村攒机那样的。

需要实现的功能:1、主目录包括:cpu、主板、内存、硬盘、显卡、机箱、DISK  显示主目录,效果可以如图一

2、每个部件下面有多个产品可供选择,显示这些产品。如图二

3、每个部件选择完成以后回到步骤1,并把选择的产品信息同步到步骤1中,如图三

4、整个产品完成选择以后效果如图四,选过的部件可以重新选择,用户输入不存在的选项会提示并要                                 求重新输入。如图五

图一

图二

图三

图四

图五

看完题目有思路了吗?可以自己先动手试一下!我在下面简短写了一下我的思路。你们可以看看(最好先看我的代码)。

下面标记为紫色字体的都是OC中的知识点,可以注意下!!

好了,大概知道要求以后我们就动手吧!写程序就如同帮人脱衣服,我们要一层一层的来,最后我们就可以看到我们想要看到的结果了!

首先,我们从分析要求下手。这个程序首先需要的市一个展示信息给用户看,并且用户可以做出选择。那么。我们先新建一个类,然后由这个类为我们提供需要的方法。

步骤1、新建一个类DevicesClass,类中添加一个对象方法 - (void)dispalyDevices)

我们已经找到入口了,那么接下来的事便只要按部就班即可。对象方法里,我们首先需要打印一边信息告诉用户我们有哪些产品可以选择。

步骤2、打印部件信息,这里我们可以先将部件名存入数组,用循环调用数组实现打印,当然我们需要初始化这个数组)

用户看到了可以选择的信息,他们需要选择,所以我们要给他们提供选择框,选择完成之后,我们根据用户的选择在网上下载相应产品的数据,(这里我们把数据源的网址存入一个数组中,根据用户输入的数字作为数组下标调用数据源网址)

步骤3、我们通过某种方法传入用户选择的数据源网址,下载相应的数据并存储到一个数组中)

实现步骤3的前提,我们需要一个方法可以通过网址获得数据,这里我们创建一个类,对象方法。并通过对象方法实现。

步骤3.1,创建下载并解析数据的类,对象方法 DownloadDataClass)

对于步骤3.1中获得的数据,我们需要一个模型来接受这些数据。所以创建一个模型。模型的实现大家应该都知道。不知道的就回去看看书,这个很重要。

步骤3.1.1、创建模型 DataModel,模型包含三个属性)

到了这一步,我们已经成功一半了。获得数据以后,我们将选择获得的数据存入一个可变字典中(记得初始化),便于后面使用,我们打印出用户选择的部件中所有可供选择的产品(注意,部件跟部件产品者两个概念。部件一类产品,如Cpu,部件产品是这类产品中的某一个型号,如:【型号:Intel 赛扬 G1820(盒)】【¥230】)

步骤4、打印可供选择的所有产品的数据)

让用户选择产品,并将用户选择的序号存入一个数组,(为什么是将序号存入数组而不是直接把对应的产品信息存入呢?我们的产品信息包含三个部分:name、price、mark,而很多时候我们不方便调用其中某一个,所以我们将选择的数据存入数组,之后可以调用这个存入的数字去寻找对应的产品,然后将得到的数组,(注意这里将得到数组,)转换成模型,然后调用这三个属性中的某一个)

步骤5、存储选择的信息)

最后的最后,我们使用递归的思想,调用这个方法本身,实现循环。那么就大功告成了!

时间: 2024-10-12 21:20:49

OC小项目之攒机的相关文章

ios学习笔记图片+图片解释(c语言 oc语言 ios控件 ios小项目 ios小功能 swift都有而且笔记完整喔)

下面是目录其中ios文件夹包括了大部分ios控件的介绍和演示,swift的时完整版,可以学习完swift(这个看的是swift刚出来一周的视频截图,可能有点赶,但是完整),c语言和oc语言的也可以完整的学习完所需知识,,其他文件夹的内容如其名说描述一样 没张图片都有文字说明,可以需要该功能的时候搜索一下然后打开图片就可以学习到 网盘下载地址:需要的话给留言我再传上去 http://www.cnblogs.com/langtianya原创 ios学习笔记图片+图片解释(c语言 oc语言 ios控件

轮播特效小项目总结

首先谈谈关于还原设计稿学到的一些东西,比如说网页设计稿和交互效果做好了,拿给我们在网页上实现,那如何实现呢,我就说说自己的鄙见吧. 第一,思考整个设计图的层次,比如说分别由哪些部分构成,针对这些"块",怎么设计div的结构,怎么把静态页面有条理的编写出来. 第二,思考如何实现设计图的交互效果,在逻辑上分析,比如用JS绑定哪些事件,采用什么样的函数实现怎么样的效果等等. 第三,代码的优化性考虑,怎么让代码简洁明了,方便维护. 以上就是我现在阶段对页面还原的一些看法,也许比较浅显,我也希望

项目总结-上位机

概述 总结 明确目的 软件结构设计 软件页面的设计与实现 串口通信的实现 关于注释 一些需要注意的问题 评价 结果展示 软件打包 代码 概述: 前几天受朋友之托,给他们的项目写个上位机.有些经验分享给大家 项目要求是上位机收到通过串口发送的数据,根据数据显示空车位的数量. *最终上位机拥有的值得一谈的功能: 1.串口通信的相关设置 2.数据保存 3.界面随窗口缩放的实现 4.软件打包 5....然后就没有了 总结 1.明确目的 开始写软件之前首先明确目的,软件应该实行什么功能,然后设计界面,最后

仿微信聊天界面小项目总结

从开始学习ios时,做这个小项目就卡了很久,到现在这个小项目算是我做的比较熟练的一个了.oc和swift两个版本都顺利完成了.因此总结一下曾经在这个小项目中遇到的种种问题! 微信聊天界面主要内容有三部分构成: 1.TableView部分,设置好各种必须的代理: 2.TableViewCell部分,在自定义cell中要设置好三个控件的位置,这也是整个过程中最麻烦的部分: 3.设置TextField部分发送消息时,界面消息的刷新和TextField代理的设置. 第一部分: 主要设置TableView

java小项目之:坦克大战,90后的集体回忆杀!

坦克大战小项目! 在小学初中的时候,我相信我们都曾经沉迷于一种玩具“红白机”,这应该是80后90后的童年回忆.用绝对好好学习的誓言,求着父母买一台.自己学会插在电视机上,再和小伙伴一起买一些游戏卡带,便能在周末和课余时间,趁着父母不在厮杀一整天. 魂斗罗,超级玛丽,冒险岛,热血格斗,忍者神龟等等数不清的游戏,在我们夜以继日的奋斗下,被我们玩得十分娴熟.各种技能,小操作信手拈来.但在我的记忆中,有一款游戏我从来没通关过,那就是今天这文章的主角<坦克大战>. <坦克大战>应该也是众多游

小萝贝控机大师

电脑控制多部手机-电脑端安装,手机端无需root,无需安装APK 互联网时代,大家都离不开手机与电脑,工作娱乐每天都会用到,向大家推荐一款电脑端小软件仅5M,可以轻松电脑控制手机,手机画面映射到电脑端后,能进行如下操作. 录制手机画面的操作,截屏 同时可以电脑操作多台手机,设置其中一部手机为主控手机,操作主控手机其他手机联动操作 录制编辑脚本自动控制多部手机 微营销的朋友可以看看,支持USB,WiFi连接,工具免费,推荐大家使用. 安装连接步骤: 在电脑端安装小萝贝控机大师应用程序 手机与电脑通

Android开发不得不看的11个实战小项目

是不是想学Android开发(http://www.maiziedu.com/course/android-px/)却不知道如何下手?懂得一点点入门基础知识却无法应用到实际开发中?看相关资料觉得都懂了实际动手却发现什么都不懂?本地搭建Android开发环境太麻烦? 如果你有以上的各种问题,那么今天小编推荐的Android开发的这11个小项目,你一定要看!! 因为,这些实战项目都是基于google 官方的API Demos制作而成,而且全部配有Android在线开发环境,你可以随时动手跟着课程操作

小学生四则运算小项目

我写这个小项目,是在一个小程序上改的,这个小项目的网址为http://www.cnblogs.com/ys1101/p/4368103.htm,在上面的代码上实现的功能不完整,并没有完成课本上的要求.在他的代码上我增加了语言选择,这里只是有英文和中文的选择.还有原来的代码并没有实现真分数的四则运算,在此基础上我在菜单栏上新添加了真分数的四则运算,还有对其菜单栏进行了优化,使得界面更好看.写好后我将此项目放入了我的Github上网址为:https://github.com/HAIWWH/WWH,希

IOS-小项目(饿了么 网络部分 简单实现)

在介绍小项目之前,在此说明一下此代码并非本人所写,我只是随笔的整理者. 在介绍之前先展现一下效果图. 看过效果图大家应该很熟悉了,就是饿了么的一个界面而已,值得注意的是,实现时并没有采用本地连接,而是实打实的网络连接.看一下文件架构. 这一采用的是MVC设计模式,虽然文件很少,但是也可以看. 下面开始正式介绍小项目的实现. 首先介绍Model的实现,很简单,实现模型即可, Shop.h // // Shop.h // CX-小项目(饿了么 网络部分 简单实现) // // Created by