移动开发iOS工程师秘籍(全套七层)
古人云:“活到老,学到老。”互联网算是最辛苦的行业之一,“加班”对程序员来说已是“家常便饭”,同时互联网技术又日新月异,很多程序员都疲于应付,叫苦不堪。
BAT iOS算法面试题(汇总)
两数之和解决方案无重复字符的最长字串(2)"滑动窗口法"优化解决关键词介绍解题思路复杂度分析无重复字符的最长字串(3)优化"滑动窗口"解决代码块ASCII 128码 思路代码块最大回文子串解题思路找到字符串的最长公共子串动态编程解决方案复杂度代码块学习建议最大回文子串(2)我们上面分享的不管从时间复杂度还是空间复杂度,都是颇为浪费的?难道没有更优解决方案?肯
iOS 逆向编程(入门条件)
一、学习条件至少1年以上iOS开发经验。UI、多线程、数据存储知道用就行,一般做了一年以上iOS开发基本都满足这一点。二、调试设备建议至少 iPhone 5s (因为从 5s 开始支持 arm64 架构)。或者至少是 iPad Air、iPad mini2 等支持 arm64 架构的设备。三、设备越狱越狱分为:不可越狱
面试题 拓展:常用框架和第三方框架
类变量的@protected,@private,@public,@package声明各有什么含义@private:作用范围只能在自身类@protected:作用范围在自身类和继承自己的子类(默认)@public:作用范围最大,可以在任何地方被访问@package:这个类型最常用于框架类的实例变量,同一个包内能用,跨包就不能访问。对于框架类的拓展:iOS常用基础框架Foundation:提供OC基础
优化iOS小技巧
卡顿优化添加Observer到主线程RunLoop中,通过监听RunLoop状态切换的耗时,以达到监控卡顿的目的CPU:使用轻量级的对象比如用不到事件处理的地方,可以考虑使用CALayer取代UIView不要频繁地调用UIView的相关属性,比如frame、bounds、transform等属性,尽量减少不必要的修改尽量提前计算好布局,在有需要时一次性调整对应的属性,不要多次修改属性Autolay
Flutter混合开发
混合开发简介使用Flutter从零开始开发App是一件轻松惬意的事情,但对于一些成熟的产品来说,完全摒弃原有App的历史沉淀,全面转向Flutter是不现实的。因此使用Flutter去统一Android、iOS技术栈,把它作为已有原生App的扩展能力,通过有序推进来提升移动终端的开发效率。目前,想要在已有的原生App里嵌入一些Flutter页面主要有两种方案。一种是将原生工程作为Flutter工程
iOS 架构
初见MVC尽管开发人员争论应该使用哪种体系结构,但 Apple 已经向我们提供了有关如何构建 iOS 应用程序的说明,即 MVC。View 是用户可以在屏幕上看到的部分。Model 是“数据”。Controller 是它们之间的中介。它从 Model 获取数据并在 View 上显示给用户,同时在 View 上处理用户操作并将其传输到 Model。看起来很好。如果遵循要 Apple 指南的话,为什么
JS&Swift
加载本地HTML文件xoverride func loadView() { super.loadView() let conf = WKWebViewConfiguration() //JS调用HTML时使用的na
iOS面试题:简述性能优化
在性能优化中一个最具参考价值的属性是FPS:Frames Per Second,其实就是屏幕刷新率,苹果的iphone推荐的刷新率是60Hz,也就是说GPU每秒钟刷新屏幕60次,这每刷新一次就是一帧frame,FPS也就是每秒钟刷新多少帧画面。静止不变的页面FPS值是0,这个值是没有参考意义的,只有当页面在执行动画或者滑动的时候,FPS值才具有参考价值,FPS值的大小体现了页面的流畅程度高低,当低
面试成功源于基础和经验(iOS)
总结的iOS面试问题,希望能对面试伙伴提供一点点帮助。
Swift学习总结
简单对swift整合,希望能给小伙伴在iOS编译的问题上提供帮助。
Swift基础语法简化版
如果您觉得还不错,麻烦在文末 “点个赞”