首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
MrLiu647
掘友等级
iOS开发
|
奇虎360
博观而约取,厚积而薄发。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
30
文章 30
沸点 0
赞
30
返回
|
搜索文章
赞
文章( 30 )
沸点( 0 )
iOS 编写高质量Objective-C代码(一)—— 简介
目前iOS开发主推的官方语言有两种:Objective-C 和 Swift。 今天,小编帮助大家更加熟悉Objective-C,并且聊一聊如何才能编写高质量的OC代码。 谈到Objective-C语言的起源,可要比Java还要早十多年。 ~Java在1995年推出,而Objec…
iOS 编写高质量Objective-C代码(二)—— 面向对象
这篇将从面向对象的角度分析如何提高OC的代码质量。 属性(@property)是OC的一项特性。 @property:编译器会自动生成实例变量和getter和setter方法。 assign:对“纯量类型”做简单赋值操作(NSInteger、CGFloat等)。 strong:…
iOS 编写高质量Objective-C代码(三)—— 接口和API设计
选择与公司、工程相关的前缀作为类名的前缀。 为了避免重复引用第三方库带来的冲突,必要时也要为他们加上前缀区分。 在类中提供一个全能初始化方法,并在文档中写明注释。其他的初始化方法全调用此全能初始化方法。 好处:当类的结构发生改变或初始化逻辑发生改变时,只需要改动全能初始化方法即…
iOS 编写高质量Objective-C代码(四)—— 协议与分类
协议(protocol):OC中的协议与Java里的接口(interface)类似,OC不支持多继承。但是可以通过协议来实现委托模式。 分类(category):分类可以为既有类添加新的功能。分类是把“双刃剑”,用得好可以发挥OC的高动态性;用的不好,会留下很多坑。所以,通过这…
iOS 编写高质量Objective-C代码(五)—— 内存管理机制
本篇的主题是iOS中的 “内存管理机制”。 iOS 4之前,所有iOS开发者必须要手动管理内存,即手动管理对象的内存分配和释放。首先,不断插入retain、release等内存管理语句,大大加大了工作量和代码量。其次,在面对一些多线程并发操作时,开发者手动管理内存并不简单,还可…
iOS 编写高质量Objective-C代码(六)—— Block专栏
本篇的主题是iOS中的 “Block的原理及应用”。 先简单介绍一下今天的主角:block。 block(块):是一种 “ 词法闭包 ”,通过block,开发者可将代码块像对象一样传递。 1. block的数据结构: 2. block的三种类型:全局块、栈块、堆块。 1. NS…
iOS 编写高质量Objective-C代码(七)—— GCD专栏
本篇的主题是iOS中的 “ 大中枢开发 GCD ”。 先简单介绍一下今天的主角:GCD。 GCD(Grand Central Dispatch):一种与块相关的技术,提供了对线程的抽象管理(基于派发队列dispatch queue)。GCD会根据系统资源情况,适时且高效地 “创…
iOS 编写高质量Objective-C代码(八)—— 系统框架
本篇的主题是:“系统框架”。 在我们日常开发中,都会使用系统的一些框架。因此熟悉系统框架是很有必要的。 1. Foundation:基础框架。 提供了包括数据存储和持久性,文本处理,日期和时间计算,排序和过滤以及网络等功能。Foundation定义的类,协议和数据类型在整个ma…
iOS App启动优化(一)—— 了解App的启动流程
首先,我们先来区分两个启动的概念。 App点击启动前,此时App的进程还不在系统里。 需要系统新创建一个进程分配给App。(这是一次完整的App启动过程) App在冷启动后用户将App退回后台,此时App的进程还在系统里。 用户重新返回App的过程。(热启动做的事较少) 加载可…
iOS App启动优化(二)—— 使用“Time Profiler”工具监控App的启动耗时
想查看Pre-Main阶段的时间比较简单。 方案一:定时抓取主线程方法的调用堆栈,计算一段时间里的方法耗时。(Xcode中的Time Profiler就是使用的这种的方法) 方案二:对objc_msgSend方法进行hook,来得到所有方法的耗时。 第一步,打开工程,连接真机。…
下一页
关注了
13
关注者
0
收藏集
0
关注标签
1
加入于
2018-01-19