写点什么

iOS 开发周报:微软开源 WinObjC,用 Objective-C 开发 Windows 应用

  • 2015-08-10
  • 本文字数:1672 字

    阅读完需:约 5 分钟

新闻

  1. 微软开源 WinObjC :本周微软开源了他们 Windows Bridges 计划中的重要一环 - Windows Bridges iOS - 中的关键内容。iOS 开发者们现在可以使用熟悉的 Objective-C 语言和微软全盘重新实现的 Cocoa 框架来在 Windows 平台上开发 app。你甚至可以直接把原来的 Xcode 项目导入到 Visual Studio 中经过调整运行,来构建一个 Windows app。这是继 Windows Mobile 中内嵌 Android 后微软为了拯救自家移动平台的又一努力,但是开发者们会不会有所转变还有待观察。
  2. Apple 官网改版,商店不再使用独立二级域名:最近 Apple 将原来的 store.apple.com 的停用,而将商店和购买的选项合并到了产品介绍的页面上。之前的设计其实被诟病已久,经常会有客户无法找到购买按钮。而现在用户能在同一个站点上了解产品特性并很方便地进行购买了,在设计上可以说是巨大的进步。

教程

  1. WWDC15 Session 笔记 - 30 分钟开发一个简单的 watchOS 2 app :Apple Watch 和 watchOS 第一代产品只允许用户在 iPhone 设备上进行计算,然后将结果传输到手表上进行显示。在这个框架下,手表充当的功能在很大程度上只是手机的另一块小一些的显示器。而在 watchOS 2 中,Apple 开放了在手表端直接进行计算的能力,一些之前无法完成的 app 现在也可以进行构建了。这篇文章通过一个很简单的天气 app 的例子,讲解了 watchOS 2 中新引入的一些特性 (如 complications 和 WatchConnectivity) 的使用方法。
  2. Using Cocoapods with watchOS 2 :watchOS 2 的依赖库现在也随着 watch app 一起转移到了手表上,这样一来,之前直接使用 CocoaPods 为 watch extension 设置依赖的方法也失效了。这篇文章说明了如何在 podspec 中添加 watchOS 2 的支持,以及在使用时应该如何更改 Podfile 以支持 watchOS 2。
  3. Advanced NSOperations :这篇文章从 NSOperationNSOperationQueue 的基础入手,阐述了基于 Operation 的思路来构建一个 app 的基本方法,思路非常新颖。这种架构方法的基本思想是将复杂的任务拆分成粒度更细的 Operation,然后再进行组装。当然,在实际操作中可能会遇到不少挑战和对最佳实践的探索,但是作为加深对 NSOperation 的理解的话,这篇文章是绝对值得一读的。
  4. How Not to Crash :作者是 Omni 系列软件的开发者之一。这个系列是作者今年开始的专题,列举和分析了一些在 iOS/OSX 开发中常见的由开发者引入的导致 app 崩溃的错误代码。其中每篇文章都结合了作者自己丰富的软件架构经验和感悟,不论对于新人还是已经富有经验的 iOS 开发者,逐条对照并反思自己在开发中的做法,能有效避免在今后引入这些潜在的问题。这个系列依然在继续,可以持续关注。

开源项目

  1. WinObjC :虽然这个项目不知道能不能改善 Windows Phone 的现状,但是它还是本周最值一提的开源项目。虽然这个项目还处于非常前期,虽然我们可能在之后一段时间里并不使用它进行 Windows app 的开发,但项目里的一些内容还是很值得玩味的。微软在这个项目中完整地重新实现了包括 UIKit 在内的一些 Cocoa 框架,目测应该是在对 Apple 的框架进行逆向后的改写。如果你想了解一下 Cocoa 内部的实现,也许闲暇的时候看看这个项目的源码会是很有意思的选择。
  2. spacetime :Facebook 开源的一个实验性质的库,它可以用来实时地对 layer 进行变形操作。你可以将这个库想象为在 CALayer 上添加了一些网格,通过操纵这些网格的形状和数量来让一个 layer 呈现不同的形状,比如圆柱形或者锥形的 view。这个框架使用了CAReplicatorLayer 以及 time hierarchy 来进行实现,在一般开发中这两者都是鲜为人知的,阅读看看是如何实现的会很有意思。

工具

  1. Pixel Winch :一款可以在截图上测量各个元素之间距离的 OSX app,开发者可以截取模拟器或者真机上的图片来确定 UI 元素的位置是否满足设计需求,设计师也可以用它很方便地来进行一些标注工作。

感谢郭蕾对本文的审校。

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

2015-08-10 08:254203
用户头像

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

关注

评论

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

C++中虚继承时的构造函数

芯动大师

华为云Astro低代码三侠「踢馆」 ,学员:也带带我!

YG科技

低代码是什么?看这篇就够了

高端章鱼哥

软件开发 低代码

ipp swap质押挖矿模式系统开发方案

V\TG【ch3nguang】

挖矿矿池系统开发案例

喜讯!极限科技再次中标中国移动云 Elasticsearch 自研版技术开发服务项目!

极限实验室

elasticsear 极限科技 中国移动云

如何选择可靠的海外住宅代理ip?稳定性测试必不可少

摘星星的猫

充满信心地发布您的代币:我们专业的 IDO 代币启动板开发服务

区块链软件开发推广运营

数字藏品开发 dapp开发 区块链开发 链游开发 NFT开发

ARTS 薪火重启之第四周

渣渣辉

Apache Doris 2.0.1 & 1.2.7 版本正式发布!

SelectDB

数据库 大数据 优化 apache 社区

DevOps |研发效能之环境、程序、配置、SQL变更管理

laofo

DevOps cicd 研发效能 持续交付 平台工程

CloudEon V1.2.0版本发布!

CloudEon开源

大数据

龙蜥携手平头哥完成算能 SG2042 平台支持,推动 RISC-V 持续向高性能应用演进

OpenAnolis小助手

芯片 risc-v 龙蜥社区 平头哥 2023 RISC-V 中国峰会

优雅编码!Java与MongoDB的创新数据库架构

树上有只程序猿

Java mongodb 优雅编码

接入 NVIDIA A100、吞吐量提高 10 倍!Milvus GPU 版本使用指南

Zilliz

nvidia 非结构化数据 Milvus Zilliz 向量数据库

产业,到底需要什么大模型?

脑极体

产业大模型

Apache IoTDB 确定参与 2023 OSCAR 开源产业大会开源集市!

Apache IoTDB

ARTS 打卡第 27 天

自由

ARTS 打卡计划

Text Workflow for mac(文本工作流程) 1.6.5中文激活版

mac

苹果mac Windows软件 Text Workflow

查询性能提升10倍!喜马拉雅广告倒排索引设计实践

喜马拉雅技术团队

lucene 性能优化 倒排索引 喜马拉雅

坚持自主创新 IoTDB,天谋科技 CTO 乔嘉林获优秀软件工程师

Apache IoTDB

iOS开发周报:微软开源WinObjC,用Objective-C开发Windows应用_移动_王巍_InfoQ精选文章