去年底苹果开源 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. java 多线程(synchronized)

    package com.example; public class App { public static void main(String[] args) { doRunable dr = new ...

  2. 旺信UWP倒计时

    Bug数量: 2016/3/8: 34 2016/3/9: 40(一堆新Bug到来) 2016/3/10: 21(邀请用户内测,一大波虫子即将到来) 2016/3/11: 10(预期的一大波Bug还没 ...

  3. Java多线程1:进程与线程概述

    进程和线程 谈到多线程,就得先讲进程和线程的概念. 进程 进程可以理解为受操作系统管理的基本运行单元.360浏览器是一个进程.WPS也是一个进程,正在操作系统中运行的".exe"都 ...

  4. Portal.MVC —— nopcommerce的简化版

    Portal.MVC 简介 项目是基于MVC4+EF,带有角色,权限,用户中心及账户相关(登录,注册,修改密码,找回密码等)等基本功能.参考的开源项目 nopcommerce,这是一个电商架构的MVC ...

  5. [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换

    [.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...

  6. jQuery弹出层插件popbox

    都什么年代了,还自己写弹出层插件!是的,①自己写的自己好控制②可定制性高③兼容低版本IE 本插件有以下特性: 样式分离,可定制,纯净无图片 可自定义按钮及按钮的样式.点击事件 可指定选择器选择页面元素 ...

  7. 对map集合进行排序

          今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单介绍Map   ...

  8. DISCUZ 自定义模板

    DISCUZ 自定义模板 模板安装和维护 安装新模板 将模板template打包放在对应目录:template/ 后台 -> 界面 -> 风格管理 , 安装模板 后台 -> 界面 - ...

  9. [每日电路图] 8、三轴加速度计LIS3DH电路图及功耗等指标

    看TI的官网资料:http://www.st.com/web/en/catalog/sense_power/FM89/SC444/PF250725 一.初次接触关注的信息: 1.1.概述中的关键信息 ...

  10. 获取IOS应用的子目录

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