作者 : 韩曙亮

转载请注明出处http://blog.csdn.net/shulianghan/article/details/38424965

一. Xcode 环境安装 与 project创建

1. 下载环境

相关资源下载 :

-- IOS 相关资料下载页面https://developer.apple.com/devcenter/ios/index.action ;

-- Xcode 下载页面https://developer.apple.com/xcode/downloads/ ;

2. 创建 Object-C 程序

进入主界面方式 : 打开 Xcode 之后, 能够使用 Xcode 菜单, 可是必须创建一个 Object-C project 或者 导入 一个 Object-C project才干够进入主界面;

-- 打开现有project : 点击右边的历史记录, 就能够打开现有的project;

-- 创建project : 点击第一个 Create a new Xcode Project 就可以创建一个新project;

-- 导入project : 点击 Check out an existing project 能够导入一个已经创建的project;

创建一个命令行程序 : 选择 创建project界面的 OS X --> Command Line Tool 程序, 即创建了一个命令行程序, Cocoa Application 是创建有界面的程序;

-- ios 项目 : ios项目是为手机和平板开发的应用;

-- OS X 项目 : OS X 是为 OS 操作系统创建的应用;

创建project : 注明 project名, 公司名称, 类型;

-- Product Name : project名称;

-- Organization Name : 组织名称;

-- Type : 这里选 Foundation, 这是 Object-C project;

3. 创建 IOS 项目

打开 Xcode 并选择创建新project : 弹出菜单中选择 IOS --> Single View Application project;

填写项目信息 :

-- Product Name : 项目名称;

-- Organization Name : 公司标识;

-- Class Prefix : 为了避免用户定义类与 Object-C 类命名冲突问题, 在每一个类之前都加上这个前缀;

-- Devices : 选择应用运行的设备, Universal 表示同事兼容 ipad 和 iphone;

二. Xcode 界面具体解释

1. Xcode 界面简单介绍

(1) 顶部区域

程序运行相关

-- 从左至右介绍 : 运行button, 停止button, 为project选择运行平台;

编辑器相关

-- 从左至右介绍 : 标准编辑器, 辅助编辑器, 版本号编辑器;

面板控制相关

-- 从左至右介绍 : 隐藏左側面板, 隐藏底部面板, 隐藏右側面板;

(2) 左面板

面板介绍 : 该面板是 Xcode project导航面板, 上方的七个button用于切换导航模式;

(3) 底部面板

面板介绍 : 用于 Xcode 显示 控制台调试输出信息;

(4) 右面板

检查器面板 : 依据项目的不同, 包括大量审查器;

库面板 :

-- 库面板简单介绍(从左至右) : 文件模板库, 代码片段库, 对象库, 媒体库;

(5) 具体编辑区

该区域是代码编写主要区域 :

2. 导航面板具体解释

导航面板简单介绍

-- 从左至右 : 项目导航, 符号导航, 搜索导航, 问题导航, 測试导航, 调试导航, 断点导航, 日志导航;

(1) 项目导航

项目导航组成 :

-- 源文件 : 在 HelloWorld 文件夹下的 ".h" 和 ".m" 后缀文件是源文件;

-- 属性文件 : 在 HelloWorld 下的 Supporting Files 文件夹下是属性文件 图片等;

-- 单元測试项目 : HelloWorldTest 是project的单元測试项目;

-- 目标应用 : Products 文件夹下的 HelloWorld.app 是目标应用;

(2) 符号导航

符号导航简单介绍 : 用符号显示project中的 类, 项目 和 属性;

-- 表示方式 : C 表示类, M 表示方法, P 表示属性;

-- 高速定位 : 点击相应的方法或者属性, 能高速定位到这个类中;

(3) 搜索导航

搜索导航简单介绍 : 在搜索框中输入要搜索的字符串, 按回车就能够搜索出包括该字符串的类;

(4) 问题导航面板

问题导航面板简单介绍 : 显示项目中存在的警告或者错误;

(5) 測试导航

