-
CocoaPods使用心得
简介本章介绍什么是 CocoaPods ,如何使用 CocoaPods , 以及 CocoaPods 的原理,和使用 CocoaPods 时经常出现的一些问题。Cocoapods 是 OS X 和 iOS 下的一个第三方库管理工具。我们能使用CocoaPods添加被称作 “Pods”的依赖库,并轻松管理它们的版本,CocoaPods会帮我们配置好这些三方库的路径及开发环境,极大的提升了开发者的工作效率。安装CocoaPodsMac下自带ruby,使用ruby的gem命令安装,ruby的软件...…
-
Swift 2 throws 全解析 - 从原理到实践
本文最初于 2015 年 12 月发布在 IBM developerWorks 中国网站发表,其网址是 http://www.ibm.com/developerworks/cn/mobile/mo-cn-swift/index.html。如需转载请保留此行声明。Swift 2 错误处理简介throws 关键字和异常处理机制是 Swift 2 中新加入的重要特性。Apple 希望通过在语言层面对异常处理的流程进行规范和统一,来让代码更加安全,同时让开发者可以更加及时可靠地处理这些错误。Swi...…
-
Swift 性能探索和优化分析
本文首发在 CSDN《程序员》杂志,订阅地址 http://dingyue.programmer.com.cn/。Apple 在推出 Swift 时就将其冠以先进,安全和高效的新一代编程语言之名。前两点在 Swift 的语法和语言特性中已经表现得淋漓尽致:像是尾随闭包,枚举关联值,可选值和强制的类型安全等都是 Swift 显而易见的优点。但是对于高效一点,就没有那么明显了。在 2014 年 WWDC 大会上 Apple 宣称 Swift 具有超越 Objective-C 的性能,甚至某些情...…
-
iOS动态更新
1、控件到 window 的层级关系: 2、分析控件的详细路径: 3、动态修改控件: 4、工具篇:视图的层级关系每个 App , 至少有一个根 Window , 通常情况下我们只用一个 。window 有一个 rootViewController , 这就是我们所谓的根视图 , 我们所有的控制器都是放在 rootViewController 里面的。如果在项目里有了这么一个路径 , 我们可以做什么呢? 在当项目很复杂 , 可以其它地方可以直接修改这个控件的状态 当某个控件命名...…
-
WWDC15 Session笔记 - Xcode 7 UI 测试初窥
Unit Test 在 iOS 开发中已经有足够多的讨论了。Objective-C 时代除了 Xcode 集成的 XCTest 以外,还有很多的测试相关的工具链可以使用,比如专注于提供 Mock 和 Stub 的 OCMock,使用行为驱动测试的 Kiwi 或者 Specta 等等。在 Swift 中,我们可以继续使用 XCTest 来进行测试,而 Swift 的 mock 和 stub 的处理,我们甚至不需要再借助于第三方框架,而使用 Swift 自身可以在方法中内嵌类型的特性来完成。关...…
-
iOS 9 变化笔记
这里将介绍下我们日常开发一些从iOS8过度到iOS9给我们带来的一些变化,及解决方法。App Transport SecurityiOS9和OS X El Capitan的一个新特性,App Transport Security 的目地是提高Apple 操作系统的安全性以及在此操作系统上运行的任何应用的安全性。ATS是苹果针对与 NSURL这一层做的封装,iOS9后ATS默认是开启的,即网络传输需要使用HTTPS。如果想在iOS9后继续使用HTTP的话,有两条路可以走: 在Inf...…
-
WWDC15 Session笔记 - 30 分钟开发一个简单的 watchOS 2 app
Apple Watch 和 watchOS 第一代产品只允许用户在 iPhone 设备上进行计算,然后将结果传输到手表上进行显示。在这个框架下,手表充当的功能在很大程度上只是手机的另一块小一些的显示器。而在 watchOS 2 中,Apple 开放了在手表端直接进行计算的能力,一些之前无法完成的 app 现在也可以进行构建了。本文将通过一个很简单的天气 app 的例子,讲解一下 watchOS 2 中新引入的一些特性的使用方法。本文是我的 WWDC15 笔记中的一篇,在 WWDC15 中涉...…
-
WWDC15 Session笔记 - iOS 9 多任务分屏要点
本文是我的 WWDC15 笔记中的一篇,涉及的 Session 有 Getting Started with Multitasking on iPad in iOS 9 Multitasking Essentials for Media-Based Apps on iPad in iOS 9 Optimizing Your App for Multitasking on iPad in iOS 9iOS 9 多任务综述iOS 9 中最引人注目的新特性就是多任务了,在很久以前的越狱开发...…
-
开发者所需要知道的 iOS 9 SDK 新特性
本文为InfoQ中文站特供稿件,首发地址。如需转载,请与InfoQ中文站联系。年年岁岁花相似,岁岁年年人不同。今年的 WWDC 一如既往的热闹,但是因为要照顾家里刚出生的宝宝以及宝宝的娘,就只能在家里的“窝里蹲”家庭影院来关注这一全球 Apple 开发者的盛会了。生命不息,学习不止。一如以往几年,我会陆续写一些关于 WWDC 和新的 SDK 里我觉得有意思和我自己重点关注和学习的内容。现在回头看前几年写的东西,愈来愈感觉到以前青葱岁月的自己真是傻得可爱。不过一路以来的成长轨迹倒是很明显,也...…
-
跨平台开发时代的 (再次) 到来?
这篇文章主要想谈谈最近又刮起的移动开发跨平台之风,并着重介绍和对比一下像是 Xamarin,NativeScript 和 React Native 之类的东西。不会有特别深入的技术讨论,大家可以当作一篇科普类的文章来看。故事的开始“一次编码,处处运行” 永远是程序员们的理想乡。二十年前 Java 正是举着这面大旗登场,击败了众多竞争对手。但是时至今日,事实已经证明了 Java 笨重的体型和缓慢的发展显然已经很难再抓住这个时代快速跃动的脚步。在新时代的移动大潮下,一个应用想要取胜,完美的使用...…