喜欢Swift编程语言的人主要是初学者?
一早一起来,朋友圈除了被苹果发布会刷屏外,还漫天散布着一条类似的招聘消息:“招聘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编程语言的人主要是初学者?的更多相关文章
- iOS Swift编程语言
Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序. Swift是一款易学易用的编程 ...
- Swift编程语言(中文版)官方手册翻译(进度8.8%)
翻译着玩,进度会比较慢. 等不及的可以看CocoaChina翻译小组,他们正在组织翻译,而且人手众多,相信会提前很多完成翻译. 原文可以在iTunes免费下载 目前进度 7 JUN 2014: 8.8 ...
- Swift编程语言资料合集
在本周二凌晨召开的苹果年度开发者大会WWDC上,苹果公司推出了全新的编程语言Swift.Swift 基于C和Objective-C,是供iOS和OS X应用编程的全新语言,更加高效.现代.安全,可以提 ...
- Apple Swift编程语言入门教程
Apple Swift编程语言入门教程 作者: 日期: 布衣君子 2015.09.22 目录 1 简介 2 Swift入门 3 简单值 4 控制流 5 函数与闭包 6 对象与类 ...
- iOS中生成并导入基于Swift编程语言的Framework
从iOS 8.0开始就引入了framework打包方式以及Swift编程语言.我们可以主要利用Swift编程语言将自己的代码打包成framework.不过当前Xcode 7.x在自动导入framewo ...
- Swift编程语言中的方法引用
由于Apple官方的<The Swift Programming Guide>对Swift编程语言中的方法引用介绍得不多,所以这里将更深入.详细地介绍Swift中的方法引用. Swift与 ...
- Swift编程语言的相关资料
苹果官方Swift文档<The Swift Programming Language> 苹果开发人员Swift文档及介绍 网友整理的Swift中文文档<Apple Swift编程语言 ...
- 苹果Swift编程语言新手教程【中国版】
Swift代码语言教程:在刚刚过去的WWDC2014大会上,苹果公司新公布了一种编程语言Swift.据悉.Swift语言继承了C语言以及Objective-C的特性,且克服了C语言的兼容性问题.对于广 ...
- [转]Swift 编程语言入门教程
今天在网上看到一篇非常好的教程,分享给大家 原文地址:http://gashero.iteye.com/blog/2075324 目录 1 简介 2 Swift入门 3 简单值 4 控 ...
随机推荐
- Layui栅格系统与后台框架布局
一.栅格布局规则: 1. 采用 layui-row 来定义行,如:<div class="layui-row"></div> 2. 采用类似 layui-c ...
- UUID使用
import java.util.UUID; public static String getUUID() { UUID uuid =UUID.randomUUID(); String str = u ...
- 洛谷 P1318 积水面积
P1318 积水面积 题目描述 一组正整数,分别表示由正方体迭起的柱子的高度.若某高度值为x,表示由x个正立方的方块迭起(如下图,0<=x<=5000).找出所有可能积水的地方(图中蓝色部 ...
- Ubuntu 16.04安装7zip的图形界面工具PeaZip
其实PeaZip不是7zip的图形界面工具,而是一整套方案,里面包括了7z格式的解压缩等. PeaZip Linux版本只有32位包,如果你使用的是64位Ubuntu系统,那么先打开终端运行下面的命令 ...
- Windows下如何查看当前登录用户
1.通过whoami命令查看 2.通过username变量查看,具体命令如下:echo %username% 上述两种方法只能查看当前会话用户信息,那么如何看到其他登录用户呢? 可以通过执行query ...
- NA路由②
CISCO常见的命令语法: R(c)#ip route network {mask} address/interface : 参数 {}可选项 ...
- 在Unity中接入Xbox360手柄
提要 本文主要介绍了怎样在Unity中接入Xbox360的手柄. 当我们调Input.GetAxis("Horizontal"),我们调了什么 Unity中全部关于输入的设置都在E ...
- iOS开发——高级篇——线程同步、线程依赖、线程组
前言 对于iOS开发中的网络请求模块,AFNet的使用应该是最熟悉不过了,但你是否把握了网络请求正确的完成时机?本篇文章涉及线程同步.线程依赖.线程组等专用名词的含义,若对上述名词认识模糊,可先进行查 ...
- Codeforces Round #322 (Div. 2) D. Three Logos 模拟
D. Three Logos Three companies decided to order a ...
- java SocketChannel and ServerSocketChannel
1 SocketChannel 1.1 打开一个SocketChannel SocketChannel socketChannel = SocketChannel.open(); socketChan ...