去年底苹果开源 Swift 之后,Google、Facebook和Uber三个互联网巨头就曾在伦敦召开会议讨论Swift在各自开发战略中的地位。近日业界有消息传出,谷歌有意考虑将Swift作为Android开发的第一语言,而Facebook和Uber也计划在运营中提高Swift的地位。

虽然这是一则被科技媒体爆出来的新闻,但是让我对Swift报有更强烈的期待。

紧接着一个PR被Swift团队接受了:apple/swift#1442

This adds an Android target for the stdlib. It is also the first example of cross-compiling outside of Darwin: a Linux host machine builds for an Android target.

目前 Swift 已经支持了Mac和Linux两个平台,虽然 Linux 支持的是 Ubuntu 。

如果 Swift 是一个江湖,那么:

道统

这是江湖中最顶级的道统,天下武功(基于Swift开源的框架或者实现)皆出于此。

道统管理

https://github.com/kylef/swiftenv 相当于Node.js中的nvm,你可以使用它来管理Swift的版本。当然相比于JavaScript的jsbin,Swift也存在一个Web的运行时,你可以通过它来学习Swift的基础心法: http://www.runswiftlang.com/ 。

道统的公告

如果你想知道 Swift 下一步的发展计划,你可以访问 https://github.com/apple/swift-evolution 来了解 Swift 团队的动态,目前的动态信息是Development major version: Swift 3.0,Expected release date: Late 2016。

武功用于何处

突然间感觉到Swift与JavaScript的比较,有种相同类似的意义,那么让我们看一看Swift究竟能做些什么。

开发iOS Mac Apple Watch平台的App

这一点上毫无疑问,Apple推出的这一语言目的就是替换Objective-C在iOS,Mac平台上的 地位 (Apple Watch必须使用Swift开发,如果说开源可能谁都没发想到,那一届的WWDC确实很惊喜),有一点需要注意的是,如果你的App需要提交到Apple的商店,那么你必须使用Xcode自带的Swift版本(目前是2.2)。

如果你想学习Swift,我特别的推荐你查看: https://github.com/ipader/SwiftGuide ,当然官网也是不错的去处。

当然,随着 iOS Mac Apple Watch 平台的武功秘籍,流派的发展各路武功你都可以使用 CocoaPods 来进行管理,相当于Node.js之 NPM 。

Android-虚位以待

随着科技新闻的曝光和FB工程师的一次PR(开源社区),这个方面绝对有很大的想象空间。如果 Google 决定将 Swift 应用到Andorid平台,这无疑对开发者来说将有大大的好处。

来来来,看一个Swift跑在Android上的 Hello World : https://github.com/SwiftAndroid/swift/

服务端

Hello,服务端 Swift

如果说安全和性能是Swift最大的优势外,它的简单易学也是它最大的优点。

Perfect 是用Swift语言的Web开发和其他REST服务的框架,提供了一套进行服务端和客户端开发的核心工具,尤其是还供了在服务端开发中非常重要的MySQL, PostgreSQL, MondoDB数据库连接器。

Kitura 是IBM公司开源的一套web开发框架。

Express 让我想到了Node.js社区的 express web开发框架,没错你能看见非常熟悉的语法和使用方式。

至于数据库,你想连接哪个都行。

数据可视化

数据可视化(哪都有它),比如Web的D3.js,当然Swift也有它对应的实现可用(而且N+1多),我用过的是 https://github.com/danielgindi/Charts 。

AI

这年头不玩玩人工智能和深度学习都不好意思了,没错Swift也有一个对应的开源实现: https://github.com/collinhundley/Swift-AI 。

还有太多太多的领域(硬件,物联网,游戏等等)就不一一例举了,当然它无法进入Web客户端领域(这里绝对是JavaScript的天下。)

点此链接查看原文

