一早一起来,朋友圈除了被苹果发布会刷屏外,还漫天散布着一条类似的招聘消息:“招聘iOS程序员,要求拥有5年的Swift开发经验,有狼性,待遇月薪20K+,专车接送。”

  随后身边的朋友很快就开始调侃:《21天精通Swift》、“打算开个7天的Swift培训班,保证上岗就业”等等。

  这一切皆因为一件事情:今天凌晨苹果在WWDC大会上发布了新的编程语言Swift。

  每隔几年都会有一家公司站出来说自己开发了一个独特的编程语言,一般都是“雷声大雨点小”,为什么这次的情况却有些不同?也许其中一个原因就是,其发布者是拥有900万开发者的苹果,大家早已熟悉他们原有的编程语言Objective -C,也知道多少知道这门语言的弊端,而Swift似乎是有意地做出一些改变:

  “因为objc比较像C++等传统面向对象语言,有很多现代的高级语言特性都没有,而其他像Ruby和Python这些正是因为有这些特性所以写代码效率很高(这里说的不是执行效率),所以写objc就会跟写C++和Java那样繁琐。现在Swift相当于是抄了许多现代高级语言的特性,然后又做了一套只有自家平台用的语言,一方面降低了开发的门槛,让很多只接触过现代语言的初学者都可以轻易上手,另一方面提高了大家的开发效率(只要你不是写跨平台软件)。”——Terry

  从微博上看的话,很多开发者对这门新语言给予肯定的态度:

  @郑玉璟:苹果的Swift是一门集大成的编程语言,剔除了其他语言大部分弊端,加入了诸如闭包等现代特性,在效率提升的情况下还可以极大地简化开发工作,不得不佩服苹果工程师们的努力。从不同语言入门也变的容易。如果可以移植到其他平台并保持很好的稳定性,将会对java等带来毁灭性冲击。

  @Sungrone:刚看了一下Swift的文档,感觉几爽。没有刚刚接触objc的抵触感觉。刚开始学objc时,最容易搞乱的是方法和委托,现在这个好了。委托什么的都放到闭包里解决

  @YeeWang:LLVM革新了古老的Objective C,又为Apple平台带来现代时尚的Swift语言。LLVM虽也称为virtual machine,但是和以往的JVM/.net这类解释器不一样:LLVM能最终编译为机器原生语言。swift语言上能时尚,下能通C,相比较Java/C#这类语言就不那么容易了。

  部分人阅读官方文档过后,认为Swift有着脚本语言的身影,并降低了初学者的门槛。

  @程寄奴_野王:Swift 感觉好像很简单的样子,一下子拉低了开发iOS app的门槛。大量的脚本工程师可以转成搞iOS了。

  @蓝色坠落:Swift 有点像 JavaScript ,脚本语言,同时也吸取了 Java 和 Python 的优点。

  @Wayne-chan:确实像JS,但用一种弱类型风格表达强类型语言,Class设计很节制,比JS多了析构、override,但没overwrite与private,只能像JS那样用函数空间隔离类链中符号命名。我猜Swift会对接JS,毕竟JS是目前iOS设备唯一能不经审查就发布的编程途径。

  @bitinn:Swift基本上就是反着做事情——与其把脚本语言通过标准变成更好的编程语言,不如把编程语言变成更像脚本语言的格式。我猜和多数抽象化一样,某程度的性能损失不可避免,所谓的高性能+跨平台有待验证。

  不过有朋友告知,对Swift如此偏爱的开发者,大部分都是项目经验不丰富的初学者。“早上在Hacker News看到有人惊呼‘这门语言竟然把Go的很多语言特性都实现了’,也有人说‘这些特点早在几十年前就有编程语言实现了,它叫LISP’。其实算一下Go语言出现和被推广的时间,你就知道发帖赞美的人是大概什么时候开始学习编程的了。”

