网站建设中数据字典建设网站的步

张小明 2026/1/8 10:21:10
网站建设中数据字典,建设网站的步,网络营销费用预算,体验好的网站下面给一份 iOS Object-C#xff08;Objective-C#xff09;速成篇#xff0c;定位是#xff1a;给有开发经验#xff08;如 Android / RN / 前端#xff09;的工程师#xff0c;快速能看懂、能写、能维护 iOS OC 代码。一、OC 是什么#xff1f;一句话理解Objective-C…下面给一份iOS Object-CObjective-C速成篇定位是给有开发经验如 Android / RN / 前端的工程师快速能看懂、能写、能维护 iOS OC 代码。一、OC 是什么一句话理解Objective-C C 语言 Smalltalk 风格的消息机制 iOS 运行时特点编译期弱运行时强Runtime一切都是对象发消息语法啰嗦但底层能力极强二、基本语法速通1️⃣ 类的定义.h头文件interface Person : NSObject property (nonatomic, copy) NSString *name; property (nonatomic, assign) NSInteger age; - (void)sayHello; end.m实现文件implementation Person - (void)sayHello { NSLog(Hello, my name is %, self.name); } end2️⃣ 创建对象Person *p [[Person alloc] init]; p.name Tom; p.age 18; [p sayHello];[]是给对象发消息不是函数调用三、方法 消息机制重点1️⃣ OC 方法长这样- (void)loginWithUser:(NSString *)user password:(NSString *)pwd;调用[self loginWithUser:tom password:123456];参数是方法名的一部分2️⃣ 类方法 vs 实例方法 (void)classMethod; // 类方法 - (void)instanceMethod; // 实例方法调用[Person classMethod]; [p instanceMethod];四、常用数据类型必会1️⃣ NSStringNSString *str Hello; NSString *s2 [NSString stringWithFormat:% World, str];2️⃣ NSArray / NSMutableArrayNSArray *arr [a, b]; NSMutableArray *mArr [NSMutableArray array]; [mArr addObject:c];3️⃣ NSDictionaryNSDictionary *dict { name: Tom, age: 18 };五、属性 内存管理核心1️⃣ property 修饰符必背property (nonatomic, strong) NSObject *obj; property (nonatomic, copy) NSString *name; property (nonatomic, weak) id delegate; property (nonatomic, assign) NSInteger count;修饰符用途strong持有对象weak防止循环引用delegatecopyNSString / blockassign基本类型90% 情况NSString →copydelegate →weak2️⃣ ARC自动内存管理现在几乎不用手写retain/release但要理解strong ↔ retainweak → 自动置 nilblock 默认强引用外部对象六、Block相当于 Java Lambda1️⃣ 定义 blockvoid (^myBlock)(int) ^(int a) { NSLog(%d, a); };2️⃣ 作为参数- (void)request:(void(^)(BOOL success))callback;调用[self request:^(BOOL success) { NSLog(done); }];3️⃣ Block 循环引用__weak typeof(self) weakSelf self; self.block ^{ [weakSelf doSomething]; };七、协议 DelegateiOS 灵魂1️⃣ 定义协议protocol LoginDelegate NSObject - (void)loginSuccess; end2️⃣ 使用property (nonatomic, weak) idLoginDelegate delegate;调用[self.delegate loginSuccess];等价于 Android 的接口回调八、Category给类加方法interface NSString (Utils) - (BOOL)isNotEmpty; endimplementation NSString (Utils) - (BOOL)isNotEmpty { return self.length 0; } end调用[abc isNotEmpty];⚠️不能加成员变量九、Runtime高级但常见1️⃣ 核心概念方法 消息方法查找是运行时完成可以交换方法Hook2️⃣ 方法交换常见于埋点 / 防 crashMethod m1 class_getInstanceMethod(self, selector(viewDidLoad)); Method m2 class_getInstanceMethod(self, selector(xxx_viewDidLoad)); method_exchangeImplementations(m1, m2);十、UIViewController 生命周期必背- (void)viewDidLoad; - (void)viewWillAppear:(BOOL)animated; - (void)viewDidAppear:(BOOL)animated; - (void)viewWillDisappear:(BOOL)animated; - (void)viewDidDisappear:(BOOL)animated;对应 AndroidonCreate→viewDidLoadonResume→viewDidAppear十一、常见开发模式MVCiOS 官方ModelViewController很容易写成巨无霸MVVM现在主流Controller 轻ViewModel 处理逻辑配合 ReactiveCocoa / RxSwift十二、你只要记住的 10 句话OC 是发消息[]不是数组是方法调用NSString 用copydelegate 用weakBlock 会强引用Category 不能加成员变量一切 UI 在主线程Runtime 是 iOS 黑魔法ViewController 很重要新项目优先 Swift但老项目大量 OC十三、学习路线1 周上手Day 1OC 基础语法property / block / delegateDay 2UIView / UIViewController生命周期Day 3网络请求AFNetworkingJSON → ModelDay 4Runtime / CategoryMethod SwizzlingDay 5项目实战 Debug
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

厦门制作网站哪家好沈阳大十字街附近做网站公司

后端技术栈决策:初创企业生存发展的战略考量 【免费下载链接】firebase-js-sdk Firebase Javascript SDK 项目地址: https://gitcode.com/gh_mirrors/fi/firebase-js-sdk 在数字经济时代,技术架构的选择已从纯粹的技术决策演变为影响企业长期发展…

张小明 2026/1/6 22:18:12 网站建设

做soho建立网站北京市建设工程信息网招标

Wipe 是一款专业的数据擦除软件,适用于 Windows 操作系统。它提供了多种数据擦除方法,帮助用户彻底删除硬盘上的数据,防止数据恢复和泄露。Wipe 的设计注重安全性和易用性,适合需要高效管理和销毁敏感数据的用户。 软件功能 数据…

张小明 2026/1/7 4:58:16 网站建设

有什么好看的网站资源seo关键词快速获得排名

Docker 安装 MongoDB 引言 Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。MongoDB 是一个高性能、可扩展的 NoSQL 数据库,常用于处理大量数据。本文将详细介绍…

张小明 2026/1/6 22:18:09 网站建设

建网站能多少带宽wordpress怎么开伪静态

当采购管理告别 “人工台账 线下沟通” 的传统模式,当 AI 算法与自动化流程成为企业降本增效的核心引擎,数字化采购已迈入 “智能驱动、全程协同” 的新纪元。鲸采云作为下一代数字化采购管理系统的引领者,深度融合 AI 技术与全流程自动化能…

张小明 2026/1/7 4:58:21 网站建设

互联网 网站建设价格小游戏 打开

“我们要上MES,但老板觉得一次性投入几百万太贵了,听说有那种每年交几万块的云MES,能不能用?”这是过去两年里,我被问到频率最高的问题,没有之一。大家好,我是老李。在制造业摸爬滚打了10年&…

张小明 2026/1/7 4:58:24 网站建设

网站模版 之星开发软件网站

PyTorch-CUDA 基础镜像实战指南:从零构建高效深度学习开发环境 在现代 AI 开发中,一个常见但令人头疼的问题是:“代码在我机器上跑得好好的,怎么一换环境就报错?” 更具体一点——ImportError: libcudart.so.11.0 not…

张小明 2026/1/7 4:58:34 网站建设