全称为苹果全球开发者大会的WWDC,每年的这个时候,都会如这段时间前后所举行的Google I/O 和微软的BUILD开发者会议一样,吸引全球科技媒体的目光。近几年来,因为在会上爆的猛料越来越多,“开发者大会”主要并不是让苹果的开发者们兴奋,而是让普通的消费者激动。不过,在今天凌晨刚刚结束的2014年WWDC上,可能消费者看了会觉得一头雾水,不知道库克他们到底在讲什么。但是对于开发者来说,本次会议可以说回归了“开发者大会”的本意,的确是激动人心的时刻。

  以乔布斯归来作为分水岭,苹果后来的各种大会和产品发布会,基本上遵循了每三年会给我们带来一大惊喜的定律。1998年,苹果发布了彩色机身的iMac台式电脑。2001年,苹果发布了第一代随身听播放机iPod。2004年,苹果iTunes商店的营收超过了公司整体营业额,显露出颠覆音像市场的潜力。2007年,第一代iPhone发布。2010年,第一代iPad发布。在每个三年之间可能每年会对已经有的大型产品线发布小幅更新。但是这每隔三年总会掀起一次的高潮,总是会给我们带来一个又重新定义了某个产品,或者颠覆了某市场的新的品类。

  乔布斯死后,苹果第一个“三年之约”按理说是在2013年。苹果为我们带来的全新品类是最强力的消费类计算机Mac Pro。但是跟其他一些机器出来之后就有巨额的销售不同,在出来之后半年时间才出货的这款怪物级机器,因为天价的缘故,虽然确实是一个全新的概念,但是无法普及。

  2013年,人们更期待苹果推出手表,眼镜,头盔之类的来颠覆可穿戴硬件行业,但是这一切都没有发生。在这个三年之约阶段当中发布的最重要的产品,倒不如说是iOS 7。这个全新的界面设计,力挽狂澜一般整体的改变了还在坚持拟物化风格的大多数产品,基本上,扁平化一夜之间沦为历史遗迹。但是这种风格的改变,除了能够证明苹果仍然具有振臂一呼,应者云集的能力之外,也无法对整个产业造成实质性的改变。

  库克的继任加深了人们对于苹果可能由天才公司沦为中庸的担忧。而通往平庸的转变当中,一个很明显的信号,就是没有办法以稳定的频率,不断推出全新概念的产品,以颠覆行业。站在消费者的角度来看,本次的会议介于“三年之约”中间,本来就应该比较平淡,但是还是平淡的过了头,甚至不会有各种改良的产品出现,比如2004年的大会上还宣布了不同尺寸的显示器,今年就连这个都没有。

  我们今年所能看到的变化,是两个全新升级的系统版本,分别对应移动设备和传统PC产品线。但是这两个系统当中所添加的功能也在我们的预期当中,iOS 8并没有改变从第七版沿袭下来的扁平风格,而这种扁平风格被沿用到Mac上面,也是顺理成章。

  两个系统进一步加深了向云端的整合能力,iCloud上的iMessage可以整合手机短信,并且内置了实时对讲的语音信息(如果微信和Whatsapp等等没有起诉苹果垄断或抄袭就奇怪了)。但是,iCloud从推出以来,就作为已有硬件设备的附庸而存在,它从没有获得过类似Dropbox甚至OneDrive那样跨平台的成就,并不能证明苹果在云策略上的成功。

  然而,正如开头所讲的,对于开发者来说,本届大会的确让他们无比兴奋,就因为在大会最后所公布的那款编程语言的出现。这款名叫Swift(雨燕)的新语言大幅度降低了为iOS设备编程的难度。如果你曾经对苹果所使用的Objective-C语言有所耳闻,你就会明白它的编写难度已经突出的高于另外两个平台Android和Windows Phone/Windows RT。使用恰当的工具编写后两个系统的应用,掌握起来就像编写HTML那样容易上手,它的门槛会大大的降低。可能没有企业会承诺让你在一个月之内学会Objective-C语言,但是却已经有公司打出了让你在一个月之内从零学会Python语言的招牌,并且这家名为One Month的培训机构最近还拿到了融资。

  Swift就是方便了希望从零开始学习编程的初学者。相比之下微软在一两年前所做的事情更加彻底,为Metro界面应用编写程序,甚至只需要学会HTML和XML,稍作移植就可以发布到应用商店。在WP和Android平台现在都有根据RSS等信息快捷生成应用的程序。再加上Web App被打包成“轻应用”等等,实际上,关于让普通人都能够写代码,通过编程发挥个人才华的这一轮战争,苹果是属于比较靠后的参战一方。但是它终于进来了。

  编程门槛的高低,其实只对初学者有意义。在熟练掌握了Objective-C之后,iOS内置的各种控件和动画效果,可以方便开发者做出符合标准,风格统一的应用,或者实现一些特殊效果。加上苹果应用商店审核的高门槛,导致其中应用的综合质量要高于Android和WP平台。很多开发者出于方便机型适配和统一标准的考虑,优先选择上手更难的iOS作为发布平台,过一两年才推出Android客户端。也许,Swift的出现,将意味着初学者的应用,不再直接和Android/WP以及“粗制滥造”划等号。就像iBook Author和Keynote的作用一样,他们也有机会第一次就做出一个“优雅”的iOS应用。

  苹果将iPad定位为,不仅是一款欣赏创作成果的设备,更是一款生产创意产品的设备。有了iPad之后,人们可以在移动的过程当中绘画,创作音乐和视频作品。iPad在办公能力之上的短板,则被微软的Surface平板电脑给补齐。而几大平台同时降低写作程序的难度,则有可能会意味着编程成为继文字,图像,声音,视频之后,又一种新的创意载体。它上面可能会承担更多人的构想,回忆以及愿望。

  曾经有人给女朋友过生日,或者纪念日的时候,都会建立网站,用动态效果来回忆自己和女友曾经度过的日子。以后,随着门槛越来越低,做一个应用程序显示这一切,将不会只是码农的专利。今年的大会上最小的中国参加者只有十几岁,因为开发了一款上苹果官方推荐的软件,获得了参加本次大会的门票。这就是趋势所在。

  而如果出现了这样的趋势,也可以说苹果正在完成帮着全人类做智能升级的过程。也可以说,苹果把我们都变成了开发者,我们这些普通人将会变成苹果在这个“三年之约”当中发布的最重要的“新产品”。

