写点什么

UXKit:提供类 UIKit API 的新框架惊现 OS X 10.10.3

  • 2015-03-15
  • 本文字数:1009 字

    阅读完需:约 3 分钟

近来,作为 OS X 10.10.3 测试版中所发现的新框架,UXKit 引发了热议。有趣之处在于,其API 与iOS 中UIKit 的API 十分相似,这让很多开发者相信两大平台会因UXKit 而彼此更加相近。

波兰开发者 Michał Kałużny 在 GitHub 上托管了一个仓。该仓库中含有一个从OS X 10.10.3 Photos.app 中所提取的UXKit.framework 的微小改动版本:该版本中既有展示了与UIKit 相似度的头文件,又有采用了UXTableView 和UXCollectionViewController 的示例应用。

UIKit AppKit 两大框架,虽然分别隶属于 iOS 和 OS X SDK,但针对的是同一通用需求:为开发者提供高层 API,从而能够方便其创建高级用户界面。不幸的是,最终发布的 API 接口在诸如事件处理、视图控制器缺省行为、基于 NSCell 的控件,和很多其他基础领域方面很是不同

Apple 宣称,这些不同是“OS X 应用和 iOS 用户界面在应用结构及实现方面差异化”的直接体现。更确切地说,这种差异可以细分为三个因素:

  • 移动设备的局限性,诸如更小的显示屏、单视窗 UI 模型、CPU 性能和电池等方面的考虑。
  • 触屏手势作为 iOS 的主要交互方式,多少会影响到 UI 对象的使用。
  • iOS 中,用户是不能直接访问文件系统的。

虽说如此,iOS 和 OS X 开发者依然表现出需要某种面向双平台的统一API,很多第三方库曾尝试解决或试图缓和这一问题,比如 IconFactory’s Chameleon Twitter TwUI 以及 UMEKit 。不幸的是,三个项目的积极开发已在数年前终止。

综上,对 UXKit 的发现激起了很多人的兴趣,但并非所有人都相信苹果会对外发布 UXKit。即使对外发布,这对改善苹果 iOS 和 OS X 开发来说也是不够的。作为像 OmniFocus 和 Vesper 等很多苹果平台知名应用的开发者 Brent Simmons 对“在苹果公司之外推行该框架,从而将其作为 AppKit 的替代品是否可行”提出了质疑。致力于SoundCloud 和Artsy 等iPhone 应用的iOS 自由开发者Robb Böhnke 进一步表示,且不说UXKit“作为框架会不会公开,即便真的公开,也未必够用。” Böhnke 声明其负面评价主要针对于UIKit 重绘代码的单线程特性,同时也暗指了新的可选方式,比如近期发布的React Native

参考英文原文: New UXKit Framework Spotted in OS X 10.10.3 Provides UIKit-like API


感谢赵震一对本文的审校。

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

2015-03-15 06:422660

评论

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

复赛总榜TOP1方案Champion Chasing Boy分享

阿里云天池

桌面运维工具之打印机驱动安装

京东科技开发者

聊一聊 C# 弱引用 底层是怎么玩的

快乐非自愿限量之名

C# 算法

云监控治理检测:云监控的自助化最佳实践

阿里巴巴云原生

阿里云 云原生 云监控

万界星空科技MES:磷酸铁锂正极新材料生产管理系统

万界星空科技

mes 万界星空科技 万界星空科技mes 新材料mes 新材料行业

软件测试学习笔记丨Docker 原理分析与使用场景

测试人

Docker 软件测试

安全合规、资源专属!即构科技联合亚马逊云科技推出实时互动解决方案

ZEGO即构

AWS 亚马逊云科技 实时互动 安全出海

聚焦数据分析:看低代码平台应用下的数字化校园

EquatorCoco

数据分析 低代码 数字化

Apache IoTDB 毕业四周年快乐!龙年 T 恤别错过

Apache IoTDB

Vidu 全球首发「主体参照」新功能,一键同步角色特征;GPT-4o 实时音频项目负责人离职创业丨 RTE 开发者日报

声网

EMR Spark-SQL性能极致优化揭秘 Native Codegen Framework

阿里云天池

MobPush查看推送数据

MobTech袤博科技

开发者 生产者

面试官:说说停止线程池的执行流程?

王磊

深度长文解析SpringWebFlux响应式框架15个核心组件源码

快乐非自愿限量之名

spring Web

ShareSDK第三方平台使用指南:Pinterest

MobTech袤博科技

开发者 产品动态

黑神话,XSKY 星飞全闪单卷性能突破310万

XSKY星辰天合

百度薛苏:已有百万量级智能体分发在新搜索文小言

Geek_2d6073

万泰生物用飞书:打造信息交流、业务管理、安全协同三大平台

ToB行业头条

避免数据复制延迟,解读 GaussDB (for MySQL) 主备 0 延迟

华为云开发者联盟

数据库

看过来!2024 云栖大会操作系统技术 Workshop 怎么玩?

OpenAnolis小助手

AI 操作系统 云栖大会 C++

HelixFold 3 全球首个完整复现 AlphaFold 3,百度智能云 CHPC 为人类生命探索提供算力平台支撑

Baidu AICLOUD

生命科学 AlphaFold

SD-WAN与IPSec:区别、应用与选择

Ogcloud

SD-WAN IPsec SD-WAN组网 SD-WAN服务商 SD-WAN国际专线

MobPush个性化通知

MobTech袤博科技

开发者 生产动态

第一,才够安全!

京东科技开发者

Java Executors类的9种创建线程池的方法及应用场景分析

不在线第一只蜗牛

Java

SD-WAN和MPLS专线有什么区别?怎么选择?

Ogcloud

SD-WAN MPLS 企业组网 SD-WAN组网 SDWAN

评估您的数据是否可用于人工智能的三个考虑因素

码语者

人工智能 AI

吃透 JVM 诊断方法与工具使用

EquatorCoco

Python JVM

音频平台开发创新:短视频融合如何提升用户黏性?

软件开发-梦幻运营部

流程自动化变革:看低代码开发如何赋能企业创新转型

不在线第一只蜗牛

运维 低代码 流程自动化

新能源领军企业的选择:XSKY 易数管理平台实现质检效率飞跃

XSKY星辰天合

UXKit:提供类UIKit API的新框架惊现OS X 10.10.3_Android/iOS_Sergio De Simone_InfoQ精选文章