2020秋招猫眼iOS

一面:

  •  
  • 为什么从图像转到开发?

不足:“图像大多数是调参”不妥

改进:图像的一部分网络结构的设计和调参,带给自己的成就感不如开发大,开发可以接触到很多计算机的基础知识,我的一个想法是在工作之余,不断温习这些基础课,探究计算机的历史。

  • 项目介绍

不足:语言凝练,提前多练习

1.头和实现分离 -> shopkit的机制介绍

 

deeplinking是做什么的:网页链接是无法打开原生应用的,如果一个用户访问你的网页中的某一个资源,他的手机上面也已经安装了你的应用,那么,我们要如何让系统自动的打开应用,然后在应用中展示用户所访问的那一个页面中的资源?这就是深度链接需要解决的问题。

更好的引出app crash问题以及条理的说出解决步骤

基础

  • OC面向过程、面向对象

面向过程
  优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源,比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。

  缺点:没有面向对象易维护、易复用、易扩展

面向对象
  优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护
  缺点:性能比面向过程低

  • const关键字
  • static关键字

全局变量、文件域的静态变量和类的静态成员变量在main执行之前的静态初始化过程中分配内存并初始化;局部静态变量(一般为函数内的静态变量)在第一次使用时分配内存并初始化。这里的变量包含内置数据类型和自定义类型的对象。

  • 指针和引用

 

  • OC析构函数
  • 属性中与内存管理相关的关键字

strong表示指向并拥有该对象。其修饰的对象引用计数会增加1。该对象只要引用计数不为0则不会被销毁。当然强行将其设为nil可以销毁它。内存地址保持不变,只是生成了一个新的指针,新指针和引用对象的指针指向同一个内存地址,没有生成新的对象,只是多了一个指向该对象的指针。

weak表示指向但不拥有该对象。其修饰的对象引用计数不会增加。无需手动设置,该对象会自行在内存中销毁。

assign用于非指针变量。其修饰的对象引用计数不会增加。被assign修饰的对象在释放后,指针的地址还是存在的,也就是说指针并没有被置为nil,成为野指针。

copy用来修饰block,因为block需要从栈区copy到堆区。和strong相同点在于都是属于强引用,都会是属性的计数加一,但是copy和strong不同点在于,它所修饰的属性当引用一个属性值时,是内存拷贝(深拷贝),就是在引用是,会生成一个新的内存地址和指针地址来,和引用对象完全没有相同点,因此它不会因为引用属性的变更而改变。

OS:

线程与进程的定义、区别、用途

串行与并行

多线程需要注意什么问题:访问临界资源时需要考虑同步互斥问题;(解决方法:互斥锁、延迟执行、单例模式)

C++锁有多种:互斥锁、条件锁、自旋锁、递归锁、读写锁

进程间通信:匿名管道、有名管道、信号、消息队列、共享内存、信号量

计网:

http和https的区别:传输安全性、证书颁发机构花费一定费用、响应速度、端口号、消耗资源。 https://www.runoob.com/w3cnote/http-vs-https.html

对称加密和非对称加密的区别:加解密速度、安全。https://zhuanlan.zhihu.com/p/34732244

OC:

view 生命周期:

https://www.jianshu.com/p/42eb5a930d66

单例

观察者模式:观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。Notification、KVO 

智力思维题

圆桌放硬币,答案:先手放中间。

代码:

求阶乘

 

资源下载链接为: https://pan.quark.cn/s/9a27693985af 《基于SSM的JSP聘网》是一款功能丰富的在线聘平台,主要面向普通游客、求职者、企业和管理员四种用户角色,提供了多样化的服务与管理功能。该系统采用SSM(Spring、SpringMVC、MyBatis)技术栈开发,确保了系统的稳定性与高效性。以下是对系统功能模块及其技术实现的介绍。 对于普通游客,系统提供职位浏览功能。游客可以查看平台上的各种聘信息,如职位描述、工作职责、薪资待遇等。这需要后台数据库对聘信息进行有效存储和检索。在SSM框架中,SpringMVC负责处理HTTP请求,将数据传递给Spring服务层进行业务逻辑处理,MyBatis作为持久层工具,执行SQL查询并将结果映射为Java对象。 求职者注册成为平台用户后,可进行职位收藏和投递。收藏的职位信息会保存在个人中心,方便随时查看。职位投递功能涉及用户个人信息与简历的提交,需要系统具备用户认证和授权机制,可通过Spring Security或Apache Shiro实现。此外,系统可能采用AJAX技术进行异步操作,如即时刷新收藏夹状态,以提升用户体验。 企业用户可在系统中发布职位、查看求职者简历。发布职位时,需进行表单验证和数据合法性检查,SpringMVC的控制器可协同前端校验库(如Hibernate Validator)完成。查看简历时,企业可对求职者进行筛选和评价,这要求数据库设计合理,以便快速查询和分析求职者信息。 管理员负责管理平台运行,包括用户管理、职位审核、系统设置等。管理员模块通常包含后台管理界面,通过SpringMVC的模型视图解析器和模板引擎(如Thymeleaf或FreeMarker)生成动态页面。同时,日志记录和异常处理必不可少,Spring框架提供了强大的日志和AOP支持,可方便实现这些功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值