測试导航简单介绍 : 点击 testExample 后面的运行button, 就会运行该单元測试;

(6) 调试导航

调试导航简单介绍 : 调试导航面板中显示了各线程的具体信息;

加入断点 : 在 OCTViewController.m 中加入一个断点;

開始调试(自己主动推断) : 点击顶部面板中的调试button, 假设代码中有断点, 就会自己主动进入调试状态, 运行到断点时会自己主动停止, 具体调试信息显示在底部的调试输出面板;

调试面板介绍 以下从左至右介绍;

-- Continue program execution : 继续运行以下的代码;

-- Step over : 单步调试, 点击一次该button, 运行一行代码, 假设有方法调用, 不会进入方法中;

-- Strp in : 步入调试, 点击该button, 会进入方法中;

-- Step out : 步出调试, 在方法中, 点击该button, 会退出方法, 运行方法外的单步调试;

(7) 断点导航

断点导航简单介绍 : 列出全部的断点, 方便管理断点;

(8) 日志导航

日志导航简单介绍 : 列出项目开发过程中 构建, 生成, 运行过程, 每次该过程都能够通过日志面板查看;

3. 检查器面板

检查面板分类 :

-- 普通源文件 : 包括 文件检查器 和 高速帮助器;

-- 故事版 : 界面文件, 除了文件检查器 和 高速帮助器之外, 还有 身份检查器, 属性检查器, 大小检查器, 连接检查器;

文件检查器 :

-- Identity and Type : File Name(文件名称), File Type(文件类型), Full Path(路径);

-- Text Settings : Text Encoding(文件编码使用字符集), Indent Using(缩进), Wrap lines(自己主动换行);

高速帮助器 : 将光标停留在系统类的时候, 该面板会显示该类的 參考手冊, 使用指南 和 演示样例代码;

界面设计相关检查器 : 用户选中 ".storyboard" 或者 ".xib" 后缀的文件时, 会多出另外四个检查器;

-- 身份检查器 : 管理界面组件类 实现类, 恢复ID 等标识性的属性;

-- 属性检查器 : 管理界面组件 拉伸方式, 背景色 等属性;

-- 大小检查器 : 管理界面组件 宽高 xy轴坐标 等属性;

-- 连接检查器 : 管理界面组件 与程序代码之间的关联性;

4. 库面板

库面板简单介绍 : 从左至右介绍;

-- 文件库模板 : 管理文件模板, 能够高速创建指定类型文件, 能够直接拖入项目中;

-- 代码片段库 : 管理各种代码片段, 能够直接拖入源代码中;

-- 对象库 : 界面组件, 能够直接拖入 故事板中;

-- 媒体库 : 管理各种 图片, 音频 等多媒体资源;

三. Xcode 帮助系统具体解释

帮助系统作用 : Object-C 开发中须要调用非常多系统的类, 须要了解每一个类的 使用方法, 通过 Xcode 帮助系统能够查询这些类的使用方法;

1. 高速帮助面板

右面板中的高速面板显示内容 : 该类继承的父类, 遵循的协议, 类所在框架, 点击Reference 中的链接, 能够进入类的具体介绍;

类具体介绍页面 : 通过 高速帮助面板 中的 Reference 中的链接, 能够进入该页面;

类方法分类界面 : 该界面与具体介绍界面是同一个, 下拉就可以;

2. 直接搜索

搜索 : 通过随意链接进入类具体介绍界面之后, 能够在上方的输入框中输入keyword, 就可以搜索相关的 类, 方法, 协议 或者 函数;

3. 代码自己主动提示

提示方式 : 代码编辑区域, 按住 option 键, 然后将光标移动到类上, 会变成问号, 点击就会出现以下的提示框;

四. Hello World 程序

1. 文件扩展名介绍

C语言源文件后缀 : ".c";

C++语言源文件后缀 : ".cc", ".cpp";

头文件 : ".h";

Object-C源程序 : ".m";

Object-C++源程序 : ".mm";

