作者Wolfken ()
看板Soft_Job
标题Re: [请益] 学习Swift的合适性 麻烦各位前辈解惑
时间Mon Mar 7 09:43:55 2016
※ 引述《KeGun (oneone)》之铭言:
: 前阵子知道了Swift之後便有兴趣想学,但是遇到很多问题,所以想请问。
: 1.最大也是我自己最没办法验证的问题
: 就是Swift在目前业界到底泛不泛用?
: 各网站都会说Swift方便快速而且非常新,是苹果极力推动的新语言
: 看到这里让我心痒痒,但是也想问就是
: 目前业界大部分是用之前的Objective-C还是早就已经转成Swift了?
: 很害怕学了之後发现在软体业上只是白学,怕业界用的根本不是所学
: 虽然说 学就对了 ,不过还是想知道学了之後对於出路帮助大不大
Swift在语言热门度排行榜上已经超越Objective-C:
http://www.tiobe.com/tiobe_index
Objective-C在Swift推出後就呈现跳水式下跌,从一度超过10%到现在剩1%
我也看过Gartner关於程式语言的专业报告
里面建议Objective-C开发者"即刻"开始学习Swift,不是一两年後
种种迹象显示,Objective-C成为历史只是时间问题
Swift取代Objective-C成为主流,也已经是现在进行式
但不代表Objective-C会就此消失,看LISP过了多久还是有人在用就知道了
总是有旧程式需要维护,而且一维护十年以上的都有
我自己写Swift接近一年的经验,它绝对100%已经production ready
没有任何Objective-C做得到而Swift做不到的事
不要听人家讲什麽Swift还在实验阶段,production还是只能Objective-C之类的鬼话
而且Swift的语法比Objective-C先进多了
很多当下流行的语法跟新的设计概念,只有Swift有
虽然Swift一开始是东抄西抄,但是以Apple这麽大力推
然後又引进一些蛮有趣的语法和设计概念的状况来看
以後反而是其他语言来抄Swift都有可能
所以要不要学Swift?当然要,iOS开发的未来一定是Swift,也已经愈来愈多app用
但是你还是需要会Objective-C,主要是旧app的维护
还有即使写Swift,也会用到旧的第三方frameworks,也是要懂ObjC
然後一些iOS从早期发展到现在的沿革的轨迹,也只有在ObjC看得出来
对了解一些iOS的东西还算蛮有帮助的
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.36.234.95
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1457315040.A.D24.html
1F:→ async: 我会c#和javascript,学swift学满快的 03/07 09:47
2F:推 capita: 完全同意这篇 03/07 10:52
3F:→ cobrasgo: "没有任何Objective-C做得到而Swift做不到的事" 真的吗 03/07 11:00
4F:推 Luos: 我记得1.0好像没有indexOf当初让我很难过 03/07 11:08
5F:→ Luos: 幸好2.0就加进去了 03/07 11:08
6F:推 femlro: 苹果推新的东西的速度跟能力>>>>GOOGLE 03/07 13:02
7F:→ femlro: 光看OS版本就知道了 03/07 13:02
8F:→ dreamnook: 同意 03/07 13:04
9F:推 darktt: Swift完全无法独立使用纯C的Code,像是MD5编码 03/07 13:09
10F:→ darktt: 尤其是底层的CoreFundation的物件,使用的难度会增加不少 03/07 13:11
11F:推 genesic: 原po现在开始学,两年毕业後swift更成熟刚好可以用 03/07 13:36
12F:推 oneheat: Swift用C/C++要透过wrapper,相对起.m/.mm作法麻烦多了 03/07 16:05
13F:→ oneheat: 不过单纯就作UI这件事情来讲,Swift比OC强大多了 03/07 16:06
14F:推 fishfish1314: 我是相反 不知道要不要去把oc补起来.. 03/07 18:33
15F:推 justben: 会ObjC的转Swift速度超快,重点还是背後的原理 03/07 20:08
16F:推 EQQD: Swift有methid swizzling? 03/07 20:09
17F:→ EQQD: o 03/07 20:10
18F:推 EQQD: 虽然我喜欢Swift但Obj-C 还是有东西swift做不到 不过swift 03/07 20:13
19F:→ EQQD: 进步超快 03/07 20:13
20F:→ yuanruo: swift 有method swizzling 但是不能玩runtime,C的东西 03/07 21:02
21F:推 nurockplayer: 我是先学SWIFT才学Objective-C 反而习惯OC了 03/07 21:52
22F:→ Daidouji: 总觉得过度神化了 03/07 22:32
23F:推 Argos: 说神化是有一点XD 不过Swift一整个看起来就是Apple很明显是 03/07 23:52
24F:→ Argos: 有备而来的一个语言 以一个新语言来说真的完整到令人惊艳 03/07 23:53
25F:→ Argos: 如果纯粹看细节语法与特色 有经验的人大多会觉得很舒服 03/07 23:55
26F:→ Argos: 会在短时间变得这麽热门绝对不只是因为Apple大力推行 本身 03/07 23:56
27F:→ Argos: 也得到各方高评价也有一定推波助澜的效果 03/07 23:57
28F:推 sdcomputer: swift的话xcode的支援其实不太好..很多写法要避免 03/08 03:12
29F:→ sdcomputer: 否则autocomplete跟syntax highlight会一直跑掉 03/08 03:12
30F:推 sdcomputer: 习惯KVC KVO的话要绕点圈子,然後swizzle是可以的 03/08 03:23
31F:推 sdcomputer: 回到正题,swift可学,production是没有问题的 03/08 03:28
32F:→ sdcomputer: 不过职场上还是以objc为多,考虑合作的话最好都会 03/08 03:32
33F:推 sdcomputer: 然後我觉得懂iOS framework的运作机制比语言本身重要 03/08 03:37
34F:→ sdcomputer: 其他OS也一样,知道怎麽运作去看objc也猜得出在写什麽 03/08 03:48