什么是 Block, 为什么引入 Block

Block 是 Objective-C 对 Closure(闭包)的实现, 本质上是一个带有自动变量(局部变量)的匿名函数。

阅读全文 »

[转载] 软件研发的实用主义思考

原文地址

|导语 我们在以实用为目的去做事情的时候,很容易受到一些思维误区的干扰,自以为自己是追求实用的,但实际上早已经谬之千里,却不自知

阅读全文 »

[转载] 视频号直播:如何进一步降低功耗占用?

原文地址
作者:rhythm,来自微信客户端团队

一、背景

功耗优化一直是 app 性能优化中让人头疼的问题,尤其是在直播这种用户观看时长特别久的场景。怎样能在不影响主体验的前提下,进一步优化 「iOS视频号直播的功耗占用」,本文给出了一个不太一样的答案。

阅读全文 »

[转载] 微信移动端数据库组件WCDB系列(二)— 数据库修复三板斧

原文地址

前言

长久以来SQLite DB都有损坏问题,从Android、iOS等移动系统,到Windows、Linux
等桌面系统都会出现。由于微信所有消息都保存在DB,服务端不保留备份,一旦损坏将导致用户
消息被清空,显然不能接受。

我们即将开源的移动数据库组件 WCDB (WeChat Database),致力于解决 DB 损坏导致数据丢失的问题。

之前的一篇文章《微信 SQLite 数据库修复实践》介绍了微信对SQLite数据库修复
以及降低损坏率的实践,这次再深入介绍一下微信数据库修复的具体方案和发展历程。

阅读全文 »

[转载] 微信移动端数据库组件WCDB系列(一)- iOS基础篇

原文地址

前言

WCDBWeChat DataBase)是微信官方的移动端数据库组件,致力于提供一个高效易用完整的移动端存储方案。

它包含三个模块:

  • WCDB-iOS/Mac
  • WCDB-Android
  • 数据库损坏修复工具WCDBRepair

目前正在筹备开源中。

阅读全文 »