V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
dylanliu
V2EX  ›  iDev

Swift 应该是代替 OC 的

  •  
  •   dylanliu · 2014-06-04 13:07:39 +08:00 · 7661 次点击
    这是一个创建于 3616 天前的主题,其中的信息可能已经有所发展或是发生改变。
    看看apple官方的教程,里面反复将swift和c,oc做比较,字里行间表现出apple决定在未来几年用swift完全代替oc的决心
    26 条回复    2014-06-05 19:06:11 +08:00
    jsonline
        1
    jsonline  
       2014-06-04 13:22:18 +08:00 via Android
    一年内可全面代替
    PrideChung
        2
    PrideChung  
       2014-06-04 13:27:28 +08:00   ❤️ 1
    今天上午花了点时间看了下Swift文档关于和Objective-C混用的说明,发现UIKit里面的枚举类型都已经用Swift的枚举重写了,用Swift逐个模块地替代Objective-C是相当可行的。可以看出来苹果这次推出Swift真是蓄谋已久,前些时候还有人嘲笑苹果要拿OC再战五百年,果断被打脸
    PrideChung
        3
    PrideChung  
       2014-06-04 13:37:29 +08:00
    真是不得不赞一下苹果,对于从编程语言这么底层的迁移都能考虑得这么细致周到。微软看什么看,说的就是你
    loading
        4
    loading  
       2014-06-04 13:42:17 +08:00 via iPhone
    大量的obc书,正在学obc的也郁闷吧
    dylanliu
        5
    dylanliu  
    OP
       2014-06-04 13:44:38 +08:00
    将近1000页的官方文档,如果只是个辅助性的开发工具不用这么大阵仗吧,印象中看过的编程书只要C Primer Plus将近1000页.
    ioleon13
        6
    ioleon13  
       2014-06-04 13:45:14 +08:00
    当初学obc时不幸患上拖延症,这次直接从swift开始吧
    hooluupog
        7
    hooluupog  
       2014-06-04 13:48:51 +08:00
    要替代oc哪是这么容易的,oc在相当一段时间还会是ios上的主流(坐等打脸)。官方的底层封装倒是可以很快的迁移过去,无非就是维护两套API(历史苹果这么干过,用oc替代java,微软多次这么干过<vb.net,c++,mfc,wpf,winrt,再到折腾了一圈.net重新编译为本地代码>,google不知道会不会也这么干,目前Go和Dart还不像亲生的)。但海量的第三方app怎么办?所以这肯定是个缓慢的迁移过程,python3都出来多久了,python2还是用的不亦乐乎。
    shiny
        8
    shiny  
       2014-06-04 13:51:44 +08:00
    @ioleon13 我也是语法学了一半发现没心情看下去了。后来因为书都太老了都不能用了。
    Narcissu5
        9
    Narcissu5  
       2014-06-04 13:51:52 +08:00
    @PrideChung win32 API,COM,CLR都是语言中性的,甚至IE都可以同时使用vbs和js

    阁下想表达的是什么?
    zakokun
        10
    zakokun  
       2014-06-04 13:54:17 +08:00
    @PrideChung
    确实得佩服苹果的魄力.
    ios6拟物界面依然受欢迎的时候说换就换.obj-c这么火也彻底换掉.这种居安思危的态度真心让我佩服到五体投地.
    想想当初诺基亚当红的时候各种"科技以换壳为本"的把戏,最后抱着塞班进棺材....苹果真心能战500年
    doskoi
        11
    doskoi  
       2014-06-04 13:59:41 +08:00
    如果你已经会OjectiveC,那等OSX 10.10和iOS 8的软件用swift开发,才值得你开始在上面有所投入。
    Zhang
        12
    Zhang  
       2014-06-04 14:05:46 +08:00
    @zakokun 赞一个!
    Zhang
        13
    Zhang  
       2014-06-04 14:06:13 +08:00
    苹果也该变“芯”了!
    tinymao
        14
    tinymao  
       2014-06-04 16:51:30 +08:00
    @dylanliu

    The Busy Coder's Guide to Android Development

    http://commonsware.com/Android/

    快3000页了 - - !
    sqbing
        15
    sqbing  
       2014-06-04 17:37:48 +08:00
    补充OC比较靠谱
    artwalk
        16
    artwalk  
       2014-06-04 19:44:00 +08:00
    @PrideChung 有些蛋疼的语法终于可以扔掉了
    missdeer
        17
    missdeer  
       2014-06-04 20:08:05 +08:00 via iPhone
    @ioleon13 学了n次没坚持下来
    cabinw
        18
    cabinw  
       2014-06-04 20:13:32 +08:00
    所有framework中[object property]的获取方式都已经改为object.property
    Ricepig
        19
    Ricepig  
       2014-06-04 20:48:28 +08:00 via Android
    @PrideChung 微软?
    c#这几年的特性都被swift吸收了嘛,我看一段示例代码,还以为是c#的。。。
    konakona
        20
    konakona  
       2014-06-04 20:52:35 +08:00
    稍微看了下雨燕的语法,真心有点像javascript呀~~挺简单的,很好入手。
    完全赞同1楼!
    Azone
        21
    Azone  
       2014-06-04 21:16:02 +08:00
    @konakona 我只觉得var这个关键字像而已
    precisi0nux
        22
    precisi0nux  
       2014-06-04 21:23:22 +08:00
    @Azone +1
    hoyin
        23
    hoyin  
       2014-06-04 23:21:06 +08:00
    Script 的因為不用Compile ,所以除錯比較快
    再加上Apple 力推,而且易入手

    Obj 對新手太辛苦了
    相信Swift 感該很快成為吸引更多人寫iOS 和OSX 的軟件
    xujialiang
        24
    xujialiang  
       2014-06-04 23:49:34 +08:00
    @Ricepig 我也觉得像C#
    notedit
        25
    notedit  
       2014-06-05 13:18:04 +08:00
    大概的看了一下swift的手册 想替代oc还有很多路要走

    说能替代oc的大概都没在项目中用到过c或者c++的库
    feuvan
        26
    feuvan  
       2014-06-05 19:06:11 +08:00
    swift 用 C/C++ 库需要写 oc wrapper 这点让我难以理解
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5285 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 09:36 · PVG 17:36 · LAX 02:36 · JFK 05:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.