新的iOS应用程序? Objective-C还是Swift?

就像面对空白画布的艺术家一样,开发新的移动应用程序的开发人员必须首先选择一种媒介来构建其数字创作。 与本地iOS应用程序开发有关,交易的主要工具是Objective-C和Swift编程语言。

如果我们的计划不够干净,我们将不得不考虑现有技能集的价值,因为它们与维护现有代码库有关。 但是,出于本文的目的,我们将仅关注新建项目。

在2014年6月之前,我们的决定很简单,因为我们可以用Objective-C程序员的身份广泛地绘画所有iOS开发人员。 Objective-C起源于1980年代初期-基于1970年代初期的C编程语言。 它与C的关系的主要好处是C ++库可以与Objective-C代码一起使用。 超过30年的发展已融入到Objective-C中,这巩固了它作为一种既定且稳定的编程语言的地位。

自2008年7月应用程序商店问世以来,已经发布了超过1,000,000个Objective-C应用程序。 在Stack Overflow上标记的超过25万个问题和Amazon.com上的数百本书中,可以明显看出Objective-C开发人员社区的经验。

iOS开发者社区在2014年6月分叉,当时苹果正式宣布Swift作为Objective-C的替代品。 自发布以来的800天内,Swift已大大超越了Objective-C,成为iOS应用程序开发人员的首选编程语言。

衡量Swift进度的一种方法是通过TIOBE编程社区索引。 这是每月的领头羊,旨在通过客观标准来衡量编程语言的受欢迎程度。

Swift与Objective-C的关系的另一项检验是通过Google趋势。 这项措施会在定义的时间段内捕获感兴趣的字词的网络搜索流量。

通过这些指标建立的模式是,我们已经达到了一个转折点,因为Swift与开发人员的思想份额有关,因此它已经超过了Objective-C。

转移到Swift的原因是什么? 作为开发人员和架构师,与我最共鸣的是Swift提供的超过Objective-C的简便性。 正如1977年苹果计算机公司的早期口号一样,

“简单是最终的复杂程度。”

Swift在以下方面与Objective-C相关,产生了简化的好处:

  • 由于语法更像脚本,因此代码更具可读性。 这也有助于减少初始学习曲线。
  • 与Objective-C的冗长性相比,您编写的代码更少。 您甚至可以将表情符号字符用作变量名…
  • 通过iPad上的Swift Playground应用程序可以证明Swift是交互式的。
  • Swift编程语言是开源的。 这使语言同行评审,透明,并使社区更加参与。 您可以通过在Github上为Swift做出直接而直接的影响。

展望未来,很明显,书的作者和视频教程已经迁移到Swift。 就数据结构和算法的性能而言,与Objective-C相比,Swift几乎可以与之媲美或更好。 Swift还为创建新应用程序提供了机会,这些应用程序可以重构旧的Objective-C项目。

用苹果自己的话来说,

“ …我们现在可以为Apple软件开发的未来引入一种新的语言…所有这些使Swift成为开发人员和Apple未来的可靠投资。

Swift是编写iOS,macOS,watchOS和tvOS应用程序的绝妙方法,并且将随着新功能的发展而不断发展。 我们对Swift的目标是雄心勃勃的。 我们迫不及待想看到您使用它创建的内容。”

如果您要启动新的本机iOS应用程序,则应该客观地将Swift视为制作下一个杰作的主要工具。

参考文献

Swift –苹果开发人员
Swift是一种功能强大且直观的编程语言,适用于iOS,OS X,tvOS和watchOS。 编写Swift代码是…… developer.apple.com Objective-C –维基百科,免费的百科全书
GNU项目基于OpenStep…开始了其名为Cocoa的自由软件实现的工作,该实现名为 GNUstep。en.wikipedia.org TIOBE索引| TIOBE –软件质量公司
TIOBE编程社区索引是编程语言受欢迎程度的指标。 www.tiobe.com