写点什么

iOS 开发周报:Apple 发布 iOS 10.3 、KVO 的优雅使用方案

  • 2017-03-29
  • 本文字数:956 字

    阅读完需:约 3 分钟

新闻

  1. Apple 发布 iOS 10.3 :Apple 发布了 iOS 10.3 ,带来了新的 Apple ID 页面,增加了允许 App 内评分及留言、APFS、Find My AirPods 等功能。(当然也发布了 Xcode 8.3)。
  2. WWDC 2017 报名开始:WWDC 2017 可能会带来 iOS 11、使用 APFS 的 macOS 10.13 以及新版的 watchOS 、 tvOS 。仍然是抽签确定参加人员。

教程

  1. Profiling your Swift compilation times :Swift 的编译速度非常慢(Swift 3.1 略有改进),本文介绍了如何在项目中检查每个方法的编译时间,以及如何使用 xcodebuild 更好地筛选出编译时间较长的方法。
  2. RxSwift 处理错误例子 - 上传图片:上传图片通常我们会选择一些对象存储服务减少对服务器的压力,为此我们就需要先上传图片到对象存储服务器中,再将上传完成的图片链接配合其他参数返回给我们的服务器,本文介绍了一种如何处理上述相对复杂逻辑的方案。
  3. iOS 自动构建命令——xcodebuild :通常我们使用 Xcode 提供的 GUI 方式编译项目,xcodebuild 是一个命令行工具,你可以用它来完成一些自动化的操作,本文介绍了 xcodebuild 的基本使用。
  4. Variable Height Table View Header :为了适配不同屏幕的大小,我们可能需要动态修改 TableView 的 HeaderView 的高度,本文介绍了一种比较好的动态修改高度方案。
  5. 如何优雅地使用 KVO :KVO 作为 iOS 中一种强大并且有效的机制,为 iOS 开发者们提供了很多的便利;我们可以使用 KVO 来检测对象属性的变化、快速做出响应,这能够为我们在开发强交互、响应式应用以及实现视图和模型的双向绑定时提供大量的帮助。但是在大多数情况下,除非遇到不用 KVO 无法解决的问题,笔者都会尽量避免它的使用,这并不是因为 KVO 有性能问题或者使用场景不多,总重要的原因是 KVO 的使用是在是太麻烦了。本文介绍了优雅的解决方案 KVOController

开源项目

  1. BuildTimeAnalyzer-for-Xcode :Swift 编译时间分析的工具。
  2. Few.swift :类似于 React 写法的组件库。
  3. FengNiao :检查项目中无用资源的工具。
  4. CFAlertViewController :漂亮的弹窗 UI 组件。
  5. AutoToggleHeaderFooterView :为你的滚动视图添加随手势变化的动态 Header Footer UI 组件。

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-03-29 19:002905
用户头像

发布了 41 篇内容, 共 11.1 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

如何告别丑陋判空?一个Optional类就能搞定!

风铃架构日知录

Java 程序员 程序人生 后端 码农

你知道微服务架构中的“发件箱模式”吗

JAVA旭阳

Java 架构

使用 OpenAI ChatGPT 进行了编码尝试

devpoint

人工智能 openai ChatGPT

分享 7 个不错的 AI 工具

devpoint

人工智能 AI openai

社交视频直播一对一交友APP源码之Android如何打包APP

山东布谷科技胡月

语音直播app开发

2023-01-06:给定一个只由小写字母组成的字符串str,长度为N, 给定一个只由0、1组成的数组arr,长度为N, arr[i] == 0表示str中i位置的字符不许修改, arr[i] ==

福大大架构师每日一题

算法 rust Solidity 福大大

干掉 “重复代码”,这三种方式绝了!

风铃架构日知录

Java 程序员 码农 工程师 代码

盘点毫末智行AI DAY:智算中心成立、六大闭环、MANA五大模型...助力毫末智能驾驶产品快速迭代

科技大数据

Portraiture4人像智能磨皮插件下载亲测可用

茶色酒

Portraiture2023 Portraiture

使用 App Store Connect API 批量创建内购商品

37手游iOS技术运营团队

AppleParty 苹果派 App Store Connect API 批量创建内购IAP 批量上传 IAP

如何让你的架构设计应用做到高内聚、低耦合?

风铃架构日知录

Java 程序人生 后端 架构设计 后端开发

Guitar Pro2024最新免费版吉他打谱软件下载

茶色酒

Guitar Pro Guitar Pro8 guitar pro2023

数字人民币创新浪潮来袭,支付机构如何“乘风破浪”?

易观分析

金融 数字人民币 数字支付

Smart Finance成为火必投票竞选项目,参与投票获海量奖励

鳄鱼视界

OpenTelemetry日志体系

骑牛上青山

Java 日志 log 调用链 OpenTelemetry

MySQL字符集和排序规则详解

C++后台开发

MySQL 数据库 中间件 后端开发 C++开发

Button(按钮)与ImageButton(图像按钮)

芯动大师

Android Studio button imagebutton

线上压测

agnostic

TSDB助力井下位置服务

CnosDB

数据库 IoT 时序数据库 开源社区 infra

分享 7 个VUE项目用得上的JavaScript库

devpoint

JavaScript Vue 前端开发 前端开发框架

8 个很酷的 GitHub 技巧

devpoint

GitHub vscode 开发技巧

【Redis技术探索】「数据迁移实战」手把手教你如何实现在线+离线模式进行迁移Redis数据实战指南(在线同步数据)

码界西柚

redis 数据同步 1月日更 数据同步工具 RedisShake

高并发系统设计的15个锦囊

小小怪下士

Java 程序员 系统设计 高并发

用 SwiftUI 实现 AI 聊天对话 app - iChatGPT

37手游iOS技术运营团队

ios SwiftUI openai ChatGPT

推动GameFi走向新叙事的Smart Finance,成为火必投票竞选项目

股市老人

如何使用Gradle构建一个多模块项目?

风铃架构日知录

Java 程序员 后端 码农 架构师

直播交友一对一视频语音APP项目系统架构和模式分析(成品1对1源码)

山东布谷科技胡月

视频语音直播app开发 语音直播交友系统搭建 社交app开发 1v1语音系统搭建 视频社交APP开发

极客时间运维进阶训练营第十周作业

老曹

EditText(输入框)详解

芯动大师

android edittext 输入框设计 文本框(TextView)

选购LED显示屏时需要注意8个技术参数

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

iOS 开发周报:Apple 发布 iOS 10.3 、KVO 的优雅使用方案_Android/iOS_靛青K_InfoQ精选文章