专栏首页程序猿Google将Swift编程语言纳入android平台

Google将Swift编程语言纳入android平台

自从去年年末备受瞩目的 Swift 开源后,消息不断,最近互联网巨头们-Google、Facebook、Uber 齐聚伦敦,共同就 Swift 相关问题展开了讨论。The Next Web 称,据可靠消息,Google 意欲在其 Android 平台下采纳应用开发编程语言 Swift为其首要开发语言,这可能和他们备受和 Oracle 的官司之争有关吧。但 Swift 的魅力亦是重要因素,Facebook 和 Uber 均表态,未来会将 Swift 作为主要的开发语言。

众所周知,Google 的 Android 平台的首要开发语言是 Java,而且整个框架都是基于 Java 实现的。这次 Google 称,纳入 Swift 并非是能够替代 Java,这可能和他们备受和 Oracle 的官司之争有关吧。Google 希望 Swift 能够成为超过 Java 的应用开发语言。

Swift 是通过Apache 2.0 许可下发布的,这也就意味着 Google 无需修改现有的开源结构和策略,就可直接无缝使用 Swift。

Swift 是苹果公司开发的一款替代 ObjectiveC 的全新的编程语言。在 WWDC 2014 会议上发布,很快就得到了开发者的青睐,也得到了一些应用开发厂商的支持,如 IBM、Lyft等。

但是 Swift 并非能够在其它平台上直接运行,也就是说 Android 需要 Swift 的运行时环境方可,而且这还仅仅只是一个开始。Google 必须移植 Swift 的整个标准库,以及支持的 API 和 SDK。其中一些 Android 底层的 API 是 C++ 实现的,目前来说,Swift 无法实现连接转换,必须整个地重写!Swift 也无法连接转换应用层的 java 的 API,所以这些也需要重写。

当然,以 Google 的技术实力,这些都不是什么大的问题,只要有足够的动力,Google 大不了就是将原来 Java 做的事情换一下而已。

话说回来, Swift 增长的速度很快,尤其是在开源以后,在 GitHub 上的编程语言排名已经是第11名了。更何况 Google 和 Oracle 纠缠不清的关系,已经迁移到 OpenJDK 上了,所以也该考虑这之后的一些事情了。虽然 Google 暂时还没有推进 Java 以外的编程语言,但是他们已经在考虑 Swift了,Swift 意味着速度和安全,而且以 Swift 的发展来看在将来移植到其它平台不会有太多的困难,尤其是以 C++ 实现的会更加的容易。

ps:一张图带你了解最全的互联网创业词汇:

“没有一家互联网公司能够轻松的活过三年。”---致创业的人。转载自:infoQ

本文分享自微信公众号 - 数据库SQL(SQLdba)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-04-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SQL Server基础SQL脚本之创建架构、排序

    代码420行左右 本系列,几乎都是代码,记得当时写的时候用的是微软的官方实例数据库AdventureWorks_Data.mdf、AdventureWork...

    赵腰静
  • DNS skypit technology

    DNS 天坑技术解读(简版) 这个话题呢,一直是我比较关注的一个话题,dns天坑技术。这是简版昂,只是简单的思路。 一个企业内网的真实客户端(非伪装蜜罐客户端)...

    赵腰静
  • 博弈之取石子问题

    取石子问题 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个...

    赵腰静
  • 窥探Swift编程之别样的HelloWorld

      从今天就开始陆陆续续的发布一些有关Swift语言的东西,虽然目前在公司项目开发中Objective-C还是iOS开发的主力军,但是在不久的将来Swift将会...

    lizelu
  • Python生态系统的14年演变,它是如何登顶最热门语言!

    【导语】Python 里各种丰富的标准库、第三方库和模块成为其广受欢迎的原因之一。而 PyPI 就是大家想第三方库前先要安装的一个仓库。作为使用者,它可以帮我们...

    一墨编程学习
  • bitcoinj开发环境搭建

    bitcoinj开发包是一个Java版本的比特币协议实现,使用bitcoinj就可以实现钱包管理和交易的发送与接收,而无须本地安装bitcoin core软件,...

    用户1408045
  • Hive中的Timestamp类型日期与Impala中显示不一致分析

    Hive表中存储的Timestamp类型的字段显示日期与Impala中查询出来的日期不一致。

    Fayson
  • Vue.js 计算属性 原

    (adsbygoogle = window.adsbygoogle || []).push({});

    tianyawhl
  • 针对“PowerBI从Onedrive获取文件”两篇文章做个补充

    绕开网关,多人在各自电脑上协作更新onedrive数据源,而无需专门用一台不关机不断网的电脑来登录gateway进行刷新。

    陈学谦
  • MFS-移除已用磁盘

    [root@node1 ~]# vim /etc/mfs/mfshdd.cfg #注释要移除磁盘挂载点

    泽阳

扫码关注云+社区

领取腾讯云代金券