要说近期最火的语言莫过于Apple新推出的Swift了,这个号称打磨了四年才推出的Apple系新一代开发语言。
为什么Swift编程语言刚一推出就这么火?-鲍余网络科技
应该说,Swift还是集成了现代语言的一些特点的,如高级结构、闭包、泛型等等。从中也能看到很多其他语言的影子,比如以下语句在JavaScript Console里直接就可以运行:
var shoppingList = ["catfish", "water", "tulips", "blue paint"]
shoppingList[1] = "bottle of water"
Swift语言对于Apple应用开发者的意义无需多言,在Objective-C之外,终于有了第二种选择,况且便捷程度大增。因此,其流行起来也是必然,但最近Swift语言在微博、极客社区上被炒得炙热,究其原因难道就是因为这一点吗?
1、什么是Swift语言?
Swift是苹果公司在2014年WWDC(苹果开发者大会)上发布的全新开发语言,从演示视频及随后在appstore上线的标准文档看来,语法内容混合了OC,JS,Python,语法简单,使用方便,可与Objective-C*共同运行于MAC OS和iOS平台,用于搭建基于苹果平台的应用程序。
作为一项苹果独立发布的支持型开发语言,已经有了数个应用演示及合作开发公司的测试,相信将在未来得到更广泛的应用。某种意义上Swift作为苹果的新商业战略,将吸引更多的开发者入门,从而增强App Store和Mac Store本来就已经实力雄厚的应用数量基础。
Swift不需要引入头文件或写在main()内,也不需要在每一句加上分号。
如下面这一行便是Hello World程序:
println("Hello,world")
2、Swift语言的功能
可以说,Swift是编程语言的最新研究成果(其它最常见的编程语言,大家可通过鲍余网络科技的
《12种最常用的网页编程语言简介》相关介绍来详细的了解),并结合数十年的经验建设苹果平台的结果,结转自Objective-C的命名参数表示在一个干净的语法,使得API的Swift更容易阅读和维护。
推断类型使代码更干净,不易犯错误,而模块消除了头,并提供命名空间。内存自动管理,而你甚至都不需要输入分号。
另外,Swift语言还具有很多其他的功能:
(1)、闭包的统一与函数指针。
(2)、元组和多个返回值。
(3)、泛型。
(4)、快速而简洁的迭代范围或集合。
(5)、支持的方法,扩展的协议结构。
(6)、函数式编程模式,例如:地图和过滤器。
3、Swift语言的安全性
从最初的概念,Swift语言特始建要快,采用高性能的LLVM编译器,SWIFT CODE转化为优化的本地代码,调整到充分利用现代化的Mac,iPhone和iPad的硬件,语法和标准库也被调整到使最明显的方式来写你的代码也表现的最好。
并且Swift语言消除了不安全代码的整个类。变量总是初始化之前使用,数组和整数检查溢出,内存自动管理,语法被调整到可以很容易地定义你的意图,例如,简单的三个字符的关键字定义一个变量(VAR)或常量(LET)。
Swift采用的最佳功能从C和Objective-C语言。它包括低级别的原语,如类型,流程控制和运算符。它还提供了面向对象的特性,如类,协议和仿制药,给可可和可可触摸开发商他们要求的性能和功耗。
在Swift语言的安全模式被调整为强大的可可和可可触摸的API;认识和妥善处理其中的对象是零案件是基本的框架和斯威夫特的代码使这个非常容易;添加一个字符可以代替曾经被认为是代码在Objective-C的整条生产线;这一切工作在一起,使建筑物的iOS和Mac应用程序比以前更加容易和安全。
4、Swift语言为什么刚一推出就这么火?
(1)、首先,Swift语言系出名门是其火爆起来最直接原因。Apple的模式、产品黏着度、庞大市场及品牌口碑,才是最重要的考量点,看看Objective-C,尽管抱怨不少,仍能占据语言榜前几位置,这是王道。
(2)、其次,就是前面提到的Swift语言于开发者的意义,让大家对其充满了期待。因此,官方Swift教程《The Swift Programming Language》在短短时间内甚至被翻译成了好几个中文版本。
(3)、就是市场炒作的需要,这也是鲍余网络想重点提的,如今营销无处不在,各种大大小小的技术网站、运营微博,都希望伴着Apple口碑,为自己博得影响力。鉴于此意,鲍余网络觉得语言重要性已并不重要了,扩大自身品牌效应才是商业目的。
我相信,后续关于Swift的讲座、沙龙、论坛以及出版物,肯定也会逐渐多起来(当然,也并非就都是商业目的)。成熟精明者,总是超理性地看待利益点,繁花似锦背后,需要获取养分。
5、开发者如何看待Swift语言?
不得不说,Swift仅是一门语言,其目的是最终生成应用。
为语言而热爱语言,这个可以有,但仅限于兴趣爱好,别用在饭碗事情上。用在饭碗上的,往往不是你最喜欢的。
一门刚推出的语言,即使是打造了四年,也还是需要迎接生态环境检验的,Objective-C的成熟度是其不可被忽视的优势。
移动互联网趋势的迸发,导致对应用开发者的需求越来越旺盛,掌握好相应的开发技能当然是必须的。但鲍余网络相信,世界不只是掌上应用开发,甚至掌上应用开发者不占大多数。
所谓“兵无常势,水无常形”,选择好自己的藏身之技,可能是掌上应用开发技能,也可能是一门服务端技能,或者前端技能,我相信,这才是重要的。
此外,有多少应用是真正能作为事业来做的呢?太少了!比如学生,赚点零花钱而已。
如同这两天遇到的一件事,一个PM跟组员发生了冲突(这应该是一个普遍现象吧),究其原因,是界线划得太清楚了,貌似产品经理只能干自己的本份活儿,程序员就应该写好代码。这种僵化思维造成的就是低效率和强阻力,团队、个人遇到这种事,其带来的害处显而易见。
所以,鲍余网络建议大家要学会应时势需要,以目标为导向,调整过程及自己,这才是正解。回到对Swift的认识,也是这样。换句话说,你用与不用Swift,它就在那边,做好自己的合适选择!
鲍余网络科技点评:
要学会透过纷纷扰扰看清自己的目标所在、看清楚自身的“利益”点,别被太多羁绊所左右,更别盲目跟风。我一直认为作为开发者,技能单一是危险的,不懂因应时势做调整并积极学习也是危险的。