作者denkeni (Denken)
看板MacDev
标题Re: [问题] 给自己一年学swift/objective-c?
时间Fri Dec 4 03:07:45 2015
※ 引述《starcraftiii (星海争霸三)》之铭言:
: 有个疑问
: 如果你想要从事app开发的工作
: 你读硕士干嘛?
: 现在直接投入业界去学不是更理想?
: 然後基本上
: swift会比较好
: 渐渐的swift会取代掉旧的语言
: ※ 引述《v77978 (chiu1213)》之铭言:
: : 大家好 :)
: : 因为对ios app满有兴趣的
: : 想在硕士期间除了做学校研究以外(非ios程式)
: : 还想自学且多练习ios程式部分
: : 以後也比较想从事ios的相关工作
: : 不晓得应该继续写我现在常用的swift还是objective-c这边也要看
: : 如果想从事ios相关工作 还有没有什麽是该注意且可以自己先做功课的
: : 先在此谢谢各位了 ><
之前也是念研究所期间,也想过转 iOS 开发,现在也确实是全职开发者了
先写了一年 Objective-C,现在每天使用 Swift 奋战
首先考量就业,业界既有专案,应该几乎都还是 Objective-C
其次合理推估在学期间不会有太多时间可以耗
所以我也推荐先以 Objective-C 来学 iOS 开发
虽然网路上很多新的教学都是用 Swift 来写
不过 iOS 开发有很大部分就是在使用系统内建 API
这些资源累积得很多并不缺
再者,Objective-C 学了转 Swift 不难,Swift 转回 Objective-C 推估复杂得多,
用些点滴时间学更多基础起来会值得
可参考这份教材
https://www.gitbook.com/book/zonble/kkbox-ios-dev/
Swift 在很多方面,的确感觉设计得比 Objective-C 更好
但它学习上的问题不在於此,
首先是整个开发环境实在还远不及 Objective-C 友善
Xcode 在 Swift 专案上就是比较慢也比较不稳定
函数的 callers 列表显示不出来、LLDB terminal 无法自动补完
(Update: 应该是 Xcode 7.3 之後这些都有了)
Swift 常常有些写法是自动补完帮不了你的
这些问题在 Objective-C 都不太有
觉得可能还不太值得在这样的环境上耗学习精力
(但相反地,Swift Playground 就很不错)
其次就是 Swift 实在变动太快了
诚如板友所言:
1F:→ sdyy: swift支援不完整 找个问题解法还分1.0,1.2,2.0,2.1 12/02 20:38
2F:→ sdyy: 去年写的code到今天 早已无法编译 实在不觉得现在的Swift比 12/02 20:39
3F:→ sdyy: 较好 12/02 20:39
4F:→ uranusjr: Swift 的所有版本号前面都应该加个 0. 才对, 太不稳定了 12/02 21:18
今天 Swift 开源了,3.0 版的目标之一:
https://twitter.com/CastIrony/status/672459672280891392
花时间追这种改动可不叫学习啊...
於是经常 Swift 一改版,一堆纯 Swift 的第三方套件也挂了...
5F:推 sdcomputer: 帮Swift补血..Swift的code阅读上较省力,对型态要求 12/02 21:58
6F:→ sdcomputer: 较严谨,对於变数、Function使用方式更友善一点。 12/02 21:59
7F:推 sdcomputer: 底层的东西我不常碰到,所以不太清楚~"~ 12/02 22:08
8F:→ starcraftiii: 我不太清楚你指的底层是多底层... 12/02 23:05
9F:→ yuanruo: 写swift 就不能玩runtime了 ... 12/03 04:12
再提一个最近遇到的
做个 hash 够简单吧,iOS 有内建 CommonCrypto
Swift 专案嘛,现在应该做个 -Bridging-Header.h 也就接上了
但若在 framework 里要用,Xcode 就告诉你:
"using bridging headers with framework targets is unsupported"...
这些(尚)未实作的(底层),应该不是写写练习专案就容易遇到的问题
不过总觉得有心好好学基础与求职,不要浪费这类无谓时间的话
近期还是先从 Objective-C 开始吧
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.62.75.121
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MacDev/M.1449169673.A.457.html
10F:→ yuanruo: 学Swift 有好处 可以开始用Swift写後端了w 12/04 03:36
11F:推 fishead1116: 问一下楼上用Swift写後端的资源 感谢 12/04 08:15
有兴趣了解这议题的,也可以参考这个演讲,讲得很好也挺合我经验
Is It Time for Swift? with Ben Sandofsky (Jan 28, 2016)
https://realm.io/news/ben-sandofsky-time-for-swift
※ 编辑: denkeni (59.120.12.57), 02/16/2016 16:45:29
Update for Xcode 7.3
※ 编辑: denkeni (59.120.12.57), 05/10/2016 14:49:32