`
frand_feng
  • 浏览: 18864 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ios开发学习笔记(二)

    博客分类:
  • iOS
 
阅读更多

    ios开发的学习教程,莫过于苹果官网上提供的资料了,在苹果官网上将ios入门的学习分为这么几个阶段:

    

由图中可以看的到,顺序是 开始-设置-教学-基础-开发-下阶。

     在开始中,苹果公司简单介绍了一下做苹果开发是多么一件享受和有意义的事情,然后给我们简单说明了一下总的学习规划和流程图,以及它的开发工具Xcode的基本情况。

    设置中,苹果公司手把手教您如何下载并安装Xcode开发工具,并且如何在ios开发者计划中注册成为苹果开发者,注意只有注册了的用户才可以在真机上运行自己的app并上传自己的app到app store中去,而注册每年的费用是99dollars,很贵的,所以刚开始如果没有特殊的情况,建议用模拟器调试。

     现在开始我们的第三部,教学这节中会介绍相关工具,基本的设计模式,以及应用开发的过程。按照教程,我们将构建一款简单的应用,它能够接受用户的文本输入,并把文字显示在屏幕上。我们也将学到如何在Mac模拟器中运行你的应用。教程里的简单步骤展示了优雅实用的概念,我们将会在今后的应用开发中不断运用到它们。

    现在开始正式开发我们的app。

    我们第一个ios app将包括三个T:

  • Tools:如何运用Xcode,如何管理工程
  • Technologies:如何生成一个app可以相应用户的输入行为
  • Techniques:在ios的开发下如何利用一些基本的设计方式

    新建工程,用single-view application创建新工程,让我们大致看一看xcode的主界面:


    新建工程完成后,运行程序,因为我们新建的是ios工程并且选的是ios simulator,所以会生成一个新的模拟器,模拟器样式如下图:



    此时,因为我们没有写任何代码,所以我们的app只有一个白色的底图,为什么有这个白色的底图呢,我们就需要学习这些对象是怎么组建起来并且怎么来启动这个app,现在,我们先退出ios simulator,来找出一个app是如何开始的。

    因为你的工程是建立在xcode的模板之上的,所以当你运行你的app的时候,很多基本的app的环境已经被自动设置,比如说,在工程中,Xcode会创建一些文件,其中一个就是应用程序对象,它会建立一个运行循环,这个运行循环会注册你的输入资源并且传递你的输入事件到你的app当中。这个当中大部分的工作是由UIApplicationMain函数来完成的,它的功能是由你自动导入到工程中的UIKit来实现的,这个方法包含在被自动命名为main.m 的文件中.

    main.m文件:

    main.m文件中就只包括一个函数,就是UIApplicationMain(),在自动释放池中进行调用,如下代码:

//
//  main.m
//  Test
//
//  Created by frand on 13-5-22.
//  Copyright (c) 2013年 frand. All rights reserved.
//

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

int main(int argc, char *argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

    @autoreleasepool声明表示里边的函数支持内存自动回收系统,内存自动回收系统对你的app自动提供的对象终身管理功能,确保对象还有没有存在的必要。

    在调用UIApplicationMain的时候,生成了一个UIApplication类的对象,和一个app delegate对象,在此例中是TestAppDelegate,他来给你提供一个单一视图模板,app delegate主要的作用就是为你app的显示界面提供一个窗体。app delegate还可以在app显示在屏幕之前,显示一些app的配置信息。(delegation是一种设计模式,这种设计模式可以帮助一个对象对另一个对象进行操作或者两个之间合作进行)。

    在ios应用程序当中,一个窗体对象提供了一个容器,这个容器装载了所有的app 的可视的内容,这个窗体来帮助传递事件到app对象当中去,还帮助app对象做一些变化。但是这个窗体本身是不可见的。

调用UIApplication时也扫描了一个Info.plistfile,这个文件包括了一些键值对,比如app的名称和icon。

    property list 文件

    因为我们在创建新工程的时候复选框离选择了use storyboard,所以info.plist文件中也包括storyboard文件的文件名,这个文件将会在应用程序启动时被应用程序对象加载,一个storyboard文件包括对象的生成,转变的生成和连接的生成,由此来控制用户界面。

    在应用程序启动的时候会先加载info.plist文件,然后会加载storyboard文件,storyboard文件同时会初始化view controller类,view controller是管理内容的一个对象,当app开始的时候,初始状态的view controller是空的。

    可以看到除此之外,在此工程中有viewController.h和viewController.m两个文件,ViewController文件是管理单个view提供的界面内容的,还有子view和父view,view族谱的概念可以顾名思义,一个        viewController管理了一个view 族谱。

    注意:在设计模式中有一种叫做MVC(Model-View-Controller)的设计模式,以上提到的view就是其中的View,提到的Viewcontroller就是其中的Controller,还有Model表示的是数据。

    storyboard 文件

    

    在view中的层次关系,左边的Xcode outline view会自动显示出来,一般包括了以下几个项目:

  • 1,第一个响应的占位对象,用橙色小正方体表示。
  • 2, 一个名叫Exit的占位对象来切断联系。
  • 3,viewController对象,用橙色的圆里边嵌一个白色正方形表示。
  • 4,一个View,这个View被列在view controller的下方,当运行app时,这个就是刚看到的白色底图。

 

 


 

  • 大小: 34.6 KB
  • 大小: 75.3 KB
  • 大小: 16.1 KB
分享到:
评论

相关推荐

    iOS 开发流程个人学习笔记

    iOS 开发流程个人学习笔记

    IOS开发-Swift-基础知识学习笔记

    IOS开发-Swift-基础知识学习笔记

    ios开发学习笔记(三)

    NULL 博文链接:https://frand-feng.iteye.com/blog/1876564

    苹果iOS开发工作笔记(从事iOS开发一年所总结的常用知识点)

    这份文档是我从事ios开发一年以来,总结工作中常用到的100余个ios小知识点,并添加可以调试观看的实例代码,方便iso开发者学习和交流,弄清楚这些,基本从事ios开发没什么问题。另文档中附有移动应用开发开发入门...

    iOS 开发系统笔记.zip

    操作系统:LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 网络与通信:数据传输、信号处理、网络协议、网络与通信硬件、网络安全网络...

    iOS开发内存分配图示

    iOS开发学习笔记之内存分配图示.虚拟内存分配图示

    iOS学习笔记

    我自学iOS开发时做的笔记,主要是OC语言的语法部分,没有包fundation框架,以我的亲身感受总结出iOS初学者容易犯的错误及疑问的地方,对本文如果意见欢迎与我交流,谢谢

    苹果ios开发一年的工作笔记

    这份文档是我从事ios开发一年以来,总结工作中常用到的100余个ios小知识点,并添加可以调试观看的实例代码,方便iso开发者学习和交流,弄清楚这些,基本从事ios开发没什么问题。

    一年ios开发的工作总结笔记

    本文件是本人从事ios开发一年以来,总结工作中常用到的100余个ios小知识点,并添加可以调试观看的实例代码,方便iso开发者学习和交流,弄清楚这些,基本从事ios开发没什么问题。欢迎大家下载及补充!!!!!!

    iOS开发教程(大神笔记)

    大神原创的iOS开发教程,内容全面,覆盖OC及iOS开发全部技术细节内容,值得认真学习

    学习ios学习笔记

    这里面讲的都是些平常见的事情,平时看看,对自己开发能力有所提高

    苹果ios开发一年工作笔记

    这份文档总结工作中常用到的100余个ios小知识点,并添加可以调试观看的实例代码,方便iso开发者学习和交流,弄清楚这些,基本从事ios开发没什么问题。 不错的笔记,里面知识点很多,涉及了很多方面的基础知识,也...

    IOS学习笔记

    OS开发学习笔记,包含基本原理讲解及每篇附上的示例程序代码!帮助iOS开发初学者一步一步进阶,分享最新的学习心得和体会! http://blog.csdn.net/column/details/ryan-zone.html

    IOS应用-云笔记源代码

    xcode开发环境 ,包含文字笔记以及图片笔记,网络登录,服务器上传下载等均实现 供IOS初学者参考学习

    IOS新手入门学习资料

    IOS新手入门学习资料集合. 包含“第一个IOS应用”、“iOS开发入门.doc”、“iOS学习笔记” 等学习资料的搜集。

    ios游戏开发之cocos2d-oc笔记

    ios游戏开发之cocos2d-oc最新学习笔记

    ios 学习笔记

    主要是 ios软件开发的知识点,语法和设计方案等。

    iOS开发教程(大神原创笔记)

    这个笔记是我在开发过程中整理的,里面包含了我大量的个人实际开发经验。内容由浅入深,对于初学者和大神来说都非常具有学习价值。

    IOS10开发的记事本

    刚开始学IOS,这两天试着做了一个记事本,界面参考懒人笔记的界面(GitHub中自行百度),涉及的知识有:Storyboard、FMDB数据库操作,ActionController,UITableView等,比较适合初学者,希望能共同学习。

Global site tag (gtag.js) - Google Analytics