iOS入门学习详解

  本文来源:http://www.zretc.com/technologyDetail/447.html

  ios学习起来并没有想象中的那么困难,只不过是你想要开发ios的话,成本相对比较高吧,在windows里面装虚拟机的时代我是体验过的,那个开发起来简直就是苦不堪言啊,那个宕机的速度真是分分钟的事,reset已经被用的如火纯清了,这样你就需要一台mac,有了mac还不够,总不能全部用模拟器开发吧,像定位啊之类的,还是需要实机来测试的,模拟器跟实机的差别还是挺大的。当然也没必要开发之前就买一个帐号,毕竟99刀一年呢,也挺贵的,可以到开发的后期再买。

  好了,废话不多说,开始学习ios了。。。

  关于iOS的介绍就不用讲了。。这个随便去搜一下也有一大堆说的,我们先从iOS的系统层次开始说起:

  从上到下iOS分为4层,理解这4层的作用对于我们编程的作用相当大。

  Core OS:该层主要包含一些操作系统的内核、文件系统、安全性、证书之类的,一般我们很少接触该层。

  Core Services:该层主要包含跟网络相关的东西,还有数据库、线程、电话簿、网络服务等,该层为核心服务层。

  Media:看到这名字也知道,该层主要是跟多媒体相关的,包含视频、音频、图片、pdf、OpenAL、OpenGL等。

  Cocoa Touch:该层为操作系统的最顶层,该层包含了构建iOS程序的关键framework,还有多任务啊、标准的view controller啊等等。

  这边只是粗略的讲一下,有兴趣的可以去搜索更多的更详细的资料。

  学习iOS开发,那就要知道开发iOS程序需要使用的常识性东西:

  开发工具是XCode,Instruments。

  Instruments 是应用程序用来动态跟踪和分析 Mac OS X 和 iOS 代码的实用工具。这是一个灵活而强大的工具,它让你可以跟踪一个或多个进程,并检查收集的数据。这样,Instruments 可以帮你更好的理解应用程序和操作系统的行为。

  开发语言:Objective-c;

  主要框架:Foundation、UIKit;

  设计模式:MVC。

  关于iOS中的MVC模式:

  MVC成员:Model、View、Controller。

  Model:你的程序是什么(并不是你如何展示出来);

  Controller:你的Model如何展现给用户(UI逻辑);

  View:Controller的仆人,展示Controller想展示的东西。

  先看下面这张图,然后来理解MVC之间的通信:

  在IOS的MVC模式当中,Controller占中心地位,从图中可以看出MVC三个成员之间互相是怎么通信的。

  ①Controller在任何时候都可以直接跟Model进行通信;

  ②Controller也可以直接跟View进行通信;

  ③Model和View之间相互不能通信;

  ④View如何跟Controller进行通信?

  Controller在其本身放置一个target,然后在View上放一个action,当UI发生变化的时候,View就发送这个action。

  有时候,View需要跟Controller进行同步,Controller就把自己设置为View一个delegate(委托),这样就可以执行Controller里的should、will、did等同步函数了。

  View对自己展示的数据没有拥有权,即View是不拥有数据的。如果有需要的时候,他们会通过一个协议来要求。

  Controller几乎永远都是那个数据源(不是Model);

  ⑤Controller为View解释或者格式化Model的信息。

  ⑥Model是UI无关的。

  如果Model有信息要更新,Model会使用像广播机制一样的"radio station",来通知Controller,然后有必要的话,Controller会去通知View进行相应的操作。

  本次先介绍iOS的系统层次跟MVC模式的相关知识,下次简单的介绍下Objective-c语言。

  了解更多IOS入门学习知识欢迎持续关注中软国际技术知识库

时间: 2024-10-28 22:54:05

iOS入门学习详解的相关文章

【第11篇】最全的中文TypeScript入门指南详解案例教程与代码案例

一.最全的中文TypeScript入门指南详解案例教程           文档下载 二.代码案例 源代码下载 手机微信扫一扫有惊喜... ================================================================================================================= 1.详细安装文章请看 http://blog.csdn.net/jilongliang/article/details/219429

