捍卫在Android上采用Swift

苹果做了一件大胆的事情,并将其平台编程语言从Objective-C切换到了全新而又不同的东西-Swift。

Swift是经过深思熟虑且易于学习的下一代编程语言。 它具有很大的灵活性,并结合了许多其他语言试图追溯地添加到其系统中的现代编程概念。

Java很老

Java已经存在了20年。 一直以来,它并没有完全跟上发展。 这是一种易于学习的语言,但在许多现代环境(包括Android)中比较繁琐。 现在该继续前进了。

对苹果的恐惧

Swift是由Apple创建和控制的。 我们仍然记得,iOS和Android之间的平台大战引发了网络上无数的狂热分子大战。

我认为我们可以摆脱对苹果的恐惧。 平台之战结束,两个平台均获胜。 iOS或Android不会很快到任何地方。

数字清晰

忽略在iOS和Android之间创建共享语言的所有潜在技术问题将是一笔巨大的财务胜利。 如今,近100%的移动项目是使用Android和iOS编写的。 大约50%的代码是业务逻辑,API调用等非UI,非框架特定的代码。 所有这些代码都可以在Android和iOS项目之间共享。 可以说,某些部分需要一些创造性思维,但是大多数部分的代码共享将非常简单。 实际上,MS围绕这个想法创建了一个业务Xamarin。 尽管Xamarin还有其他问题,但在iOS和Android之间共享业务逻辑代码当然是明智的。

能够共享业务逻辑将在测试和编码方面为所有移动项目节省大量资金。 节省时间将直接反映在移动项目的交付成本中,从而使分配的预算更有可能被更好地花费在创建质量更高的软件以及更多应用上。 这两个生态系统的数量和质量都将大大提高。

“负载平衡”移动开发

共享的业务逻辑还将允许移动团队工作时间的“负载平衡”。 通常情况下,其中一个平台领先于另一个平台。 在共享业务逻辑模块的情况下,总是可以将更快的团队分配给业务逻辑职责。

选择以更灵活的方式分配开发人员的选择将在许多项目中节省大量资金。

共享库

现在,我不主张共享UI层或特定于平台的库并执行某种跨平台策略。 那些失败了。

但是,共享编程语言将使庞大的共享库项目生态系统成为可能。 非UI代码库的许多部分可以做成跨平台的。

显而易见的好处是,团队将非常简单地了解彼此的体系结构和功能。

了解其他平台

共享语言将不允许Android平台的开发人员跳入iOS项目。 在平台上工作不仅需要了解编程语言,还需要做更多的工作。 但是,共享一种语言将使团队可以在一个全新的水平上讨论细节。 分享知识总是对企业有利!

没有跨平台框架的滞后或废话

Xamarin作为平台确实不能很好运行的原因之一是第三方系统的持续滞后。 一切新内容都必须始终通过第3方框架进行,并且所有功能都必须由跨平台工具维护者添加。 这不是一个可持续的模型,Xamarin并不真正适合大多数项目。

在共享编程语言的情况下,平台功能仍将是第一方开发和“ Xamarin问题”。

从技术上讲,这并不容易

好。 真的不是那么容易。 要使Swift成为Android的第一层语言,这将是一个巨大的项目。 我认为从长远来看,这样做是值得的。 该行业将节省大量资金。 如果有人能做到……那就是Google。 他们拥有使魔术发生的资源和技能。

值得注意的是,Swift for Android方面已经在发展。 实际上,Apple将Android的Swift项目合并到了Github的官方Swift存储库中。 尽管该项目不是由Google运行的,并且与一些研究不佳的新闻报道不同,但这绝不表示Google甚至正在考虑使用该选项。

https://github.com/SwiftAndroid

我认为Swift已经成为一门伟大的语言。 苹果公司正在用这种语言做很多事情。 它的开放源代码许可还允许任何人使用它,而不必担心收到苹果律师的来信。

在我看来,如果不选择Swift作为Android的下一种编程语言,那将是一个错失的机会和错误。 我并不是说这很容易,也没有解决任何问题,但从长远来看,对于任何致力于改善iOS和Android生态系统的公司而言,这将为他们节省大量资金。