查看: 1841|回复: 9

程序员眼中的苹果Swift语言:简单 易学 高效

[复制链接]
  • TA的每日心情
    擦汗
    2014-11-30 10:07
  • 签到天数: 170 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-6-9 07:53:33 | 显示全部楼层 |阅读模式
    分享到:
          美国时间6月2日举行的苹果WWDC大会上,Swift正式曝光在镁光灯前,叹息声、惊呼声此起彼伏。不过不用太过担心,Objective-C、Swift能够在同一个应用程序中并存。
          VentureBeats记者Devindra Hardawar、理查德-布莱恩-莱利(Richard Byrne Reilly),采访了知名软件工程师山姆-索菲斯(Sam Soffes),了解程序员眼中的Swift。据悉,索菲斯曾创作《Litely》、《Hipstamatic》、《Bible》等应用程序。
    以下是记者准备的七个问题,涉及Swift的优点、缺点。以及Objective-C的结局。索菲斯的答案中有些会有点骇人、令人震惊,或许还有几丝伤感。
    1、为什么开发人员会去学习另一种语言?
           苹果Swift语言的主要目标,是简单易学、使用便捷高效。苹果并不是强迫所有人都去学习新的语言。过去,每当他们带来一些巨大的技术变革(就像是自动引用计数,Automatic Reference Counting),他们都会给开发人员留上点时间,让人们继续沿袭老的方式怀旧,直到有一天,他们自己就想要拥抱新技术。
           不过抛弃习惯的一切,转去学习一些全新的东西绝非易事。对于很多开发者来说,Objective-C就是他们的生计、饭碗。抛弃我们过去几年已经习以为常的工具,乍听起来十分困难。不过,苹果却总有办法将人们引向预设的方向。
    苹果这次的杀手锏就是“速度”。Swift使用十分便捷,这本身就是一场巨大的胜利。新的语法也非常棒。“我认为Objective-C的开发者,很快就会喜欢上Swift。”
    2、Objective C效率不够高?
           Objective C是一款非常伟大的语言,它甚至比网络还要年长。不过这个已为苹果贡献多时的编程语言,想要上手却并不容易,对那些编程菜鸟来说更是如此。“学习难”的主要原因在于,Objective C看起来和其他的C系语言大相径庭。它最让人头疼的原因就在于,它是“盖在C语言上的薄薄一层”。
           在C这样的底层语言基础上创建的东西,很难做到易学、高效。你需要通过C语言去做很多的事情——这显然并不简单。苹果并不需要一个新的语言,不过他们还是积极地去做了一些新的、巨大的尝试。
    3、着手学Swift要用多久?容易么?
           Swift才刚刚破壳而出,现在来讲,这一问题的答案还很难说。“在尝试了几个小时之后,我把自己的ObjectiveC程序改用Swift编写,进展非常不错。起初,我真的感到很沮丧。不过,当我妥协之后,接受了学习过程中可能会让人有些别扭,Swift的文档反而就变得更容易阅读,遇到问题的时候也能迎刃而解。”
           Swift最出色的一大亮点在于:摆脱了C的束缚,Swift语言十分便捷。
           想把Objective C介绍给那些没有编程基础的人非常困难。你必须去解释所有的例外规则,然后再从头开始深入讲解计算机科学话题。Swift跳过了这一切,只是简简单单去编码就OK。
    4、Swift从哪里汲取灵感?
           Swift从多种编程语言中获得灵感。我在用它编码的时候,会想起JavaScript、Go、Ruby以及其他一些语言。Objective C岁数比较大。Swift是一个非常可喜的变化,它拥有从很多现代编程语言延伸出的灵感。
    5、Swift的目标是?
           苹果Swift的目标,是让任何人都能够快速学习,高效编码。“我觉得,他们可能希望用几年的时间完全淘汰掉Objective C。”简单易学大有裨益,也会吸引更多的开发者会来到苹果的平台。
    6、Swift vs 微软、谷歌语言?
          “用Swift的时候,我的眼前总会浮现出谷歌Go语言。Go拥有很好的并发功能,很欣喜能看到苹果汲取了Go的一些特点。微软C#语言也十分简洁。不过,现在才仅仅是苹果新语言的开始。
    7、Swift可以省下两、三行代码?
          当然可以。相比Objective C,Swift算得上是极致简洁。很多内容写在一行,却仍然简单易读。当然,用Objective C也能实现不少功能,但是内容会很长,而且不方便阅读。有些新的东西,用Objective C编写起来会让人十分头疼,但是用Swift却是种快乐的享受。
           “才与Swift接触短短一天的时间,又开始用Objective C去写代码了。不过,我已经开始想念起了Swift。”
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-5-12 10:32
  • 签到天数: 295 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2014-6-9 08:01:53 | 显示全部楼层
    swift好像很强大啊~~~~~~~~~~~~~··
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-11-30 10:07
  • 签到天数: 170 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-6-9 08:09:05 | 显示全部楼层
    fj1161 发表于 2014-6-9 08:01
    swift好像很强大啊~~~~~~~~~~~~~··

    歌唱的也不错
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-9-23 05:09
  • 签到天数: 113 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2014-6-9 10:08:52 | 显示全部楼层
    谢谢楼主分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-12-9 11:32
  • 签到天数: 151 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-6-9 11:55:40 | 显示全部楼层
    新玩意,很牛的样子
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-11-10 13:08
  • 签到天数: 138 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-6-9 19:55:28 | 显示全部楼层
    楼主辛苦了,
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-4 10:56
  • 签到天数: 242 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2014-6-9 19:55:28 | 显示全部楼层
    最近的活动真是给力.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-11-25 13:05
  • 签到天数: 62 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2014-6-9 19:55:28 | 显示全部楼层
    很漂亮            !
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-11-30 08:37
  • 签到天数: 220 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-6-9 19:55:21 | 显示全部楼层
    最近的活动真是给力.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-11-27 12:35
  • 签到天数: 113 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2014-6-9 19:55:21 | 显示全部楼层
    是时候出来挣铜板了....
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-18 20:51 , Processed in 0.197507 second(s), 33 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.