Swift的期待的更多相关文章

  1. 从今天开始学习Swift--关于Swift (转)

    WWDC2014推出了新的编程语言,大家都站在了新的起跑线上,希望转发的本文能对园内的朋友一点介绍和帮助,如果大家对swift感兴趣,欢迎踊跃利用google. 原文地址:http://www.coc ...

  2. 硅谷和国内的 iOS 开发到底有何不同?

    前段时间在国内各大互联网公司转了一圈.与各位 iOS 业界大佬交流了之后,深感国内变化之大,敬佩诸位国内开发者的实力和韧劲.除此之外,我还发现硅谷和国内的 iOS 开发还是差别很大,且听我慢慢道来. ...

  3. Swift语言快速入门

    Swift语言快速入门(首部同步新版官方API文档和语法的Swift图书,确保代码可编译,作者专家在线答疑,图书勘误实时跟进) 极客学院 编著   ISBN 978-7-121-24328-8 201 ...

  4. 窥探Swift编程之在Playground上尽情的玩耍

    自从苹果公司发布Swift的时候,Xcode上又多了一样新的东西---"Playground".Playground就像操场一样,可以供我们在代码的世界里尽情的玩耍,在本篇博客中就 ...

  5. 窥探Swift编程之别样的HelloWorld

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

  6. iOS8.3发布了Swift 1.2带来哪些新变化

    苹果前几日在面向开发者推送iOS 8.3 Beta的同时,还发布了版本号为6D520o的Xcode 6.3 Beta,其中便包含了iOS 8.3 Beta和OS X v10.10 SDK,并进一步提升 ...

  7. iOS 里面 Swift与Objective-C混编,Swift与C++混编的一些比较

        即使你尽量用Swift编写iOS程序,难免会遇到部分算法是用C++语言编写的.那你只能去问问”度娘“或“狗哥”怎么用Swift调用C++算法.   一,C,C++, Objective-C,S ...

  8. Swift让编程更简单 人人都是开发者

    全称为苹果全球开发者大会的WWDC,每年的这个时候,都会如这段时间前后所举行的Google I/O 和微软的BUILD开发者会议一样,吸引全球科技媒体的目光.近几年来,因为在会上爆的猛料越来越多,“开 ...

  9. fir.im Weekly - Stanford 的 Swift 课程来了

    上周提过,Swift 的 Github 主页上已经有了 >>「Port to Android」,这周重点推荐一下 Stanford 的 Swift 课程. Developing iOS 9 ...

随机推荐

  1. 升级AutoMapper后遇到的“Missing map”与“Missing type map configuration”问题

    前几天发现 AutoMapper 3.3 的一个性能问题(详见:遭遇AutoMapper性能问题:映射200条数据比100条慢了近千倍),于是将 AutoMapper 升级至最新的 5.1.1 看是否 ...

  2. JavaScript思维导图—字符串函数

    JavaScript思维导图-来自@王子墨http://julying.com/blog/the-features-of-javascript-language-summary-maps/

  3. [蓝牙] 2、蓝牙BLE协议及架构浅析&&基于广播超时待机说广播事件

    第一章 BLE基本概念了解 一.蓝牙4.0和BLE区别   蓝牙4.0是一种应用非常广泛.基于2.4G射频的低功耗无线通讯技术.蓝牙低功耗(Bluetooth Low Energy ),人们又常称之为 ...

  4. 获取IOS应用的子目录

    在开发IOS应用时,我们经常需要将素材分类,并放入相应地子目录中. 在开发代码时,需要访问这些素材时,就需要获取对应的子目录路径.那么如何获取呢? 获取应用路径 首先,要找到应用所在的路径. NSSt ...

  5. 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能

    系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使 ...

  6. js 函数覆盖的问题

    今天遇到奇怪问题是,一个html里面引入一个新的js进来后,原来的按钮点击后(假设触发onclick函数)在某个地方卡住了,不往下执行了.—— 之前都是好好的. 调试发现,在onclick中间某一处调 ...

  7. 几款开源的图形化Redis客户端管理软件

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/98.html?1455870209 Redis是一个超精简的基于内存的键值 ...

  8. Java-练习方法之模拟摇号抽奖

    3.采用多种算法,模拟摇奖:从1-36中随机抽出8个不重复的数字 int[] shuzu=new int[8]; Random ran=new Random(); for(int i=0;i<s ...

  9. 大叔也说Xamarin~Android篇~Activity之间传递数组

    回到目录 我们在开发应用程序时,不可能只使用一个Layout或者一个Activity,比如你个管理系统,要求用户先登陆然后再使用,这时你至少要有两个activity吧,先登陆一个,然后成功后需要跳到别 ...

  10. tabs左右滚动

    $(function () { //IdivLeft小于0,说明左边还有菜单,菜单总数大于8 //IdivLeft等于0,说明菜单总数小于8 //IdivLeft大于0,说明右边还有菜单,菜单总数大于 ...