iOS 大佬们,关于 Swift 在国内的地位,咨询下 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Tory
V2EX    程序员

iOS 大佬们,关于 Swift 在国内的地位,咨询下

  •  
  •   Tory 2018-10-23 16:15:31 +08:00 5879 次点击
    这是一个创建于 2550 天前的主题,其中的信息可能已经有所发展或是发生改变。

    小的现在是前端一名 前两年开始脱坑 iOS 那个时候 swift 刚发展 想着这几年过去了 swift 应该风生水起了 可是 问了几个 iOS 的朋友 他们还在用 OC 这让我非常不解 v 站有用 Swift 的大牛吗 能否给小的解析下

    34 条回复    2018-10-25 20:04:16 +08:00
    LINAICAI
        1
    LINAICAI  
       2018-10-23 16:19:51 +08:00
    除了老项目,新项目一律用 swift 了
    loveuqian
        2
    loveuqian  
       2018-10-23 16:24:08 +08:00 via iPhone
    为什么你们都有新项目?
    CastleBUPT
        3
    CastleBUPT  
       2018-10-23 16:27:35 +08:00
    8102 年了还有项目用 MRC 的呢,很多都是历史遗留问题
    Tory
        4
    Tory  
    OP
       2018-10-23 16:47:36 +08:00
    @LINAICAI 大佬有木有感觉 Swift 比 OC 优秀的地方?或者不足?
    Tory
        5
    Tory  
    OP
       2018-10-23 16:47:50 +08:00
    @loveuqian 你这句话,莫名心酸。。。
    U7Q5tLAex2FI0o0g
        6
    U7Q5tLAex2FI0o0g  
       2018-10-23 16:48:52 +08:00
    老项目没办法, 新项目肯定上 Swift 啊
    vsomeone
        7
    vsomeone  
       2018-10-23 16:54:32 +08:00
    地位怎么样不太清楚,但是 Swift 目前的 ABI 还没有稳定下来,Swift 5 又要和之前的版本二进制不兼容了
    ihuzhou
        8
    ihuzhou  
       2018-10-23 16:54:37 +08:00
    不是大牛,现在所有的业务都上了 Swift。老代码改成 Swift 会增加额外的工作量,所以才没有转吧。不过 OC 也好,Swift 也要写的业务都差不多,虽然 Swfit 写起来方便,但是现在 Swift 版本之前还是会存在不能向下兼容的问题,所以适合团队的才重要吧
    Tory
        9
    Tory  
    OP
       2018-10-23 16:56:28 +08:00
    @ihuzhou 也就是说,如果现在想回炉 iOS,那么 OC 跟 Swift 还是都得兼顾咯
    samlee123
        10
    samlee123  
       2018-10-23 17:11:06 +08:00
    都 8120 年了 现在 才回炉 iOS (面试官:请你手写一下苹果 weak 实现)
    finab
        11
    finab  
       2018-10-23 17:22:36 +08:00
    前段时间用两个月把一个 OC 项目用 Swift+Texture 重写了.
    没遇到什么大问题,新开项目绝对还是 Swfit 为主了。

    其实 OC 和 Swift 开发区别不大,他们就语法有差异,用的不还是 UIKit 那一套么,会一个另外一个自然也就会了

    每年的 Xcode 升级后项目都编译不过去,需要改改改,有些时候还需要等引用的第三方库先兼容,有些库不更新了你还得改第三方库,这点真的很烦
    sangmong
        12
    sangmong  
       2018-10-23 17:22:56 +08:00
    都 8120 年了 现在 还回炉 iOS
    ihuzhou
        13
    ihuzhou  
       2018-10-23 17:23:03 +08:00
    @Tory 写业务熟悉也就 1-2 天就好了吧,研究语言特性肯定要下功夫
    vansouth
        14
    vansouth  
       2018-10-23 17:26:10 +08:00
    不是大佬,但是还在维护一个 mrc 项目 /doge
    Tory
        15
    Tory  
    OP
       2018-10-23 17:33:03 +08:00
    @vansouth 好,好,好可怜。。。。mrc,为啥不炒老板鱿鱼
    jamescheng
        16
    jamescheng  
       2018-10-23 17:41:03 +08:00
    肯定 swift 啊...swift 语言特性比 OC 简洁多了. 如果公司其他人不会的话...那就 oc 吧
    Deville
        17
    Deville  
       2018-10-23 17:42:38 +08:00
    能多快转 swift 就多快转,虽然 半年一入门,但是现在入门成本已经越来越小了,今年 swift 大会上,巧大说他们混编的项目越来越少,能迁移到 swift 的基本都牵了,只留了少部分业务组件在用 OC。

    而且你回顾下 Apple 对新技术支持的态度的强硬性,bitcode、https、ipv6 等等。

    而且。。。Apple 对 OC 源码的维护工作越来越艰巨。。

    提前做好预防并不是坏处,现在半年一维护总比未来被强制迁移好过吧。。
    Tory
        18
    Tory  
    OP
       2018-10-23 17:44:57 +08:00
    @Deville 你说,要是哪一天时机成熟了,苹果爸爸说,OC 的项目,不给上架。。。。中国大多数程序员,原地爆炸
    Deville
        19
    Deville  
       2018-10-23 17:50:41 +08:00
    @Tory 不会那么快,但一定会比微软放弃 XP 果断, 很欣赏 Apple 对新技术的扶持。国内开发环境更新本来就慢,Java 那头遍地 5、6、7。。。
    xuhaoyangx
        20
    xuhaoyangx  
       2018-10-23 17:57:06 +08:00
    @finab #11 所以我司有个专门做的虚拟机 每年都做一个版本....
    3453452345
        21
    3453452345  
       2018-10-23 18:05:04 +08:00
    Xcode 每次更新 老项目都要改 这点很烦。
    chmlai
        22
    chmlai  
       2018-10-23 18:22:21 +08:00
    那么多年了, swift ABI 还没有, 其实代码数据流清晰, 结构简单比什么语法简介重要多了.
    kAzec
        23
    kAzec  
       2018-10-23 18:22:35 +08:00 via iPhone
    OC 在可预见的未来里还是不会被替代的,毕竟 Apple 自己的框架都是用 OC 写的,标准库也是基于 C 的那套,很多地方也依赖到了 OC 的 runtime。

    当然,强烈希望 Apple 粑粑打脸,明年推出个 UIKit 2 啥的出来,那就爽了。
    BingoXuan
        24
    BingoXuan  
       2018-10-23 18:49:23 +08:00 via Android
    放心,Apple 内部都不会拿 Swift 当主力,也就挖坑让开发者跳而已
    wobuhuicode
        25
    wobuhuicode  
       2018-10-23 18:51:11 +08:00
    OC 才是王道……
    puga2006
        26
    puga2006  
       2018-10-23 19:35:42 +08:00
    我用 c、c++和 oc 做 iOS,业务所需。
    KeepCoding
        27
    KeepCoding  
       2018-10-23 23:33:05 +08:00 via iPhone
    自己项目用 swift,公司业务还是 oc。
    yxjxx
        28
    yxjxx  
       2018-10-23 23:47:33 +08:00
    hotpatch
    atianjun
        29
    atianjun  
       2018-10-24 09:01:09 +08:00
    swift 只会这个,反正自己干
    JiangShenMing
        30
    JiangShenMing  
       2018-10-24 09:16:20 +08:00
    swift 就是个坑啊 太不稳定了
    zjddp
        31
    zjddp  
       2018-10-24 09:36:18 +08:00
    现在还是 OC、swift 两手抓两手硬。估计等到水果自己抛弃 iOS 上的运行时的时候就可以放弃 OC 了。
    wxl1380610
        32
    wxl1380610  
       2018-10-24 11:34:19 +08:00
    现在 是 oc 为主吧 还是 , 比较同意上面的 说法 ,公司项目用 oc 自己项目 用 swift
    damean
        33
    damean  
       2018-10-24 14:16:34 +08:00
    目前项目还是 OC + C 混编
    Roycom
        34
    Roycom  
       2018-10-25 20:04:16 +08:00
    hiswift.com 咨询买的人都少了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5408 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 08:47 PVG 16:47 LAX 01:47 JFK 04:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86