前瞻性思维 苹果通过iOS 8,新的编程模型展望未来

苹果通过iOS 8,新的编程模型展望未来

视频: Apple iPhone mini Unboxing + Gameplay (十月 2024)

视频: Apple iPhone mini Unboxing + Gameplay (十月 2024)
Anonim

苹果公司一年一度的全球开发者大会(WWDC)是该公司推出其Mac OS X和iOS操作系统的新版本的地方,今年的版本也不例外。 但是对我来说突出的是,今年的主题演讲更多地集中在具有大量新API和共享服务,用于创建游戏的模型,甚至是新编程语言的开发人员上。 综上所述,这恰好是对苹果开发者生态系统的重新思考,因为该公司试图为未来定位。 这种方法的一些结果应该很快就会出现在应用程序中,但是随着开发人员对新工具的逐渐适应,可能会在几年内看到真正的影响。

这些工具大多数是iOS 8的一部分,苹果首席执行官蒂姆·库克(Tim Cook)表示,它们将使开发人员“能够创建他们从未梦想过的应用程序”。 苹果公司软件工程高级副总裁Craig Federighi表示,总共有4, 000个新API。

库克说,App Store现在拥有120万个应用程序,总共下载了超过750亿个应用程序。 他说,商店有一些新变化,使客户更容易浏览应用程序,并使开发人员更容易推广应用程序。 其中包括“应用程序捆绑包” –开发人员可以以折扣价提供多个应用程序。 短片预览应用程序; 以及一项名为“测试飞行”的新Beta测试服务。 与iOS 8一样,它将在秋天推出。 Cook表示,这些新功能使iOS 8成为“自App Store推出以来最大的发行版”。

在某些方面,iOS 8中最大的哲学变化似乎是朝着更高的可扩展性迈进。 当前,在iOS中,所有应用程序都在自己的“沙盒”中运行-从而实现安全性和稳定性。 但是现在,应用程序可以扩展系统并为其他应用程序提供服务,并可以在这些沙箱中运行。 例如,一个应用程序现在可以在“照片”应用程序中提供照片滤镜。

费德里希(Federighi)演示了如何创建可在Safari浏览器中使用的“共享表”,以及Bing Translate现在如何作为服务在浏览器中运行,从而将页面从一种语言切换为另一种语言。 他还显示了“照片”应用程序中的第三方照片过滤器,以及通知中心中ESPN SportsCenter和eBay的小部件。

Federighi还表示,该系统现在允许使用系统范围的第三方键盘,并以Swype为例。 其他扩展首次公开了相机API,并允许第三方应用程序使用Touch ID,因此用户可以将其用于应用内购买之类的事情。 (以前,这仅适用于iTunes。这是一个有趣的付款方式,尽管令我惊讶的是在主题演讲中没有听到有关付款的更多信息。)

总体而言,这似乎是一个巨大的变化,使iOS在许多方面都更加灵活。 它仍然不像OS X或其他桌面环境那样灵活,但是肯定更接近。 (例如,您仍然不能同时在屏幕上显示多个应用程序。)总体而言,它将iOS设置为一个更加丰富的环境。

健康,家庭和云连接

可能影响最快的工具是使开发人员扩展其现有应用程序的新API。

其中包括许多新服务,这些服务将以前在单个应用程序中可用的信息汇总在一起。 最重要的功能之一是HealthKit,它是一个可以在其中添加应用程序以增强您的健康状况的综合档案的地方。 如今,有许多用于健身和医疗用途的设备和应用程序,但它们都生活在孤岛中。 使用HealthKit,其想法是在每个应用程序的基础上,您可以指定希望每个应用程序能够访问的配置文件的哪些部分。

费德里希(Federighi)解释说,苹果正在与诸如梅奥诊所(Mayo Clinic)之类的提供商合作,该公司允许医院通过查看来自多个应用程序的数据,如果发现有问题,可以直接致电用户。

另一个名为HomeKit的新工具旨在为控制您家中事物的应用程序做类似的事情,例如灯光,锁和恒温器。 这涉及一个通用的网络协议,该协议可以控制Apple称为Scenes的单个设备,甚至多个设备。 它可以与Siri集成在一起,因此,您在办公室休息一天后回来时,可以要求Siri为您的房屋做准备。

由于当今许多(如果不是大多数)应用程序都具有云组件,因此苹果推出了CloudKit,这是一项用于托管云应用程序,处理存储,身份验证和通知之类的新服务。

Federighi表示,这实际上是“不受限制的”,因为容量将随用户数量而扩展。 我在这里没有听到太多详细信息,因此目前尚不清楚它将如何与其他云托管提供商竞争开发人员。 但这听起来确实像许多开发人员想要的。

游戏获得更好的3D图形

其他两个领域在创建基础应用程序方面做得更多。 我对创造游戏的重视程度感到有些惊讶。

其中最重要的也许是一组称为“ Metal”的API,旨在让游戏设计人员更直接地向Apple的A7处理器(可能还包括未来的Apple处理器)进行写入,而不是使用更行业标准的OpenGL ES。 。

Federighi说,Metal大大减少了指令集的开销,并且可以使绘图速度提高多达10倍,并且可以高效执行多任务处理。 从事此工作的游戏引擎开发人员包括Unity,Crytek,Electronic Arts和Epic Games。

Epic Games创始人蒂姆·斯威尼(Tim Sweeney)(上图)展示了iPad演示游戏《禅花园》,该游戏使用了更逼真的材质,并且动画比您在手机游戏中通常看到的要多。 他说这将在iOS 8上免费提供。

最近,我们听到了许多绕过OpenGL或Direct X较重API的方法,而Apple的加入应该允许更快,图形更丰富的游戏。 我们仍然不太可能很快看到移动设备获得中高端PC游戏的图形,但是这是向前迈出的一大步。

对于更休闲的游戏,苹果提供了SpriteKit,这是去年推出的2D游戏引擎,现在通过提供3D场景渲染的SceneKit对其进行补充。

斯威夫特的到来

最后,也许是最令人惊讶的是,苹果公司推出了Swift,这是一种新的编程语言,旨在取代通常用于生产Mac和iOS应用程序的Objective-C环境。

费德里希说,Objective-C“为我们服务了20年”,但是是时候创建一种新语言了,他将其描述为“没有C的Objective-C”。 对于描述,这似乎是一种更快,更现代的语言,但是它使用相同的内存管理模型和相同的运行时,因此Swift代码可以与Objective-C和C在同一应用程序中一起运行。

开发工具主管Chris Lattner(上)展示了新环境,其中包括演示如何在其中键入指令时运行代码的演示。 这是一个好看的演示,尽管真正的裁判必须是苹果开发人员,之后才有更多机会真正使用它。

我确实知道开发人员在抱怨Objective-C不如某些替代方案那么现代,尽管总的来说,我没有听到他们要求一种新的语言。 尽管如此,苹果仍需要一些东西来与Google和Microsoft工具套件竞争,这些工具在过去几年中已得到了显着改进,目的是使创建移动和云应用程序变得更加容易。

总体而言,这是一个在全球开发者大会上真正强调“开发者”的展览,但情况并非总是如此。 会议的标语是“写代码。改变世界”。 世界是否会改变是一个悬而未决的问题,但是引入的工具无疑标志着Apple应用程序编写方式的改变。

苹果通过iOS 8,新的编程模型展望未来