為什麼學習 iOS 開發,以及使用 OC 語言?
目前,企業級的 App 還是一片藍海,iOS 是移動開發中最基礎的兩個平台之一。
在萬物互聯的應用中,技術實現和工程思維是一脈相承的,並且比語言更重要。
而相比新興的 Swift,OC 更加穩重,更適用於大型工程。
課程大綱#
- 開發準備:Xcode 是主要開發環境
- 基本頁面:熟悉頁面的基本結構,各模塊的創建、使用和相關原理
- 基本功能:理解不可見的底層模塊
- 輔助功能:了解常用的輔助功能
常見 App 類型與技術棧#
- 常見 App 類型:IM 通訊類、視頻直播類、攝像類、資訊類、工具購物類
- 技術棧
- App 展示界面和動畫:底部 TabBar、Navigation 導航、列表、圖片、按鈕、標籤、文本、網頁、常用動畫。可以聯想微信 App
- App 通用技術架構:網絡、存儲、圖片、音視頻、數據解析、佈局渲染、啟動、日誌系統、上報系統
- App 常用功能:複雜內容頁、登錄、分享、頻道管理、推送、定位、插件、證書、上架
一切從 "HelloWorld!" 開始❗️#
準備
- 安裝:AppStore 中下載即可
- 創建工程:創建 iOS 類型應用,填寫工程基本信息
- 佈局:左 —— 目錄結構等,中 —— 代碼,右 —— 文件配置,下 —— 調試
- PS:可以通過單擊工程文件配置工程
代碼
- 函數定義
- 格式:-/+ (returnType) methodName:(argType1) argName1 joiningName2:(argType2) argName2 {}
- 函數名:methodName
- 一般可以讓「joiningName」與「argName」相同
- 函數調用的格式:[obj methodName var joiningName2];
PS
- self 和 super
- self:是指向當前調用方法的對象
- super:是一個關鍵字,代表調用父類的方法
- 參考OC 中的 self 和 super—— 簡書
- 使用 "." 符號:訪問對象的屬性
- addSubview: 後使用 "({})":是 gcc 的一種擴展,簡化代碼,更易閱讀
- {} 中可以包含多條語句
- () 讓 {} 中最後一個表達式作為整個表達式的返回值
- 使用 @"":可以快速構建字符串
- CGPointMake:是內聯函數,所以不需要使用方括號
- 在編譯的時候會將函數體替換為函數調用👉不需要在堆棧上創建一個函數調用👉提高運行速度
- 然而,它會增加二進制文件的大小
運行結果
Tips#
- 輔助軟件
- IDE:Appcode
- 可視化:Reveal
- 抓包:Wireshark、Charles
- 文件管理:MachOView
- 證書管理:Impactor
- 配置管理:Apple Configurator 2
- 圖標製作:Prepo
- 全網最詳細的 VMware 虛擬機安裝 MacOS 系統教程,沒有之一!!!附全部資源—— 知乎
- 解鎖軟件:paolo-projects/auto-unlocker——Github
- 優化卡頓工具:beamoff
- 實際體驗:還是比較卡,建議直接買 Mac