文章
  • 文章
科技

为什么Apple的Swift会改变游戏规则

2014年6月11日下午6:50发布
更新时间:2014年6月11日下午7:27

菲律宾马尼拉 - 最近结束的Apple全球开发者大会(WWDC)上发布的最大声明既不是一个新的小工具,也不是一个创新的新操作系统(OS),但只有开发人员才会立即理解,用户最终只能从中获益:一种新的编程语言叫做迅速。

如果WWDC主要开发者观众的强烈掌声有任何迹象,那么Apple宣布这种新的编程语言是巨大的。 作为iOS应用程序的开发者,最初的反应是立即为即将发生的破坏做好准备。

今天的方式

尽管在构建应用程序时涉及陡峭的技术技能和成本障碍,但iOS App Store目前仍有120万个应用程序可供使用。

用于构建大多数应用程序的主要编程语言是Objective-C,它基于C编程语言。 Objective-C主要由那些在大学学习计算机科学的人学习,并不像Python或Ruby这样的脚本语言那么容易学习,而这些脚本语言只能由任何人自学。

构建iOS应用程序的替代方法是使用Web语言HTML5,CSS和Javascript,其副作用是可以轻松移植应用程序以在其他移动平台上运行。

虽然已经有很多尝试使用这些网络技术构建引人注目的应用程序,但已经尝试过这种方法的Facebook和LinkedIn等巨头意识到用户体验并不是那么好。 看起来,工作和感觉良好的应用程序往往是原生的(或至少与战略性使用Web视图混合)。 因此对于iOS来说,构建本机应用程序的最佳方法是使用更复杂的Objective-C进行编码。

仍有思想流派的支持者认为,本土化仍然不是可行的方法。 如果您认为纯HTML5和Javascript最终将胜过原生移动应用开发技术,并且您更重视跨平台开发到Android和其他平台,那么您应该跳过本文的其余部分。

输入Swift

Swift不仅仅是一种更简单的编程语言来补充Objective-C。 相反,它似乎被定位为Objective-C的完全替代品。 Swift感觉像Python和Ruby这样的脚本语言,具有现代编程语言的特性; 开发人员将更熟悉闭包,泛型和命名空间等术语,与Objective-C不同,Swift具有所有这些,但我不会故意讨论它们。 它比Objective-C更容易学习,并且需要更少的字符来输入和创建更少的文件。 甚至我15岁的儿子现在也可以自己学习和玩耍,并且正在享受它。

Swift使用起来也更安全。 即使您不必指定每个变量的数据类型,也会减少涉及使用错误数据类型的错误,因为Swift的编译器已经根据您的代码知道您正在使用的变量类型(这称为类型推断)。 此外,由于内存管理不善,您的应用程序将免受意外崩溃的影响,因为Swift将为您执行此繁琐的任务。 调试由内存处理引起的崩溃是非常困难的; 降低开发人员对内存管理的责任将对质量和生产力产生巨大影响。

Swift提供了构建本机iOS应用程序的脚本替代方案; 脚本只能通过基于Web的框架(如Phonegap和Appcelerator的Titanium)获得,并取得了不同的成功。 与基于网络的同行不同,Swift显然不是跨平台的。

最后,在实现代码之前,有一个交互式游乐场可以测试您的代码,因此您可以快速创建原型并在提交应用程序的更大代码库之前先测试代码段。 交互式游乐场允许您键入几行代码并实时查看输出; 无需等待应用程序的编译和部署,只是为了测试一小部分代码。

在WWDC主题演讲中,Apple展示了Swift与Objective-C和Python相比的初始性能数据,Swift轻松击败了两者。 从所有迹象来看,脚本语言较慢的旧概念在这种情况下并不成立,所以除了它是新的之外,使用Swift没有任何问题。

这是什么意思呢?

Swift的输入会以不同的方式影响你:

如果您只是寻找优秀应用程序的iPhone或iPad用户,您可以期待更多选择来充斥App Store。 Swift降低了技术技能和成本障碍,因此更多的应用程序。

如果您现在想要制作优秀的应用程序,那就是时候了。 考虑对Objective C有深刻理解的开发人员可能更难找到或可能花费更多的专家。 更好的是,自己学习Swift并完全节省开发成本。

如果您已经在App Store中拥有应用程序 ,那么您可以期待更多应用程序与您的应用程序竞争以获得关注。 如果您的应用已经做得很好,请不要惊讶地发现新应用试图复制您已有的应用。 现在是时候重新审视您的数字营销策略,以确保您的应用得到关注。 如果Apple决定在未来淡化Objective-C,还可以考虑通过逐步重写部分代码来降低维护和更新成本,并保护自己免于过时,从而考虑使用Swift。

如果您已经开发了iOS应用程序,那么在过去几年中,您决定开发Objective-C的专业知识可能对您有所帮助。 您对Objective-C的大量投资仍将是一项资产(Swift和Objective-C代码可以协同工作),但它将不再是您的主要竞争优势。 Swift一下子,几乎所有拥有合适工具的人都可以成为iOS开发人员。 新进入者可以是竞争对手,也可以是低成本的分包商,具体取决于您对情况的看法。 您需要检查您的价值主张,并找到区分您的其他区域。

如果设计是您的主要优势 ,那么请注重优秀的用户体验,特别是如果您已经在这方面拥有多年的经验和成功。 在可用性设计和测试期间,使用Swift可以利用快速原型设计实现更短的反馈循环。

如果您的专业知识是技术 ,则专注于开发出前端到后端的集成技术和经验。 加强您在安全,性能和稳定性等方面的地位。 了解数据库管理和访问各种基于云的系统也将有助于您在很大程度上实现差异化。

Apple已经开始推动Swift作为构建引人注目的iOS和Mac OS应用程序的编程语言。 iOS 8本身具有新的API(包括用于家庭自动化的HomeKit和用于与健康相关的服务的HealthKit)。 这些都是开放区域,Swift只是为每个人重置了比赛场地。 - Rappler.com