喜欢Swift编程语言的人主要是初学者?的更多相关文章

  1. iOS Swift编程语言

    Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序. Swift是一款易学易用的编程 ...

  2. Swift编程语言(中文版)官方手册翻译(进度8.8%)

    翻译着玩,进度会比较慢. 等不及的可以看CocoaChina翻译小组,他们正在组织翻译,而且人手众多,相信会提前很多完成翻译. 原文可以在iTunes免费下载 目前进度 7 JUN 2014: 8.8 ...

  3. Swift编程语言资料合集

    在本周二凌晨召开的苹果年度开发者大会WWDC上,苹果公司推出了全新的编程语言Swift.Swift 基于C和Objective-C,是供iOS和OS X应用编程的全新语言,更加高效.现代.安全,可以提 ...

  4. Apple Swift编程语言入门教程

    Apple Swift编程语言入门教程 作者: 日期: 布衣君子 2015.09.22 目录 1   简介 2   Swift入门 3   简单值 4   控制流 5   函数与闭包 6   对象与类 ...

  5. iOS中生成并导入基于Swift编程语言的Framework

    从iOS 8.0开始就引入了framework打包方式以及Swift编程语言.我们可以主要利用Swift编程语言将自己的代码打包成framework.不过当前Xcode 7.x在自动导入framewo ...

  6. Swift编程语言中的方法引用

    由于Apple官方的<The Swift Programming Guide>对Swift编程语言中的方法引用介绍得不多,所以这里将更深入.详细地介绍Swift中的方法引用. Swift与 ...

  7. Swift编程语言的相关资料

    苹果官方Swift文档<The Swift Programming Language> 苹果开发人员Swift文档及介绍 网友整理的Swift中文文档<Apple Swift编程语言 ...

  8. 苹果Swift编程语言新手教程【中国版】

    Swift代码语言教程:在刚刚过去的WWDC2014大会上,苹果公司新公布了一种编程语言Swift.据悉.Swift语言继承了C语言以及Objective-C的特性,且克服了C语言的兼容性问题.对于广 ...

  9. [转]Swift 编程语言入门教程

    今天在网上看到一篇非常好的教程,分享给大家 原文地址:http://gashero.iteye.com/blog/2075324 目录 1   简介 2   Swift入门 3   简单值 4   控 ...

随机推荐

  1. UVA 1347_Tour

    题意: 给定一系列按x坐标升序排列的点,一个人从左向右走到终点再从终点走回起点,要求每个点恰好经过一次,问所走过的最短路径长度. 分析: 可以看成是两个人同时从起点向终点走,且除起点终点外每个点恰有一 ...

  2. hdu4778(状态压缩dp)

    题意: 有G种颜色的宝石,共B袋.两个人轮流拿宝石,每次从B袋中拿一袋,把其中的所有宝石倒入一个公共容器,每袋宝石只能取一次. 当容器中有S个相同颜色的宝石时,将失去这S个宝石,当前操作者得到一个魔法 ...

  3. springboot 关于第三方包 打包问题

    第三方包: 添加library 依赖 在pom.xml中配置 <resources> <resource> <directory>lib</directory ...

  4. JS函数节流代码实现

    函数被频繁调用场景 Js中的函数大多数情况下都是由用户主动调用触发的,一般不会遇到性能相关的问题.但在一些少数情况下,函数的触发不是由用户直接控制.在这些场景下,函数有可能被非常频繁地调用,而造成大的 ...

  5. APPLE STORE

    直接在设置中,使用查看APPLE ID是无法更改的,现在必须要有所在区域的信用卡信息,支付方式无法像以前一样选择“无”. 查询后发现,有人说icloud3.0,即这个旧版的可以进行更改,于是下载. 但 ...

  6. symfony 使用原始sql

    $this->get('database_connection')->fetchAll('select * from book where book.id=3')

  7. CSS 全部的列表样式类型

    <html> <head> <style type="text/css"> ul.none {list-style-type: none} ul ...

  8. Angularjs1.x 项目结构

    大部分的项目结构是以 directives , service, controller 为基础来搭建的项目架构的,但这里更偏向于以应用场景来进行项目架构,因此这里的文件夹结构可能与您之前遇到的结构不同 ...

  9. 2016/1/12 第一题 输出 i 出现次数 第二题 用for循环和if条件句去除字符串中空格 第三题不用endwith 实现尾端字符查询

    import java.util.Scanner; public class Number { private static Object i; /* *第一题 mingrikejijavabu中字符 ...

  10. ffmpeg resize and scale

    ffmpeg缩小视频尺寸 | 楚盟博客 https://www.5yun.org/13126.html ffmpeg -i test.mp4 -s 480×360 out.mp4 常用分辨率: 108 ...