开始学 ios 开发 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
rcmerci
V2EX    iDev

开始学 ios 开发

  •  
  •   rcmerci
    RCmerci 2014-12-01 16:35:28 +08:00 6496 次点击
    这是一个创建于 3976 天前的主题,其中的信息可能已经有所发展或是发生改变。
    不会oc
    有什么建议吗?是直接上swift吗
    另外我不打算买书看, 直接看网上的资料。
    29 条回复    2014-12-02 17:26:25 +08:00
    datou552211
        1
    datou552211  
       2014-12-01 16:49:18 +08:00
    同求告知
    neargle
        2
    neargle  
       2014-12-01 16:52:36 +08:00 via Android
    有苹果电脑吗?我觉得ios的开始都是有一个苹果的电脑和系统←_←
    GDGshanghai
        3
    GDGshanghai  
       2014-12-01 16:58:49 +08:00
    @datou552211
    http://www.v2ex.com/t/149588
    可以报名参加 iOSCon,跟着大牛学 Swift
    linKnowEasy
        4
    linKnowEasy  
       2014-12-01 17:20:05 +08:00
    网易公开课 ios7
    知乎 http://zhuanlan.zhihu.com/kidscoding 入门
    boom11235
        5
    boom11235  
       2014-12-01 17:32:10 +08:00
    我也想学,想直接上swift了...
    zapper
        6
    zapper  
       2014-12-01 17:35:30 +08:00   1
    至少现在,oc的第三方库要比Swift的多
    不过oc和Swift可以混编,还是了解一下oc的好
    ipconfiger
        7
    ipconfiger  
       2014-12-01 17:42:15 +08:00
    CoreData在swift下有坑,昨晚上被坑到1点,幸亏爬出来了
    favormm
        8
    favormm  
       2014-12-01 17:45:06 +08:00
    教学费,我带你。 ^V^
    wezzard
        9
    wezzard  
       2014-12-01 17:52:42 +08:00   2
    如果你不解 C,那你是一下 Objective-C,因上很多例子都是 Objective-C的,你如果深入解 C 的,那看懂 Objective-C 代且理解到 Swift 和 Objective-C 行的不同很容易。

    另外,Swift 和 Objective-C 的特性互不完全覆,比如 Swift 完全遵 Liskov Substitution Principle,致使你要 override superclass 的 property 型其原先型的承者是不行的。又比如在 Swift 中使用泛型致 Objective-C 框架中派生出的型完全 Swift 化,法再使用 NSCoding 行 persistent。又比如 Swift 的象建法致非常不好 class cluster,我已用 compositor 模式替代了所有的 class cluster。

    如果你想精通 iOS ,Objective-C 是不可的,因果的根在那。而以 Swift 行的特性,果完全把所有框架移到原生的 Swift 上是不可能的。
    wezzard
        10
    wezzard  
       2014-12-01 17:56:46 +08:00
    @ipconfiger 啥坑?
    /table>
    guitarkitten
        11
    guitarkitten  
       2014-12-01 17:58:56 +08:00
    raywenderlich不谢。
    amon
        12
    amon  
       2014-12-01 18:08:35 +08:00   1
    建议:书中有很多网上没有的知识。
    ipconfiger
        13
    ipconfiger  
       2014-12-01 18:08:38 +08:00
    @wezzard models创建了subclass用oc的方式要报错哦
    4everLoveU
        14
    4everLoveU  
       2014-12-01 18:26:18 +08:00
    感谢楼上的分享
    chmlai
        15
    chmlai  
       2014-12-01 18:30:42 +08:00   1
    看你学来干嘛, 学来玩可以从 swift 开始, 学来招工作必须从 objc 开始.
    jox
        16
    jox  
       2014-12-01 19:17:35 +08:00   1
    这是一个垃圾问题,但是现在很无聊。

    我的建议是swift也好,obj c也好,都无所谓,能写出好的应用就是胜利,另外既不会obj c也不会swift但是倾向学习swift的新手们是不是大多数之前就没有多少编程经验呢?

    之前有过其他平台编程经验的朋友也会更倾向于学习swift来学习iOS开发吗?如果是,理由是什么呢?如果只是为了用来开发应用的话,学习obj c用不了多少时间啊,我只花了不到半天的时间看了下苹果的这个文档:

    https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html

    基本上就没有再看过关于obj c的资料了,在学习iOS开发之前我学习过C,Javascript,python,lua,emacs lisp, scheme 还有个我一下想不起来名字了,只用过前三个做过实际的项目,其他的都是因为需要读某些源代码以修改软件的配置或者看书的时候才了解了一下,达到目的之后就没再接触过了,其中就C花的时间最长,花了好几个月,因为是第一个学的编程语言,而且还得学习硬件相关的知识,我反正觉得如果只是开发普通的web或者移动应用的话,我已经不需要花很长时间来学习某个编程语言了,觉得都差不多
    yxzblue
        17
    yxzblue  
       2014-12-01 19:22:13 +08:00
    我想知道PO主从啥语言想转去iOS开发的...
    rcmerci
        18
    rcmerci  
    OP
       2014-12-01 19:37:50 +08:00
    @yxzblue 很多语言都会一些, 个人猜测ios开发最要紧的应该不是语言把。
    jox
        19
    jox  
       2014-12-01 19:50:38 +08:00   1
    @rcmerci 是的,我觉得理解iOS的各个组件是如何工作的,开发者可以怎么灵活地应用苹果为开发者提供的这些组件,这些是更重要的,但是这却是不容易的,要阅读大量的资料,并且需要不断地实践和从错误中吸取教训。

    如果非要选择编程语言的话,假如现在的我要学习iOS开发但是既不会obj c也不会swift,我会选择obj c,因为我是机会主义者,新出来的编程语言都要观察一段时间才会好用甚至能用,现在我只用被证明可以经得起考验的编程语言来构建我的应用。另外obj c表达力足够,该有的都有,并没有太严重的缺点,完整的高级抽象类型,第三方的代码库,一些好用的设计模式的支持,同时兼容C可以直接调用底层的C接口,哦,别忘了还有可爱的lambda,可能是我接触时间还不够长,我不明白apple开发swift的动机是什么,难道是因为obj c太嗦了?
    wezzard
        20
    wezzard  
       2014-12-01 20:15:52 +08:00   1
    @jox write less, do more
    IvanLing
        21
    IvanLing  
       2014-12-01 21:34:33 +08:00   1
    raywendrlich 的Apprentice 的4个app完成了,基本可以算是入门了
    Edward
        22
    Edward  
       2014-12-01 22:27:31 +08:00 via iPhone   1
    曾经有一个完全不会弹吉他的哥们问我,我想学卡农,其他的都不用,得花多长时间?我说我也不知道,既然想学就跟着练吧。三个月过去之后,他放弃了。

    不知怎的,楼主的问题让我直接联想到这些。其实按部就班来,我当时学吉他三个月的时候,弹唱个花儿乐队的歌都没问题了,古典里爱的罗曼史基本上也能弹下来。但像我哥们那样学,也就这样了。

    这是题外话。我特别想知道楼主的初衷。楼主想越过oc,越过编程,可以,有很多应用实现起来特别简单,有时候只要英文好一点或者悟性高一点就能搞出个 APP 来,只是玩玩的话,无所谓,看看说明书和别人的源码就行了。要是想以后从事这方面的工作呢,还是一步一步学过来吧,你说到不看书,我有点孤陋寡闻,我认识的牛人都是博览群书的,没听说过谁光靠读网上的东西就牛起来了的。学东西,切忌浮漂,眼高手低,楼主想找个捷径,这会很不靠谱。

    最后祝楼主好运。
    Yien
        23
    Yien  
       2014-12-01 23:24:11 +08:00
    同问
    roamlog
        24
    roamlog  
       2014-12-01 23:26:26 +08:00   1
    此类主题真是开了又开啊,如果我再扔我那篇 如何从 0 开始学 iOS 开发(漫步版) - 漫步 - http://readful.com/post/10191451826/0-ios

    会不会出事,。。。
    rcmerci
        25
    rcmerci  
    OP
       2014-12-01 23:29:24 +08:00
    @Edward 谢谢你的回答,可能你理解错了我的意思。。。
    我没说要越过oc, 只是来v2问问是从oc开始还是swift
    我说的“不打算买书看网上资料”,是因为ios方面的书一般比较滞后, 而是来问问直接看官方的文档是否可行(貌似我的问题说的太简要了,容易误会)。我还真没有想找捷径的意思,嘿嘿。
    另外是想改改自己买书如山倒的恶习。。。。
    rcmerci
        26
    rcmerci  
    OP
       2014-12-01 23:29:43 +08:00
    @roamlog 哈哈不会
    walkingway
        27
    walkingway  
       2014-12-01 23:33:57 +08:00
    看官方各种guide就够了,raywenderlich挑些感兴趣的专题看,基本就能撸App了
    USCONAN
        28
    USCONAN  
       2014-12-02 00:33:50 +08:00   2
    零基的我人建可以 Swift 入手,可以少一些程中的挫感,提升信心。
    材料的就果官方的那本算是比完美的,iBooks 商店免下,可以合 Github 上中文本一起看。要不了多,入之後就可以通做一些小西一啃 Library 一遍 OC 了。
    因程言的思共同性,候 OC 比零基始 OC 更容易上手。

    其 iOS 整的核心其就是那些 Library,你可以把他看作是木,而言反倒不是最重要的,可以把他看作是堆木要用到工具。
    所以基本上就是把 https://developer.apple.com/library/ios/navigation 啃透。
    可以活自如的 Xcode 面那百兆的 Library 快速找出某西解。就算「」了。

    「」意味著你得了建一世界所需要的所有工具和木。

    至於能搭出一什的世界,就取於你一生的修何如了。


    海,囊底。
    止境,修。
    yunshansimon
        29
    yunshansimon  
       2014-12-02 17:26:25 +08:00   1
    C或者Objc是基础,是普通话,swift是网络流行语。没有纯正的中文基础,你能分辨wo cao的十种含义?另外,不建议初学者现在学swift,因为swift的编辑器xcode还有一堆的bug没解决,出了问题它只能把你往沟里带。建议一定要能用Objc做个图形版的计算器,再开始学swift。@USCONAN推荐的不错,严重推荐苹果官方免费下载版<The Swift Programming Language>深入浅出。有了问题主要在两个方面解决:勤快的去查苹果官方文档(肯定有解答,但不知道会放在哪里,找答案也把其他知识顺带着学了),懒的直接Stack Overflow。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2952 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 12:47 PVG 20:47 LAX 05:47 JFK 08: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