为什么学习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:joingingName2
- 一般可以让「joiningName」与「argName」相同
- 函数调用的格式:[obj methodName var joiningName2:var2];
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