转自腾讯科技  swift技术交流群 376538118

Swift让编程更简单 人人都是开发者的更多相关文章

  1. 【转】【C#】C# 5.0 新特性——Async和Await使异步编程更简单

    一.引言 在之前的C#基础知识系列文章中只介绍了从C#1.0到C#4.0中主要的特性,然而.NET 4.5 的推出,对于C#又有了新特性的增加--就是C#5.0中async和await两个关键字,这两 ...

  2. 转:[你必须知道的异步编程]C# 5.0 新特性——Async和Await使异步编程更简单

    本专题概要: 引言 同步代码存在的问题 传统的异步编程改善程序的响应 C# 5.0 提供的async和await使异步编程更简单  async和await关键字剖析 小结 一.引言 在之前的C#基础知 ...

  3. [你必须知道的异步编程]C# 5.0 新特性——Async和Await使异步编程更简单

    本专题概要: 引言 同步代码存在的问题 传统的异步编程改善程序的响应 C# 5.0 提供的async和await使异步编程更简单  async和await关键字剖析 小结 一.引言 在之前的C#基础知 ...

  4. 四、C# 5.0 新特性——Async和Await使异步编程更简单

    一.引言 .NET 4.5 的推出,对于C#又有了新特性的增加--就是C#5.0中async和await两个关键字,这两个关键字简化了异步编程,之所以简化了,还是因为编译器给我们做了更多的工作,下面就 ...

  5. Anno 让微服务、混合编程更简单(Net love Java)

    在社区或者QQ群我们经常看到有人争辩编程语言的好坏,只要一提起这个话题常常就能引来很多人参与,往往最后就变成了一群人几个小时的骂战.今天我们要说的是如何让Java和.Net(甚至更多语言)相结合.充分 ...

  6. C# 5.0 新特性——Async和Await使异步编程更简单

    http://www.cnblogs.com/zhili/archive/2013/05/15/csharp5asyncandawait.html http://blog.zhaojie.me/201 ...

  7. 人人都可以写的一个Python可视化小程序,带你走进编程的世界

    当年的PHP号称是最好的编程语言,今天的Python就是最简单的编程语言,一个小小的程序,寥寥几行代码,带你体验一下编程的乐趣. 最简单的编程语言 今天要介绍的小工具是Python环境安装好之后,自带 ...

  8. 这样leetcode简单题都更完了

    这样leetcode简单题都更完了,作为水题王的我开始要更新leetcode中等题和难题了,有些挖了很久的坑也将在在这个阶段一一揭晓,接下来的算法性更强,我就要开始分专题更新题目,而不是再以我的A题顺 ...

  9. 腾讯QQ会员技术团队:人人都可以做深度学习应用:入门篇(下)

    四.经典入门demo:识别手写数字(MNIST) 常规的编程入门有"Hello world"程序,而深度学习的入门程序则是MNIST,一个识别28*28像素的图片中的手写数字的程序 ...

随机推荐

  1. 初涉定制linux系统之——自动化安装Centos系统镜像制作

    最近碰到个需求:要在内网环境安装centos6.5系统并搭建服务,但由于自动部署脚本里安装依赖包使用的是yum安装,而服务器无法连接外网,实施人员也不会本地yum源搭建O__O "….. 本 ...

  2. Sum All Primes

    function sumPrimes(num) { //return num; var arr = []; var ifPrime = function(num){ if(num < 2){ r ...

  3. No edit session in the progress

    运行环境:开发环境:Windows7旗舰版64bit.VisualStudio2008 With SP1.ArcEngine10.0.NetFrameWork4.0.IIS7和C#开发语言. 问题描述 ...

  4. jquery each遍历节点使用

    ---恢复内容开始--- $("#aaa :input[type='text']").each(function(i){     alert(this.value); this.v ...

  5. Java 中extends与implements使用方法

    Java 中extends与implements使用方法 标签: javaclassinterfacestring语言c 2011-04-14 14:57 33314人阅读 评论(7) 收藏 举报 分 ...

  6. PHP的字符串函数

      1.字符串的连接 字符串可以使用字符串连接符(.)来连接 常见的用途是建立大块的HTML字串代码,赋值号 (=) 连接符 (.) 可以被简写合并为 (.=) 符号 2.在字符串中使用变量 这个功能 ...

  7. [Note] changing building platform from vs 2013 to vs community 2015

    The error turned out as "undefined linkage"(The same as you haven't use some function that ...

  8. eclipse中安装adt插件

    对于程序开发的学者来说,eclipse并不陌生,它为我们提供了一个非常广阔的平台来开发程序.同样我们也可以用它来开发android程序.但是在eclipse中并不能直接开发android程序,需要我们 ...

  9. 安装odoo服务

    sysv init 服务 从 odoo 源码 debian 目录 拷贝 init 至 /etc/init.d/ 并 更名为 odoo cd /opt/odoo sudo cp /opt/odoo/de ...

  10. 树莓派安装Transmission-daemon出现的问题

    1,安装时发现默认的源里面没有transmission-daemon包 pi@fynn:/etc/apt/sources.list.d $ sudo apt-get install transmiss ...