iOS 一步步带你实践组件二进制方案
前言
随着业务的扩展、项目体积的增大,CocoaPods组件库越来越多,每次重新编译的时候速度越来越慢,这给我们提出了需要提高编译速度的需求。
为了提高项目编译速度,对于大量使用组件化开发的项目组而言,组件二进制化是必然要走的路线,虽然中心思想就是要将各个组件打包成.a二进制库,但是各个公司可能方案都不太相同, ...
面对职业瓶颈,iOS 开发人员应该如何突破?
我们经常看到 iOS 开发人员(各种能力水平都有)的一些问题,咨询有关专业和财务发展方面的建议。
这些问题有一个共同点:前面都会说“我现在遇到了职业困境”,然后会问一些诸如“我是否应该学习Android或者后端开发?”这样的问题。
这些都说明 iOS 开发人员在积极寻求职业发展路径,这当然很好。
不过很多人都选择了次 ...
2020年面向iOS开发人员的知识点总结(更新中)
前言:
最近在整理自己的技术栈,收集了一些自己认为比较重要的知识点分享给大家。
Runloop
1.iOS中触摸事件传递和响应原理
2.为什么只有主线程的runloop是开启的
3.为什么只在主线程刷新UI
4.PerformSelector和runloop的关系
5.GCD 在Runloop中的使用?
6.AFNetworking 中如何运用 Runloop?
Runtime
1.Category 的实现原理 ...
2020年中高级iOS大厂面试宝典+答案
前言
过年之后相信有一部分的人,早已磨刀霍霍向大厂。势必要大展拳脚,必将在大厂内创出一片天地。但是,想必大家都知道:最近几年的最严重的互联网寒冬来临,各位兄弟都会说“江湖再见”。耳边总是充刺着流言蜚语,这个地方裁员了,这个地方缩减HC。弄得人心慌慌。年后将是一片血雨腥风,程序界的江湖将在这一天精彩斑斓 ...
iOS开发之UIScrollView控件详解
UIScrollView是一个非常重要的控件,其可以展示比设备屏幕更大区域的内容,我们可以通过手指滑动来查看内容视图的每一部分内容,也可以通过手指捏合来对内容视图进行缩放操作,我们每天开发中都不断显式或隐式地与UIScrollView打交道,下面给大家详细介绍UIScrollView控件。
一、UIScrollView控件是什么?
...
浅析iOS开发中UITableViewCell的复用机制
写在前面
UITableView是iOS开发中一种非常常用的组件,在主流App中几乎可以看到(微信和QQ的聊天列表等)。这篇文章主要探讨UITableView的数据载体——UITableViewCell的一些相关内容
UITableViewCell是什么
UITableViewCell就是UITableView展示数据的基本单位 可以理解为单元格
此处蓝色背景的为已经填充的Cell 剩下的位置是 ...
iOS开发--AFN框架基本使用
iOS开发--AFN框架基本使用
技术概述
AFNetworking是目前国内开发网络应用使用最多的第三方框架,专为 Mac OS & iOS 设计的一套网络框架,对 NSURLConnection 和 NSURLSession 做了封装,提供有丰富的 API,同时提供了完善的错误解决方案,使用简单。
技术详述
使用案例
我在此次团队开发项目中使用AFNetworking请求后端接口 ...
iOS开发者经验总结:在腾讯的九年,我的成长之路和职业思考
介绍
余果:腾讯社交用户体验设计部(ISUX)高级UI工程师,前端开发组负责人,熟悉前端开发、iOS开发、PHP开发和Ruby开发等;曾独立开发iOS APP(撸大师)和CMS(33PU);平时喜欢编程、写作、演讲、摄影和英语等,希望自己能做一个终生学习者。
关于腾讯ISUX:
腾讯ISUX(Internet Social User Experience)社交用户体验设 ...
‘跳槽季’ iOS开发者,写一份成功的简历?
上篇: 跳槽季“iOS开发”救救自己,别再这样写简历了
简历中需要注意的问题!!
HR每天要收到500+简历还不止,首先就是简历的过滤。就相当于翻牌子。废话不多说下面讲重点:
简历拼写错误:(❌)单词拼接错了就不提了,直接pass, 好感度马上降为零。 比如:githup/CNDS/Foudation/ConrnerStone/ipone.....玩你妈嗨, ...
iOS开发之触摸事件
本文介绍了iOS中使用频率较高的触摸事件,并阐述了事件产生和传递的过程,以及响应者链的事件传递过程
iOS触摸.jpg
触摸事件
简介
在用户使用app过程中,会产生各种各样的事件
iOS中的事件可以分为3大类型
触摸事件
加速计事件
远程控制事件
响应者对象
在iOS中不是任何对象都能处理事件,只有继承了UIResp ...
iOS开发的四种内存管理
一、block内存管理
1.block内存类型
block内存分为三种类型:
_NSConcreteGlobalBlock(全局)
_NSConcreteStackBlock(栈)
_NSConcreteMallocBlock(堆)
2.三种类型的内存的创建时机
1)对于_NSConcreteStackBlock和_NSConcreteGlobalBlock类型
_NSConcreteStackBlock和_NSConcreteGlobalBlock这两种类型的block,我们 ...
深入理解iOS开发中的锁
摘要
本文的目的不是介绍 iOS 中各种锁如何使用,一方面笔者没有大量的实战经验,另一方面这样的文章相当多,比如 iOS中保证线程安全的几种方式与性能对比、iOS 常见知识点(三):Lock。本文也不会详细介绍锁的具体实现原理,这会涉及到太多相关知识,笔者不敢误人子弟。
本文要做的就是简单的分析 iOS 开发中常见的 ...
整理:iOS开发算法资料
关于算法的想法
由于面试可能需要手写算法,网上搜罗了一些资料,整理了下算法的OC的实现代码,虽然平时开发中一般用不到,但是多积累一些技术知识,还是对以后发展大有裨益的
github上搜集的几大算法原理和实现代码,只有JavaScript、Python、Go、Java的实现代码
算法文字理解和OC代码实现
1. 冒泡排序算法(Bubble S ...
堆和栈在iOS开发中的使用
堆和栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。
堆,队列优先,先进先出(FIFO—first in first out);
栈,先进后出(FILO—First-In/Last-Out)。
一般情况下,如果有人把堆栈合起来说,那它的意思是栈,而不是堆。
堆栈空间分配
1.栈区(stack):由编译器自动分配释放,存放函 ...
iOS开发实践-OOM治理
概览
说起iOS的OOM问题大家第一想到的应该更多的是内存泄漏(Memory Leak),因为无论是从早期的MRC还是2011年Apple推出的ARC内存泄漏问题一直是iOS开发者比较重视的问题,比如我们熟悉的 Instruments Leaks 分析工具,Xcode 8 推出的 Memory Graph 等都是官方提供的内存泄漏分析工具,除此之外还有类似于FBRetainCycleDet ...
整理:iOS开发知识点
iOS学习面试相关问题整理,希望能巩固自己的基础知识,当然也希望能帮助更多的开发者。
数据结构
1.数据结构的存储一般常用的有几种?各有什么特点?
2.集合结构 线性结构 树形结构 图形结构
3.单向链表 双向链表 循环链表
4.数组和链表区别
5.堆、栈和队列
6.输入一棵二叉树的根结点,求该树的深度?
7.输入一课二叉树的根 ...
如何深入理解 iOS 开发中的锁?
摘要
本文的目的不是介绍 iOS 中各种锁如何使用,一方面笔者没有大量的实战经验,另一方面这样的文章相当多,比如 iOS中保证线程安全的几种方式与性能对比、iOS 常见知识点(三):Lock。本文也不会详细介绍锁的具体实现原理,这会涉及到太多相关知识,笔者不敢误人子弟。
本文要做的就是简单的分析 iOS 开发中常见的几种锁 ...
一篇文章看懂有关iOS开发语言的一切!
原文来自cocoachina
前言
iOS开发语言有哪些?
OS开发语言主要包括什么?
iOS开发语言具体怎么学习?
今天重点介绍一下:
iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框架详解这几大块,在这里项目阶段就不详细的介绍了。
C语言基础
C语言是开发语言的基础,是最常用的一门程序设计语言,最常用于编写 ...
iOS企业证书开发的APP证书过期时间监控
大家都知道iOS的企业证书开发的APP,证书都是一年有效期,满一年得新建证书重新打包,否则无法继续使用。
我们一个企业账号下有几十个APP,一个个去看也很麻烦~~搞个监控呗!!!
写个脚本放Jenkins上定时跑就行,跑完发布邮件:
1.邮件包含信息:APP名称,APP相关的bundle id、证书 ...
block在iOS开发中的用法解析与底层原理
1. 前言
Block:带有自动变量(局部变量)的匿名函数。它是C语言的扩充功能。之所以是拓展,是因为C语言不允许存在这样匿名函数。
1.1 匿名函数
匿名函数是指不带函数名称函数。C语言中,函数是怎样的呢?类似这样:
int func(int count);
调用的时候:
int result = func(10);
func就是它 ...