C/C++/Object-C/Object-C++生成的中间文件 : ".o";

C/C++/Object-C/Object-C++生成的可运行文件 : ".out";

2. 程序源代码及解析

程序源代码 :

  1. /* 导入 Foundation 框架下的 Foundation.h 文件 */
  2. #include <Foundation/Foundation.h>
  3.  
  4. /* 程序入口函数 */
  5. int main(int argc, char * argv[])
  6. {
  7. /* 自己主动释放池, 该环境中运行的语句会自己主动回收所创建的对象 */
  8. @autoreleasepool
  9. {
  10. /* Foundation 中的输出函数, 可输出字符串, 对象等 */
  11. NSLog(@"Hello World"); /* @"Hello World", 加上 @ 是为了与 C 中的字符串区分 */
  12. }
  13. return 0;
  14. }

(1) 导入框架头文件

导入头文件语句 : #import <a/b.h> 是导入 a 框架 中的 b.h 头文件;

框架简单介绍 : 框架是 一系列类 函数的集合, Cocoa QuickTime 都被封装成了框架, Cocoa 包括了 Foundation 和 Application Kit 等组件;

(2) 自己主动释放池

内存管理 : 在早期的 Object-C 须要手动管理内存的分配和回收, Object-C 2.0 引入了 ARC(自己主动引用计数)自己主动释放池, 不在进行手动内存管理;

自己主动释放池 : 使用 "@autoreleasepool{}" 包裹的代码位于 Object-C 的自己主动释放池中, 这些语句会自己主动回收创建的对象, 不用进行手动的内存管理;

(3) 字符串输出

NSLog()函数 : 该函数是 Foundation 框架提供的一个函数, 该函数能够输出 字符串 对象等;

-- NS 前缀说明 : Cocoa 框架中全部的 类 函数 常量 都会加上 NS 前缀;

-- @"string" 说明 : @符号 用于区分 Object-C 与 C语言字符串, 加上 @ 符号的时 Object-C 字符串;

3. 编译运行代码

LLVM Clang 编译器语法 : clang -fobjc-arc -framwork 框架名称 源程序 -o 输出结果 ;

-- -fobjc-arc 參数 : 启用 Object-C 的 ARC 自己主动技术功能;

-- -o 參数 : 假设不带, 默认 输出 a.out ;

编译运行结果 :

  1. octopus-2:ios octopus$ clang -fobjc-arc -framework Foundation 01-HelloWorld.m
  2. octopus-2:ios octopus$ ls
  3. 01-HelloWorld.m a.out
  4. octopus-2:ios octopus$ ./a.out
  5. 2014-08-10 00:22:55.670 a.out[3394:507] Hello World

作者 : 韩曙亮

转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38424965

【IOS 开发】Object-C 入门 Xcode 环境具体解释的更多相关文章

  1. iOS开发-UI 从入门到精通(三)

    iOS开发-UI 从入门到精通(三)是对 iOS开发-UI 从入门到精通(一)知识点的综合练习,搭建一个简单地登陆界面,增强实战经验,为以后做开发打下坚实的基础! ※在这里我们还要强调一下,开发环境和 ...

  2. iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增强实战经验,为以后做开发打下坚实的基础! ※开发环境和注意事项: 1.前期iOS-UI ...

  3. IOS开发效率之为Xcode添加常用的代码片段

    IOS开发效率之为Xcode添加常用的代码片段 原文地址:http://blog.csdn.net/pingchangtan367/article/details/30041285 tableview ...

  4. iOS开发OC基础:Xcode中常见英文总结,OC常见英文错误

    在开发的过程中难免会遇到很多的错误,可是当看到系统给出的英文时,又不知道是什么意思.所以这篇文章总结了Xcode中常见的一些英文单词及词组,可以帮助初学的人快速了解给出的提示.多练习,就肯定能基本掌握 ...

  5. 【IOS 开发】Object-C 入门 Xcode 环境详解

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38424965 一. Xcode 环境安装 与 工程创建 1. ...

  6. iOS开发60分钟入门

    原文:https://github.com/qinjx/30min_guides/blob/master/ios.md 本文面向已有其它语言(如Java,C,PHP,Javascript)编程经验的i ...

  7. iOS开发时,在Xcode中添加多个Targets进行版本控制

    在iOS开发中,很可能有以下场景:需要开发多个版本,或因需区分收费版,免费版,或因为网络环境需要区分测试版,发布版,或因渠道不同需要区分企业版,AppStore版等等.解决办法无非就是CheckOut ...

  8. iOS开发之一:入门介绍

    今天就介绍一下iOS开发的基本的东西,有很多东西都是经常用到的而我却经常记不住,所以还是写下来吧. iOS开发需要的开发工具是Xcode,而Xcode又必须运行在 OS X(苹果系统)环境下,所以我们 ...

  9. iOS 开发:深入理解 Xcode 工程结构(一)转

    当我们新建一个 Cocoa 项目时,Xcode 会提供一系列的模板,类似前端的脚手架工具,只需要简单的几个选项,就可以配置好一个项目所需的基本环境. 这些基本环境配置一般包括: 编译选项.证书链选项 ...

