【IOS 開發】Object-C 入門 Xcode 環境具體解釋


作者 : 韓曙亮

轉載請注明出處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. 程序源代碼及解析


程序源代碼

/* 導入 Foundation 框架下的 Foundation.h 文件 */
#include <Foundation/Foundation.h>

/* 程序入口函數 */
int main(int argc, char * argv[])
{
	/* 自己主動釋放池, 該環境中運行的語句會自己主動回收所創建的對象 */
	@autoreleasepool
	{
		/* Foundation 中的輸出函數, 可輸出字符串, 對象等 */
		NSLog(@"Hello World"); /* @"Hello World", 加上 @ 是為了與 C 中的字符串區分 */
	}
	return 0;
}


(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 ;


編譯運行結果

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




作者 : 韓曙亮

轉載請注明出處 : http://blog.csdn.net/shulianghan/article/details/38424965



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM