# 后端基础| 青训营笔记

61 阅读3分钟

这是我参与「第五届青训营」伴学笔记创作活动的第 13 天

ios现状与开发者生态
ios入门学习体系:
①了解内存管理是什么 ②认识闭包block ③学习oc语言并发框架GCD
ios开发入门
1.从ui框架到网路存储再到多媒体的全链路技术实践 2.开始尝试搭建应用

ios开发者生态
It's very easy to be different,but very difficult to be better.
WWDC主要目的是让苹果公司向开发者们展示最新的软件技术。
现阶段需要关注是Apple在布局什么,是否有利于ios生态
CarPaly车机交互场景
Apple也在尽可能地强化Apple设备之间的连接
构建Apple生态网格
ipadOS发布于2019年,由硬件屏幕的区别,逐渐过渡到系统上的区别,将来有可能带来的是应用软件上的区别。
reality OS? 客三消?

image.png

预览工作内容:

image.png

image.png

Mbox主要是及逆行进行分支管理,需求集成,编译提速
性能监控工具

image.png

ios开发者要求:
①扎实的技术基础 ②足够的技术热情 ③积极主动地发现和解决问题

Xcode工程体系介绍

image.png

target可以设置依赖

image.png

选择第一个target,选择app,Framework,Static Library ios,输入法Custom keyboard Extension 消息Notification Service Extension iMessage,内嵌的小游戏或者是表情包

image.png

Object—c swift,c#,HTML,React Native,Flutter
使用最多的是oc和swift
oc面向对象的程序语言,也可以使用c语言
类的实现:

image.png


@interface 定义的类:要继承的类
中间就是声明属性,声明方法
@end
类的实现
@implementation 类
@end
一个类可以有多个interface然后也可以有多个implementation,定义了之后就一定要有相对应的实现,不然会报错
声明文件.h,实现文件.m,interface可以写在.h(可被其他文件看到).m(只有该.m文件可用)
@implementation可写在.m文件中

image.png

对象与构造函数

image.png

image.png 使用: //main.m ByteDancer *byteDancer2=p[[ByteDancer alloc]]initWithName:@"James"]; 函数方法

image.png

被挡住的:andwith:(NSString *)name2;

image.png

函数方法:方法调用 实例方法、静态方法 image.png

在interface中声明变量就是在父类后面开一个花括号,然后进行声明,声明格式为:@权限(public/protected)+类型+名称,这里声明的是公开变量 然后implementation声明的是私有变量 外部调用/内部调用 image.png implementation实现了任何interface都没有的方法,那么这个方法就是私有方法,只能被同个implementation中的代码去调用,同个文件的其他类也无法使用。

Object—c特性 公开Get/set方法,确保访问入口的唯一性

image.png

@propery属性 属性声明:

image.png

image.png

变量和属性方法

image.png

image.png

属性特性
访问原子性,默认:atomic
存取特性,默认:readwrit(get/set方法)
内存管理:默认strong(weak,copy,assign)
重命名get方法
重命名set方法
是否可为null,默认为null_unspcified(nullable,nunnull)

image.png

协议@protocol
希望不同类之间有共通的方法,类不能多继承

image.png //ByteDancer.h
@interface SenioriosDeverloper:ByteDancer<遵守的协议>
@end

image.png

image.png

协议的设计
①委托方(声明协议,并持有委托对象属性)—dataSource数据源模式—代理方(遵守协议,并成为代理方的委托对象)—delegate委托模式—①

image.png

image.png

方法=讯息传输

image.png

image.png

image.png responsToSelector,判断是否有实现

新建一个project,选择command Line Tool终端执行命令行 main函数 image.png

@class,避免直接引进头文件

image.png

image.png

image.png

创建一个json文件,然后把绝对路径及填进去

image.png

image.png

产物位置

image.png

运行产物

image.png

image.png