暂无个人介绍
随着移动互联网技术的不断发展和创新,访谈对于公司和开发人员和设计师来说都是费时且昂贵的项目,面对iOS开发者和设计师在访谈过程中可能遇到的问题,现在为大家总结iOS技术面试题及应对答案。 那些 iOS开发 常备的底层面试题合集! 一、如何绘制UIView? 绘制一个UIView最灵活的方法就是由它自己完成绘制。
面经包含:携程、阿里、京东、腾讯 五一假期,春招基本上已经结束了,剩下少量面试和少量流程中。虽然还没有最终决定,不过也还是决定来开个帖子,写一些总结。 楼主是今年春招的时候开始看看面经,真题做的很少,很水=。
程序员30岁以上,是可以继续技术生涯的. 我身边有很多邻近50+,还在做技术. 如果你喜欢做技术,又能扛得住环境的噪音, 年龄其实不是问题. 遗憾的是,其实很多人并不喜欢软件开发这条技术路, 心里早已存在干几年就要转型的念头, 于是总是容易被外界喧嚣推动的左右摇摆.
一、Runtime 一个objc对象的isa的指针指向什么?有什么作用? 一个 NSObject 对象占用多少内存空间? 说一下对 class_rw_t 的理解? 说一下对 class_ro_t 的理解? 说一下对 isa 指针的理解 说一下 Runtime 的方法缓存?存储的形式、数据结构以及...
Objective_C语言特性 (戳这里跳转到Github) 分类 扩展 代理(Delegate) 通知(NSNotification) KVO (Key-value observing) KVC(Key-value coding) 属性关键字 runloop (戳这里跳转到Github) ...
前面两篇文章分别记录了自己学习 Runtime 的一些知识点以及常见的一些应用。之前立下 flag 说准备写三篇关于 Runtime 的文章,于是就有了这篇文章。 题目一:下面的代码输出什么? @implementation Son : Father - (id)init { self =...
序言 这些面试题是两年前的标准了,虽然跟现在的面试需求显得相对简单了点,但是也是可以帮着梳理一下基础方面的知识的! 推荐一个QQ交流群:763164022 !群内有最近整理出来的面试题,以及一些书籍学习资料!也是为了给大部分还在做iOS开发的朋友一个交流圈子! OC的理解与特性 OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装、继承、多态。
一、对比原生KVO,初识ReactiveCocoa的KVO * 我们先来看一段代码,通过触屏来动态修改视图背景色 @interface ViewController () @property (nonatomic, strong)UIColor * bgColor; @end @implemen...
苹果开发者大会 WWDC 2019 在北京时间今天凌晨开幕。在这场大会上除了「史上最难看 Mac 主机」、首次出现的iPadOS以外,我们还终于可以对饱受诟病的iTunes说再见了。而对于开发者来说,新发布的 SwiftUI 可能是最吸引人的特性,在 苹果公司软件工程高级副总裁Craig Federighi的演示中,我们可以轻松地把一百行的前端代码缩减到十几行。
原文作者:Cooci_和谐学习_不急不躁原文地址:https://www.jianshu.com/p/56f96167a6e9 大家平时在开发过程中,经常会遇到Crash,那也是在正常不过的事,但是作为一个优秀的iOS开发人员,必将这些用户不良体验降到最低。
原文作者:Hello_Vincent原文地址:https://juejin.im/post/5b72aaf46fb9a009764bbb6a#heading-1 这一篇文章是iOS性能优化系列文章的的第二篇,主要内容是关于列表流畅度的优化。
Core Animation 众所周知,绚丽动画效果是iOS系统的一大特点,通过UIView层封装的动画,基本可以满足我们应用开发的所有需求,但若需要更加自由的控制动画的展示,我们就需要使用CoreAnimation框架中的一些类与方法 Core Animation基础知识 Core Animation是iOS和OS X上图形渲染和动画的基础结构,可用于为视图和应用程序的其他可视元素设置动画。
对于平常的应用程序开发,我们很少需要关注编译和链接过程。我们平常Xcode开发就是集成的的开发环境(IDE),这样的IDE一般都将编译和链接的过程一步完成,通常将这种编译和链接合并在一起的过程称为构建,即使使用命令行来编译一个源代码文件,简单的一句gcc hello.c命令就包含了非常复杂的过程! 正是因为集成开发环境的强大,很多系统软件的运行机制与机理被掩盖,其程序的很多莫名其妙的错误让我们无所适从,面对程序运行时种种性能瓶颈我们束手无策。
单例可能是 iOS 开发者最熟悉设计模式之一了。 我们的项目里头也使用了很多单例。 最近为了解决项目中单例的 bug 而花费了两天多的时间,发现用 ObjC 写好一个单例真的不容易! V1.
多线程,作为实现软件并发执行的一个重要的方法,也开始具有越来越重要的地位! 正式因为多线程能够在时间片里被CPU快速切换,造就了以下优势 资源利用率更好 程序设计在某些情况下更简单 程序响应更快 但是并不是非常完美,因为多线程常常伴有资源抢夺的问题,作为一个高级开发人员并发编程那是必须要的,同时解决线程安全也成了我们必须要要掌握的基础 原子操作 自旋锁其实就是封装了一个spinlock_t自旋锁 自旋锁:如果共享数据已经有其他线程加锁了,线程会以死循环的方式等待锁,一旦被访问的资源被解锁,则等待资源的线程会立即执行。
半年前我加入一个刚刚拿到 A 轮资金的创业团队负责 iOS 项目。早期的时候公司生死未卜,只追求快速迭代找到一个正确的方向。这种早期默默无闻的团队也没什么工程追求,就是写的快就好了。但是确定方向后要长期发展,就不能再野蛮生长了。
程序员的大本营被黑客攻击了! 就在五一假期的最后一天,一些程序员查看自己托管到GitHub上的代码时发现,他们的源代码和Repo都已消失不见,取而代之的是黑客留下的一封勒索信!这封信中表示,他们已经将源代码下载并存储到了自己的服务器上。
排序 冒泡排序(依次循环旁边的比较放到后边去) /** 最好时间复杂度是O(n) 最坏时间复杂度是O(n^2) 平均时间复杂度:O(n^2) 平均空间复杂度:O(1) */ - (void)foolSortArray:(NSMutableArray *)array { for (int i = 0; i < array.
关于iOS应用签名我想一起探讨一下它的原理.首先我们需要了解一个东西,叫做数字签名 数字签名(digitally signed) 名词解释:为什么用签名这个词.因为老外喜欢用支票,支票上面的签名能够证明这玩意是你的.
从09年iOS开发出来,到现在!这个当时丰盛一时的开发语言,现在似乎已经开始走下坡路了!一批人离开了,但是还有一群人选择留在这里,那这篇总结,希望能够帮助到还留在这个行业的伟大的开发者们~ 中高级进阶,这是现在这个市场讨论的最多的一个话题,长时间的开发经验总结,现在占据iOS中级开发层面的程序员应.
自学iOS的人不少,科班出身的也很多,但是到什么程度才有资格说自己精通iOS?个人觉得至少需要经历以下几个阶段: 1.重视代码品质,精益求精,这是技术开发的本质,也是程序员的立足之本。 对处于还没工作或者工作1年左右这个阶段的人来说,看书或者看视频都是比较好的提升方式!需要注意的是,在看书的过程中一定要思考能否运用书中的经验来改善自己写的代码,运用到实处! 2.打好基础后,主动跳出舒适区,不断扩大自己的技术视野。
这篇文章主要给大家介绍了关于iOS中常见的几种加密方法,其中包括 base64加密、POST加密、Token值介绍、MD5加密--(信息-摘要算法) 哈希算法之一、时间戳密码以及指纹识别等方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
在应用开发过程中,我们不仅仅需要完成正常的业务逻辑,考虑应用性能、代码健壮相关的问题,我们有时还需要考虑到应用安全的问题。 那么应用安全的问题涉及到很多方面。比如防止静态分析的,代码混淆、逻辑混淆;防止重签名的,应用ID检测、甚至是代码的HASH检测等等。