随机推荐

  1. NET MVC运行机制

    [图解ASP.NET MVC运行机制理解-简易版]   很多盆友咨询ASP.NET MVC的机制.网上也有好多.但是都是相当深奥.看的云里雾里的.我今天抽空,整理个简易版本.把处理流程走一遍. 当然, ...

  2. [Windows Phone] 地图覆叠层控制项(MapOverlay )

    原文:[Windows Phone] 地图覆叠层控制项(MapOverlay ) 前言 当使用地图时,我们可能需要定位一些座标图示或是绘制一些文字线条,这时可以在地图上加上覆叠层进行绘制,在 Wind ...

  3. height:100%失败

    height显然,设置100% 为什么不能看到效果.非常多的时间不是很扎实的时间的基础上,,经常会遇到这样的问题,原因很简单的事实 首先,你必须确保 html{height:100%;} body{h ...

  4. 在borland c++ builder 中使用 google test (gtest)

    google test version: 1.6 c++ builder version: xe6 1 download google test 1.6 2 unzip the zip file. T ...

  5. 使用BackgroundWorker组件进行异步操作编程

    本文介绍了BackgroundWorker组件的功能及在基于事件的异步操作编程中的应用,并对组件的实现原理进行简述.在应用程序中,可能会遇到一些执行耗时的功能操作,比如数据下载.复杂计算及数据库事务等 ...

  6. OpenGL之路(八)加入�光照效果和键盘控制

    在opengl中加入�光照的效果,可用键盘控制放大缩小 w键放大 s键缩小 d键开关灯 预览效果例如以下: 源代码例如以下: #include <gl/glut.h> #include & ...

  7. cocos2dx-3.0(13)------SpriteBatchNode与SpriteFrameCache渲染速度

    大家都知道一个游戏里面会有大量的图片,每一个图片渲染是须要时间的,以下分析两个类来加快渲染速度,加快游戏执行速度          一.SpriteBatchNode          1.先说下渲染 ...

  8. Objective C Runtime 开发介绍

    简介 Objective c 语言尽可能的把决定从编译推迟到链接到运行时.只要可能,它就会动态的处理事情.这就意味着它不仅仅需要一个编译器,也需要一个运行时系统来执行变异好的代码.运行时系统就好像是O ...

  9. asp.net模板控件示例

    原文:asp.net模板控件示例 模板控件允许将控件数据与其表示形式相分离,模板化控件不提供用户界面. 编写它则是为了实现一个命名容器以及包含属性和方法可由宿主页访问的类,MSDN是这样解释的. 下面 ...

  10. Apache Commons Math3学习笔记(2) - 多项式曲线拟合(转)

    多项式曲线拟合:org.apache.commons.math3.fitting.PolynomialCurveFitter类. 用法示例代码: // ... 创建并初始化输入数据: double[] ...