为什么oc是动态语言,
因为在oc中变量的类型在编译时是不能确定的,而是在运行时确定的,运行时根据不同的类型进行不同的方法的运行;
什么是mvc、mvvm、mvp,
mvc是model模型数据的存储和处理、view界面内容的展示、viewcntroller控制器
mvvm是model模型数据存储、view展示和绑定vm、vm数据处理轮机转换转化器,
mvp是model模型数据的存储和处理、view界面内容的展示和对p发送请求、p是接收请求,处理逻辑更新视图
代理要用 weak 修饰,避免循环引用,避免相互持有,计数未减1;代理b,在a中进行应用b,在b中引用a,死循环所以weak;
Block:是一种匿名的代码块,可以作为变量、参数或返回值传递。使用起来更加简洁,适合处理一次性的任务或回调。
代理:需要定义协议,并且实现协议中的方法。使用代理需要定义代理属性和实现代理方法,相对来说比较繁琐,但适合处理多个回调或需要遵循某种规范的情况。例如: