写点什么

iOS 开发周报:Apple 改进 App Store 搜索算法,下一代 Apple Watch 消息

  • 2015-11-16
  • 本文字数:1509 字

    阅读完需:约 5 分钟

新闻

  1. App Store 搜索算法改进:有开发者发现最近 Apple 改善了 App Store 的关键字搜索算法。相比于之前的简单文字匹配,新的搜索算法会寻找与搜索内容功能相似或者类目相同的应用。这对 App Store 发现机制是一个很大的改善,内容实用的应用会得到更多的展示机会。
  2. 下一代 Apple Watch 的消息:Apple Watch 一代的销量和市场反应并没有达到预期,最近关于这款产品第二代的消息已经开始被大家讨论了。台湾的广达电脑近日谈到了 Apple Watch 2 的生产情况,表示已经拿到首波代工订单,正式产品将于明年二季度开始小量出货,明年三季度放量生产。
  3. iPad Pro 正式发售:作为 Apple 眼中下一代生产力的代表,iPad Pro 于本周正式发售,相信更大的屏幕和专业级别的 Apple Pencil 能够在办公和绘画方面带来全新的体验。作为开发者,如果你的 app 想要利用大屏幕和 iOS 9 的话,建议尽快转到 Size Class 的布局技术栈中,这样就能够很容易地使 app 工作在多任务模式中。

教程

  1. iOS 保持界面流畅的技巧:文章非常详细地分析了 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如何构建流畅的交互。文中所列举的要点都是在开发 iOS 应用时所必须注意的。
  2. Where “where” may be used? where 关键字在 Swift 2 中的使用非常灵活,不论是结合 if let 还是 switch 语句,都能够大幅增加代码可读性。但是 Apple 的 Swift 官方文档中并没有为我们总结 where 可以使用的所有场景。这篇文章补充了文档在这方面的不足,通过例子列举了所有 where 的使用场合。
  3. The Sin in Singleton :单例在 iOS 中使用得非常多,但是最近都认为应当少用单例。本文作者指出单例并不是反模式,而只是经常被开发者滥用。在最简单的使用例中,使用单例并不会太大问题,但是当情况变得复杂时,或者我们需要同时使用一个类型的单例版本和非单例版本的时候,经常会出现问题。这篇文章对单例使用中的边界例子进行了一些说明。
  4. Charles 从入门到精通 (中国 5 折特惠) :Charles 是在 Mac 下常用的网络封包截取工具,在做 移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。这篇文章详细介绍了在 iOS 开发中如何使用 Charles 来获取和修改网络请求。同时现在 Charles 在国内开展了五折优惠,有需要的开发者也可以借此机会入手。

开源项目

  1. MPParallaxView :如果你使用过新的 Apple TV 的话,一定会对 tvOS 中的视差图片效果印象深刻。这个框架用 Swift 在 iOS 上实现了类似的效果,用户可以通过触控或者是重力加速度计来控制视差图片的效果。
  2. VirtualGameController :虽然在 iOS 这样的触摸系统上更适合用点触和滑动来进行操作,但是也有不少游戏 (特别是 FPS 类) 选择使用虚拟手柄的方式来进行交互。自己实现一个虚拟手柄是有一定难度的,这个框架实现了一个可以定制的虚拟手柄。另外,除了单纯的 iOS 以外,框架还支持和 watchOS 以及 tvOS 的互联,功能十分强大。
  3. hound-swift Hound 是一项帮助审查代码格式的服务,在 SwiftLint 的基础上,Hound 也增加了对 Swift 的支持。虽然在官方网页上还没有正式更新,但是开发者已经可以在 Swift 项目中添加 Hound 来进行审查了。如果你想在你的项目中加入的话,可以参照这里的文档进行配置。

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-11-16 18:003480
用户头像

发布了 59 篇内容, 共 24.9 次阅读, 收获喜欢 4 次。

关注

评论

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

面试官:什么是自旋锁?自旋的好处和后果是什么呢?

风铃架构日知录

Java 程序员 后端 自旋锁 循环

Spring+Vue工程部署在Linux

Geek_7ubdnf

Java spring Linux Vue

如何使用 Node.js Stream API 减少服务器端内存消耗

华为云开发者联盟

后端 开发 华为云 内存消耗 企业号 1 月 PK 榜

软件测试/测试开发 | 接口测试价值与体系

测试人

软件测试 自动化测试 接口测试 测试开发

阿里云化身“智能云管”,助力中国联通首次实现大规模平台自主运维

云布道师

阿里云

现代数据平台要实现自助用数,要解决的三个问题

华为云开发者联盟

大数据 后端 华为云 企业号 1 月 PK 榜

SpringBoot基础知识

Geek_7ubdnf

Java springboot

Java中restTemplate的使用

Geek_7ubdnf

Java

Linux安装Vue环境

Geek_7ubdnf

Linux Vue

卷扩容业务失败了,在线等…

华为云开发者联盟

开发 华为云 企业号 1 月 PK 榜 卷扩容 磁盘扩容

来自开发者的点赞,龙蜥社区荣登“2022 中国技术品牌影响力榜单”

OpenAnolis小助手

开源 龙蜥社区 思否 榜单 技术先锋

【UE虚幻引擎】干货!UE修改分辨率的3种方法

3DCAT实时渲染

游戏开发 虚幻引擎 ue 游戏开发引擎

聊聊 SpringMVC 是如何工作的?

风铃架构日知录

程序员 springmvc IT springboot

实测 | Apipost和Apifox哪个更好用?

不想敲代码

接口调试 接口管理工具 API接口工具

Tapdata Cloud 场景通关系列:集成阿里云计算巢,实现一键云上部署真正开箱即用

tapdata

软件测试/测试开发 | 代码覆盖率集成

测试人

软件测试 自动化测试 测试开发 代码覆盖率

Mybatis自动生成增删改查代码

Geek_7ubdnf

Java mybatis

华为云云筑·开发者年度盛典精彩回顾

华为云开发者联盟

云计算 开发者 华为云 数字人 企业号 1 月 PK 榜

openEuler资源利用率提升之道 05:虚机混部介绍与功耗管理技术

openEuler

数据库 Linux 操作系统 openEuler OpenStack

【Unity干货教程】如何实现Unity和Android原生互相调用?

3DCAT实时渲染

Unity 实时云渲染 Unity3D

SQL常用语句

Geek_7ubdnf

sql

GoLang的安装和使用

Geek_7ubdnf

golang

从状态机的角度async和await的实现原理

C++后台开发

多线程 linux开发 Linux服务器开发 状态机 C++开发

内部分享讲解DevOps后,我再组织成文

MavenTalker

DevOps 研发管理 敏捷实践

RTE 领域的发展,为视频编解码标准带来哪些新变化?丨Dev for Dev 专栏

声网

定时任务cron

Geek_7ubdnf

Java

pip安装更换镜像

Geek_7ubdnf

Linux

Apollo本地快速部署

Geek_7ubdnf

Java Apollo

为什么建议SQL初学者尽量选择Web版SQL工具?

雨果

sql 数据库管理工具 SQL开发

选择LED显示屏电源的7个指南

Dylan

电源电路 LED显示屏 led显示屏厂家

本地安装并创建MySQL数据库

Geek_7ubdnf

MySQL 数据库

iOS开发周报:Apple 改进 App Store 搜索算法,下一代 Apple Watch 消息_移动_王巍_InfoQ精选文章