斯威夫特岛2018

Swift Island的第一版于2018年7月4日至5日在荷兰的Texel举行。 Marino Software非常高兴能送我回去参加这次会议。

“ Swift Island是一次全面的实验性会议,在Apple的WWDC 2018之后一个月举行。” — swiftisland.nl/#about

为了克服WWDC之后的局面,尼尔斯和西德尼在WWDC举行一个月后召开了一次会议,讨论那里宣布的所有新事物。 设置非常简单。 八名导师在两天内讨论了八个主题。 您每天要做三个工作坊,所以您不会错过太多。

我真的很喜欢这种设置,因为在大多数会议(包括WWDC)上,您都错过了很多演讲。 研讨会不仅是讨论新事物的导师,我们还与导师一起积极编程。 因此,它非常实用。 这种方法非常适合我,当您一起工作时,您会学到更多东西,并就所卡住的东西提出问题。

如前所述,有八个工作坊可供选择。 全部由经验丰富的导师提供。

  • Siri捷径,作者Daniel Steinberg
  • Meghan Kane的机器学习
  • 其余最好的-Roy Marmelstein撰写的其他新iOS12框架
  • Kate Castellano和Manu Rink的ARKit 2(入门级和高级)
  • 乐器+建立自己的乐器Donny Wals
  • Marijn Schilling的游乐场
  • 斯威夫特的秘密动态生活,大卫·哈特(David Hart)

我选择去Siri快捷方式,机器学习,动态Swift,ARKit 2(两者)和乐器。 我不会详细介绍所有研讨会,但是我将介绍主要的收获。

如果正确使用,Siri快捷方式对于应用程序将是非常方便的功能。 您可以使Siri可以使用快捷方式来执行用户在应用程序中执行的操作。 银行应用程序中的快速平衡,编写新推文或检查一个巴士站的实时信息(提示都柏林巴士)。 随着时间的推移,Siri将在何时何地使用这些快捷方式进行学习,以便仅在您需要它们时才可用。

请确保仅将它们用于在您的应用中经常发生的操作,因为否则您将充斥Siri建议页面并造成不良的用户体验。

在这些工作坊中,我了解了Swift 4.2中的一项强大新功能@dynamicMemberLookup。 根据Swift-evolution提案:

 枚举JSON { 
大小写StringValue(String)
大小写DictionaryValue(Dictionary )
}扩展JSON {
var stringValue:字符串? {
如果case .StringValue(let str)= self {
返回str
}
返回零
}
下标(键:字符串)-> JSON? {
如果case .DictionaryValue(let dict)= self {
返回dict [key]
}
返回零
}
}让firstName = json [“ name”]?[“ first”] ?. stringValue //起作用

但是,如果通过以下方式添加@dynamicMemberLookup,则可以完全实现JavaScript的安全性,而获得接近JavaScript的表达能力。

  @dynamicMemberLookup 
枚举JSON {
...
下标(dynamicMember成员:字符串)-> JSON? {
如果case .DictionaryValue(let dict)= self {
返回字典[成员]
}
返回零
}
}让firstName = json.name?.first?.stringValue //起作用

这个巧妙的小技巧为我们提供了清晰易读的代码。

对于如何使用ML一无所知,我有点犹豫不决地参加了这次研讨会,但是被保证会在我所追求的所有层次上都适用。 令人遗憾的是,由于WiFi连接不良,我无法在自己的MacBook上跟进,但加入邻居对我来说是成功的窍门。 我们讨论了ML的一些基础知识以及如何使用Apple的Turi Create。

然后,我们学习了如何创建图像分类器(是梵高还是达利的画?)。 我们还学习了如何使用ML将任何照片“ Van Gogh-ify”化,并获得了相当不错的效果。

为了充分理解ML,我仍然需要做大量的练习,但是这次研讨会为我提供了良好的基础,并且我有一定的信心可以做到。

在Swift Island之前,我从未与ARKit合作过。 我曾想过尝试几次,但从未想到我有足够的时间正确地尝试一下。 我几乎不知道,使用一些简单的AR功能实际上很容易上手。

该研讨会分为两个。 初学者和高级讲习班。 因此,第一天我从初学者讲习班开始,第二天继续参加高级讲习班。

ARKit 2的新功能是图像跟踪。 在您能够检测图像并将某些东西放在顶部之前,但无法跟踪运动图像。 那些日子已经过去了。 手工溜冰场就是一个很好的例子。

将我在这里学到的东西与在机器学习研讨会上学到的东西结合在一起,为ARKit竞赛创建了一个小应用程序。 您拍摄照片后,它会被梵高(Van Gogh)修饰并放在相框中的真实世界(AR)中。

我赢了!

斯威夫特岛是我去过的最好的会议之一。 由于实践方法,我学到了很多东西,并且在做中学到了很多乐趣。 我遇到了一些很棒的人,并且吃了一些很棒的新鲜虾。 明年再去吗? 是的,请!