![]() | 1 crisfun 2016-06-27 11:09:55 +08:00 首先,是新东西,必然有一波吹 其他的还是请 PL 专业人士,实际用户来说说的好 |
2 yagao0o 2016-06-27 11:21:11 +08:00 最重要的是: Swift 现在是亲儿子阶段…… 使用的便利性要高于 Objective-C ,毕竟设计时就是为了取代它。 |
![]() | 3 chaoxn 2016-06-27 11:23:00 +08:00 其次,语法简洁,必然有一波吹 其他的还是请 PL 专业人士,实际用户来说说的好 |
![]() | 4 DearMark 2016-06-27 11:23:46 +08:00 Objective-C :我还可以再战 10 年。 |
![]() | 5 ethanlu 2016-06-27 11:24:07 +08:00 作为一个 0 基础入门的, swift 比起 OC 相对容易懂,主要是读起来很像英文句子。 |
![]() | 6 karonl 2016-06-27 11:24:19 +08:00 via iPhone 开源啊,未来就很有变数 |
7 SuperMild 2016-06-27 11:27:18 +08:00 现在新出各种的语言主要注重两个方面的改进,写小程序时有甜度适中的语法糖,写大程序时有合理的特性减少出错可能性(比如 Optional Type )。 |
![]() | 8 ichanne 2016-06-27 11:37:47 +08:00 via iPhone 有些新特性 OC 里面没有,比如面向协议编程,当然, Swift 还有个致命的缺点,不能方便的支持热修复。 |
9 c447279704 2016-06-27 13:12:50 +08:00 Swift 致力于成为一门通用的语言,这点和 OC 有根本的区别 1OptionalType 更安全 2 不像 OC 那样嗦,很简洁,少打很多没用的字 3 强大的枚举和 Where 4 泛型 5 开源,随时加入新的 idea |
![]() | 10 garipan 2016-06-27 13:37:22 +08:00 亲儿子这点太重要了 看一下近几年 OC 和 Swift 的排名变化就知道了 只要苹果一天还占据市场主导地位, swift 就一天有优势 而且还开源了,苹果是铁了心要把 Swift 做大了 虽然现在 Swift 还有很多缺点,但是按照目前的发展速度,不用几年必然全方面超越 OC |
![]() | 11 expkzb 2016-06-27 13:46:58 +08:00 ![]() swift 能令 objective-c 程序员更值钱 |
![]() | 12 beimenjun PRO 大势所趋, Swift 能不能起来不知道, O-C 按照剧本应该要凋零的。 |
![]() | 13 walkingway 2016-06-27 14:11:33 +08:00 ![]() 那些说 Swift 比 OC 简单的只是入了个门吧 |
14 nicevar 2016-06-27 14:52:30 +08:00 趋势是 swift ,代码能简洁点,容易上手,其他的优势真想不到了 会 swift 能做 iOS 开发,不过实际的工作中不会 oc 可能很多问题解决不了 |
15 youxiachai 2016-06-27 14:57:01 +08:00 反正.你搞 ios..两个都要学...orz |
17 xhowhy 2016-06-27 16:03:23 +08:00 swift 不仅具备 oc 的面向对象、动态等传统特性,还具备函数式编程、泛型等比较新的特性 |
18 shawnclovie 2016-06-27 16:17:58 +08:00 等 swift 能和 c++互操作了, OC 也就只剩可以随便用 method swizzing 这点“优势”了。 |
![]() | 19 blue7wings 2016-06-27 16:47:10 +08:00 我尤其喜欢 swift 的语法,我认为是最为优雅的。 |
20 jackisnotspirate 2016-06-27 16:53:38 +08:00 用了 swift 就回不去 oc 了。 |
![]() | 21 dantegg 2016-06-27 16:57:45 +08:00 简单[笑 cry] |
![]() | 22 chisj 2016-06-27 17:06:10 +08:00 @jackisnotspirate 然而我用了快 1 年,又要回去了,蛋疼。 |
![]() | 23 MountainRain 2016-06-27 17:09:07 +08:00 其实没有几家公司招 swift 的 |
24 warcraft1236 2016-06-27 17:11:26 +08:00 OC 为啥不是亲儿子呢?不是乔布斯从他创办的公司带来的吗 |
![]() | 25 qw0258 2016-06-27 17:28:02 +08:00 swift 是一种包含了更多现代化编程语言特性的语言 OC 是老古董 |
![]() | 26 araraloren 2016-06-27 17:34:45 +08:00 @yagao0o ~~从来没权威人士说或者官方人士说 swift 就是为了取代 oc |
![]() | 27 LMkillme 2016-06-27 17:43:34 +08:00 swift 相比 OC 先进,与此同时,也难多了,说 swift 简单的是不是只看了新闻? |
![]() | 28 Soar360 2016-06-27 17:56:18 +08:00 Swift 优雅?你是没看过 C#吧? |
![]() | 29 droiz 2016-06-27 18:05:49 +08:00 语法清晰简洁,具有更多现代化语言特性,你学了就知道了 |
![]() | 30 murmur 2016-06-27 18:09:02 +08:00 说 swift 比 obj-c 好大概和 Javascript 比 java 优雅是一个想法 |
![]() | 31 wweir 2016-06-27 19:14:46 +08:00 via Android 函数式在正确性、多核利用等方面相对其它范式要高出不少 |
![]() | 33 MartinLv 2016-06-27 21:22:16 +08:00 语法简洁是最不重要的…… swift 真正有吸引力的是新的编程范式的支持,函数式、泛型、面向协议、还有一定的模式匹配能力。语言的表达能力甩 OC 几条街。另外静态方法调用性能比 OC 好。但是 OC 的 runtime 用不了了,热修复、 AOP 不如以前好搞。 |
![]() | 34 sensui7 2016-06-27 21:26:00 +08:00 有未来 |
![]() | 35 wizardforcel 2016-06-27 21:29:50 +08:00 把 oc 那些看着不顺眼的语法都改进了一番。 你可以说语言只是一层皮,但是它毕竟是我们平常用的东西,美观与否会影响我们的生产力。 |
![]() | 36 7wN5407klUw768m0 2016-06-27 21:57:10 +08:00 struct RecursiveFunc<F> { let o : RecursiveFunc<F> -> F } func Y<A, B>(f: (A -> B) -> A -> B) -> A -> B { let r = RecursiveFunc<A -> B> { w in f { w.o(w)($0) } } return r.o(r) } let factorial = Y { (f: Int -> Int) -> Int -> Int in { $0 <= 1 ? 1 : $0 * f($0-1) } } println(factorial(10)) |
![]() | 37 free9fw 2016-06-27 22:30:24 +08:00 pop , enum 、 struct 、各种简短的语法,不用写分号。快不快不知道,但对于我来说,写的东西变很少很少了,变很爽 |
![]() | 38 everettjf 2016-06-27 23:09:47 +08:00 虽然没学 swift 。但感觉更多现代化编程语言特性意味着更复杂(或者叫难学)。 目前感觉 OC 能满足需求, swift 学习计划就一直搁置。 |
![]() | 39 DSKcpp 2016-06-27 23:19:03 +08:00 学习难度比 OC 大 |
![]() | 40 ChengLuffy 2016-06-28 00:12:12 +08:00 范型很爽,但从编程这个过程来说,我感觉 swift 比 OC 有快感。。。个人感受 |
![]() | 41 mudkip 2016-06-28 00:14:18 +08:00 写代码的幸福感倍增。 这个理由还不够么? |
42 hstdt 2016-06-28 00:48:42 +08:00 via iPhone 写起来开心,效率高,舒服。 |
![]() | 43 IvanLing 2016-06-28 01:00:44 +08:00 via iPhone 请在项目中使用 swift 的举个抓 |
![]() | 44 nino789pzw 2016-06-28 01:00:50 +08:00 |
45 wohenyingyu01 2016-06-28 01:11:28 +08:00 via iPhone 调用不了 c 库。我们的 ios 代码 80%都是 C … |
46 rqzheng2008 2016-06-28 02:47:11 +08:00 swift 3.0 API 又大改了,苹果设计语言怎么就不考虑一下向后兼容呢 |
![]() | 47 Perry 2016-06-28 03:13:49 +08:00 易上手,新手写起来舒服 一直在更新 |
![]() | 48 chai2010 2016-06-28 06:42:24 +08:00 via iPhone objc 一直是补丁语言( c++也是一样的问题),它们虽然抱住了 c 的大腿,但是也包含了 c 的诸多问题,语言不能自由健康的发展进化。 objc 是该进垃圾桶了。 swift3 语法没多大变化, API 部分也只是转换规则做了调整。最期待的还是 spm 能早日支持 iOS |
49 RqPS6rhmP3Nyn3Tm 2016-06-28 07:07:44 +08:00 via Android Swift :从精通到入门 |
![]() | 51 shiltian 2016-06-28 08:45:13 +08:00 插个题外话… iBooks 国区不可用以后,最新的 Swift 那本教程去哪找呀… |
![]() | 52 xsown 2016-06-28 08:56:54 +08:00 用过 swift ,会用 swift 的,一定不会再愿意用 oc 了 觉得 swift 是吹的,都不是 iOS 程序员,或者是根本没好好用过 swift 的人 |
![]() | 53 chai2010 2016-06-28 09:17:50 +08:00 说 Swift 不兼容升级导致“从精通到入门”,估计有这几类: 1. 调侃; 2. 精通程度到 println 函数; 3. 非 iOS 开发者 |
![]() | 54 Ixizi 2016-06-28 09:21:23 +08:00 |
![]() | 55 fatestigma 2016-06-28 09:23:00 +08:00 Swift 语法比 Obj-C 简单非常多,对于新手入门简单,这应该也是苹果希望的。另外作为苹果的亲儿子和 IBM 的干儿子,感觉发展还是很有劲头的吧。 另一方面,好像 Obj-C 在 06 年开始进入 2.0 之后也没有什么大的更新了,而 C 、 C++ 还在发展之中,而 Swift 现在更新还是非常频繁的,可以进一步支持各种现代化语言的特性。 |
![]() | 56 PublicFourWord 2016-06-28 10:08:29 +08:00 no C in Swift |
![]() | 57 xiandao7997 2016-06-28 10:22:15 +08:00 |
![]() | 58 chuhemiao 2016-06-28 10:25:52 +08:00 @Taojun0714 R? |
61 quxw 2016-06-28 13:54:46 +08:00 没用过 obj-c 但对其冗长的命名规则让我望而却步 |
![]() | 62 holy_sin 2016-06-28 13:58:13 +08:00 ![]() 枚举 |
![]() | 63 7wN5407klUw768m0 2016-06-28 15:29:29 +08:00 @chuhemiao swift 写的 Y combinator …… |
![]() | 64 chuhemiao 2016-06-28 15:36:55 +08:00 @Taojun0714 嗯,还以为是 rust ,看着都差不多。。。 |
![]() | 65 jason19659 2016-06-28 16:36:17 +08:00 easy to use |
![]() | 66 xAx 2016-06-28 16:56:57 +08:00 降低公司员工工资支出,进而提高公司利润 |
![]() | 67 xAx 2016-06-28 17:02:42 +08:00 从语言本身分析一门商业公司推出的语言的好坏没任何意义,无利不起早 |
68 crashX 2016-06-28 17:22:39 +08:00 说 swift 比 OC 简单的就跟说 scala 比 java 简单一样,估计没做过项目吧。还有 OC 的 runtime 和 KVO ,这俩纯 swift 目前没有,是硬伤。 swift 的新特性可以使代码更严谨,并不能做太多的事情。当下而言纯 swift 的代码不如纯 OC 能做的事情多。 |
![]() | 69 SunnyCoffee 2016-06-28 18:02:36 +08:00 oc 的历史遗留问题太多了吧。 nil,NSNull,NULL,true,YES ,作为个新手,真是把人绕晕了。 case 不支持 String ,没有 java 的 @Override ,@Deprecated 。 很多东西,单纯的靠升级很难解决,还不如直接换了。 |
70 poetowen 2016-06-28 20:52:36 +08:00 Safe Fast Modern |
71 n6DD1A640 2016-06-28 23:42:03 +08:00 closure |
![]() | 72 webjin1 2016-06-29 01:32:42 +08:00 via Android 看名字越短越好,何况它还带- |
![]() | 75 zhangweifang 2016-06-29 09:39:13 +08:00 swift 语言,学习的时候感觉好多语言特性设计的真是正确的,但是一到用的时候就不知道怎么下手,相对 ObjC 更直观, swift 更抽象的感觉。 |
76 Override 2016-06-29 10:14:07 +08:00 我仿佛又听到有人在背后 @我 @SunnyCoffee |
77 d553296416 2016-06-29 13:33:32 +08:00 swift 动态部署能力很差。。。不像 oc 有 reactnative wax weex luaview jspatch 等 |