iOS入门学习详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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入门学习知识欢迎持续关注中软国际技术知识库

以上是关于iOS入门学习详解的主要内容,如果未能解决你的问题,请参考以下文章

Python入门基础学习详解二

Python深度学习入门级知识详解

Hadoop学习总结——Hadoop入门详解

Python学习入门教程,字符串函数扩充详解

如何入门Python爬虫?爬虫原理及过程详解

java入门学习:Java中的main()方法详解