iOS开发 - UIActivityViewController详解

昨天在做微信分享的时候, 用到了这个东西.趁热写点东西记录下. UIActivityViewController类是一个标准的view controller,通个使用这个controller,你的应用程序就可以提供各种服务. 系统提供了一些通用的标准服务,例如拷贝内容至粘贴板.发布一个公告至社交网.通过email或者SMS发送内容. 应用程序同样可以自定义服务.(我的微信分享就属于自定义服务, 之后将会写一篇教程介绍) 你的应用程序负责配置.展现和解雇这个view controller. vie

iOS 的UINavigationController详解与使用添加UIBarButtonItem

转发自:http://blog.csdn.net/totogo2010/article/details/7681879 分类: iOS开发入门2012-06-21 11:10 53077人阅读 评论(29) 收藏 举报 uinavigationcontrolleriosapplicationactioninterfacebutton 1.UINavigationController导航控制器如何使用 UINavigationController可以翻译为导航控制器,在iOS里经常用到. 我们看看

各种音视频编解码学习详解

各种音视频编解码学习详解 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等.最近因为项目的关系,需要理清媒体的codec,比较搞的是,在豆丁网上看运营商的规范 标准,同一运营商同样的业务在不同文档中不同的要求,而且有些要求就我看来应当是历史的延续,也就是现在已经很少采用了.所以豆丁上看不出所以然,从 wiki上查.中文的wiki信息量有限,很短,而wiki的英文内容内多,删减版

iOS开发者证书-详解

iOS开发者证书-详解/生成/使用 本文假设你已经有一些基本的Xcode开发经验, 并注册了iOS开发者账号. 相关基础 加密算法 现代密码学中, 主要有两种加密算法: 对称密钥加密 和 公开密钥加密. 对称密钥加密 对称密钥加密(Symmetric-key algorithm)又称为对称加密, 私钥加密, 共享密钥加密. 这类算法在加密和解密时使用相同的密钥. 例如: 最常见的应用场景 - 系统登陆. 要成功登陆系统, 你必须输入正确的密码, 这密码是唯一的, 是与创建时一样的. 同样 的,

转:iOS中socket详解

一.网络各个协议:TCP/IP.SOCKET.HTTP等 网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 其中物理层.数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象: 传输层.会话层.表示层和应用层则被称作主机层,是用户所面向和关心的内容. http协议   对应于应用层 tcp协议    对应于传输层 ip协议     对应于网络层 三者本质上没有可比性.  何况HTTP协议是基于TCP连接的. TCP/IP是传输层协议,主要解决数据如何在网络

Javascript学习--------详解window窗口对象

对话框: 警告对话框:alert(): 语法:window.alert(src)或者alert(src); 询问回答对话框:confirm(): 语法:window.confrim(question)或者confrim(question); 单击确认,返回true: 单击取消,返回false 提示对话框:prompt(): 语法:window.prompt([showtxt],[defaultTxt])或者prompt([showtxt],[defaultTxt]); 单击确认,返回输入的文本:

iOS UIView动画详解(Objective-C)

我在之前的一篇博客中<iOS UIView动画详解(Swift)>讲解了使用Swift来实现UIView类下面提供的多种动画效果,如位置动画.旋转动画.缩放动画.颜色动画.透明度动画等等.为了这个题目的完整性,今天我使用Objective-C来完全重写以上的所有的动画.项目案例已经上传至:https://github.com/chenyufeng1991/iOS-UIView-Animation  中的Animation-OC文件夹下,另一个目录下则是Swift实现的动画. (1)位置动画 P

Mybatis最入门---配置详解(下)

[一步是咫尺,一步即天涯] 上文我们详细解释了HelloWorld工程中的配置项,本文,我们再来介绍一些更加基础,灵活的配置项.本文,我们先不演示具体的工程,后续的文章中会按照实际应用来配置相关的参数.敬请期待! -----------------------------------------------------------------------------------------------------------------------------------------------