V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
SolidZORO
V2EX  ›  问与答

Objective-C 你們入門的時候,多久才開始習慣他的語法?

  •  
  •   SolidZORO · 2015-09-21 16:29:36 +08:00 · 1829 次点击
    这是一个创建于 3152 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近有個 iOS 項目,開發不是我,但有我需要協助的部分,於是找來斯坦福的 iOS7 教學視頻。剛看完第一集,就感覺被虐了⋯⋯

    一直沒有接觸「強類型」 的語言,平時也是把玩 JS 、 PHP 這種弱類型的語言居多, OC 一上來除了強類型不習慣外,語法也讓我難以接受。

    雖然看過很多人說 OC 是上手難,但是熟手後就知道他的好了。比如:

    [NSData dataWithBytesNoCopy:bytes length:size freeWhenDone:TRUE];
    

    參數定義得清清楚楚,換作其他語言,比如 PHP 的話:

    NSData.createNoCopy (bytes, size, true )
    

    但在當下,我還感覺不到這是優勢,反而覺得比較累贅⋯⋯

    以後自己真要開發 App ,真不敢碰 OC ,還是玩完 swift 好了,哪個時候我想 cocoa for swift 應該也出來了。

    所以最後想問下, 拋開 cocoa API 的使用, OC 這門語言在「沒有強類型語言」的基礎上,要花很多時間才能學會「基本語法」嗎?

    要是真得花不少時間才能搞明白的話,我還是過一遍官方文檔算了。

    10 条回复    2015-09-22 00:22:20 +08:00
    Dannytmp
        1
    Dannytmp  
       2015-09-21 16:38:57 +08:00
    惭愧,尚未入门啊
    sorcerer
        2
    sorcerer  
       2015-09-21 17:00:27 +08:00 via iPhone
    只能多写了,作为写 java 的,以前没好好学 c/c++的野生程序员,刚开始看到声明和定义得分开写,方法调用用[],参数类型用(),参数写在:后面的 objective-c 就感觉一头雾水,不过看了两天后,感觉就渐渐适应了
    ipconfiger
        3
    ipconfiger  
       2015-09-21 17:04:08 +08:00
    1 天
    0987363
        4
    0987363  
       2015-09-21 17:04:44 +08:00
    @sorcerer c/c++程序员表示看 oc 就是一头雾水,然后放弃了。。
    gangsta
        5
    gangsta  
       2015-09-21 17:04:47 +08:00
    莫名觉得 LZ 的繁体和空行比 Objective-C 难适应多了呢...
    SolidZORO
        6
    SolidZORO  
    OP
       2015-09-21 17:26:16 +08:00
    @0987363 果然和我感受一樣的人也是存在的⋯⋯
    SolidZORO
        7
    SolidZORO  
    OP
       2015-09-21 17:26:30 +08:00
    @gangsta 這樣也能被噴⋯⋯
    Felldeadbird
        8
    Felldeadbird  
       2015-09-21 17:33:49 +08:00
    楼主为何不直接 swift 呢
    shawngao
        9
    shawngao  
       2015-09-21 17:36:03 +08:00
    记不得了,反正很快。

    第一眼看 OC 代码就被这么人性的函数名( API )写法给震惊了。

    对比 C/C++, OC 让我感觉写代码是在和人对话。

    这个特性在学 AppleScript 时更是突出( 然而实际用到才发觉不是那么回事 )
    youxiachai
        10
    youxiachai  
       2015-09-22 00:22:20 +08:00 via Android
    直接上 Swift 。。。。 oc 代码用桥接也是可以直接在 Swift 上使
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1495 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:49 · PVG 07:49 · LAX 16:49 · JFK 19:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.