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
akinoniku
V2EX  ›  iDev

IOS开发学习问题请教:IOS7都要出了,右侧书单还实用吗?IOS跟OS X开发差别大吗? 有一定开发经验的是不是应该看没那么入门的书,或直接看developer.apple.com的教程就好?

  •  
  •   akinoniku ·
    akinoniku · 2013-06-22 13:34:24 +08:00 · 5893 次点击
    这是一个创建于 4168 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,我有php, python, java(android), js, html5的开发经验,如果要看书应该看哪一本?

    想开发一个简单的信息发布restful app(比如twitter, 糗百客户端那种简单的app)

    一周的业余时间能入门开始开发吗?

    十分感谢。
    18 条回复    1970-01-01 08:00:00 +08:00
    seeskyline
        1
    seeskyline  
       2013-06-22 13:37:38 +08:00   ❤️ 1
    直接花个把礼拜看下objective-c与cocoa touch的书,之后直接动手编码就OK了。
    akinoniku
        2
    akinoniku  
    OP
       2013-06-22 13:38:56 +08:00
    @seeskyline 谢谢

    iOS 开发实用书单
    › iPhone App Development: The Missing Manual
    › Cocoa and Objective-C: Up and Running
    › Cocoa Programming for Mac OS X

    请问这三本书还适用于IOS6+吗? 好像都挺旧了
    seeskyline
        3
    seeskyline  
       2013-06-22 13:43:56 +08:00   ❤️ 1
    @akinoniku 其实iOS5,6,7的每一次变化不大,这个你可以学好objective-c语法和基本的sdk之后去查看相关文档,了解下新版本新加的和废弃的接口就可以了。sdk学习当然最好学习最新的,这个看官方API文档就可以了。
    akinoniku
        4
    akinoniku  
    OP
       2013-06-22 13:55:57 +08:00
    @seeskyline 明白了,谢谢
    shiweifu
        5
    shiweifu  
       2013-06-22 13:57:33 +08:00   ❤️ 1
    学学Objective-C 语法,看看斯坦福老头的视频就能上手了。

    推荐俩适合学习的客户端项目:
    https://github.com/gaosboy/iOSSF
    https://github.com/TonnyTao/DoubanAlbum
    akinoniku
        6
    akinoniku  
    OP
       2013-06-22 14:00:42 +08:00
    @shiweifu =v= 有实例可以学习,太感谢了
    akinoniku
        7
    akinoniku  
    OP
       2013-06-22 14:02:26 +08:00
    @akinoniku
    @seeskyline

    顺便问一句, iPhone 5 的开发,MBA 2011 4G内存 会不会有点不够
    offspring
        8
    offspring  
       2013-06-22 14:04:09 +08:00   ❤️ 1
    @akinoniku 没问题
    PrideChung
        9
    PrideChung  
       2013-06-22 14:06:39 +08:00   ❤️ 1
    我学iOS开发就没买过一本书,斯坦福老头+WWDC视频+raywenderlich.com就够了,iOS进化太快,两年前的书都嫌旧。
    akinoniku
        10
    akinoniku  
    OP
       2013-06-22 14:17:34 +08:00
    @offspring 谢谢

    @PrideChung 看书应该比较快(天啊我太浮躁
    funcman
        11
    funcman  
       2013-06-22 14:43:05 +08:00
    我初学。我觉得,你现在做iOS开发,能接触到的,貌似除了XCode比较新,硬件参数比较新,库上还是用5之前的。因为要考虑到老机器老版本。

    一天之内就可以写个demo,毫无问题。但是写完整的东西,遇到的坑应该不是一两周能搞定的。
    毕竟这东西和PC不一样。
    akinoniku
        12
    akinoniku  
    OP
       2013-06-22 14:50:06 +08:00
    @funcman 唔。。我相对的没什么PC开发经验,都是web的,而且我只在大学上课的时候学过C,没用过C做任何项目,对内存管理没什么概念,估计会学的比较难受。
    funcman
        13
    funcman  
       2013-06-22 15:24:02 +08:00   ❤️ 4
    @akinoniku 内存管理没什么神秘的。申请了就得释放,谁来释放以及什么时候释放。C都是自己手工完成。新的语言基本上都有自己的一套方便的东西。

    一个对象实例,会在出生时,申请一份内存空间。当这个对象完成它的使命时,就可以释放掉它占用的空间。对象存在作用域中,一般来说,出了作用域,这个对象就不需要了,可以删了。还有种情况,这个对象有其它作用域中的引用。就是说其它作用域中,有指向同一内存空间的一个东西。那么这时候,这块内存空间就不能随便释放了。必须等到没有东西指向它(即引用它)时,它才可以被释放。那么怎么知道有没有东西引用这块内存呢,就可以用个计数器。内存刚申请时,计数器为1,引用一次,加1。释放时(主要是出作用域时的隐性释放),先给计数器减一,等计数器为0时,才真的去释放这块内存。这就是内存管理上的引用计数技术。在ObjC中,有设计好的计数器和语法方便你使用这一技术。而C++这种原始的语言,需要自己写计数器,需要手工减1(也可以用一些语法特性把这事弄简单点)。

    Java则使用了重型的扫描式垃圾回收,所以它的内存释放总是不那么及时。

    引用计数是目前最好的内存管理技术,方便、高效、可控。而且,没有这个技术,想实现离散的对象控制,只能用别的GC技术了。

    不过,自动引用计数是5开始才有的东西。5之前得自己动手。
    PrideChung
        14
    PrideChung  
       2013-06-22 15:41:52 +08:00   ❤️ 1
    @funcman

    iOS4也能用ARC,只是不支持weak引用

    ARC is supported in Xcode 4.2 for OS X v10.6 and v10.7 (64-bit applications) and for iOS 4 and iOS 5. Weak references are not supported in OS X v10.6 and iOS 4.

    鉴于iOS6的高占有率,我最近自己做的项目已经要求最低iOS 6.0了,不再考虑兼容问题。本来选择iOS开发就是不想像Android一样苦逼地守着一个过气版本做适配,iOS7正式出来以后我也很可能会放弃iOS6的支持。
    akinoniku
        15
    akinoniku  
    OP
       2013-06-22 16:02:14 +08:00
    @funcman 谢谢,说的非常清晰


    @PrideChung IOS5或以下的应该多数都是越狱用户吧
    PrideChung
        16
    PrideChung  
       2013-06-22 16:30:30 +08:00 via iPhone
    @akinoniku 一般不是越狱的就是不怎么在意手机的,反正都不是好伺候的主。特别是有些越狱的不给钱就算了,装了个360手机病毒(我没打错字)害得app闪退了回过头来还给你的app打1星,独立开发者经不起这么折腾,干脆通过要求最新的系统版本来躲开他们。
    我在做外包的时候也发现了类似的规律,那些出价小气的,对项目不怎么关心的客户往往最难伺候。
    krafttuc
        17
    krafttuc  
       2013-06-23 10:53:47 +08:00   ❤️ 1
    @PrideChung 握手!看完CS 193P,再加点资料就可以动手做了,应用开发贵在时间啊。
    dongk
        18
    dongk  
       2013-07-04 16:45:15 +08:00
    推荐一本 Beginning iOS 6 Development ,我在Mac Kindle上看的,边看边敲代码,遇到看不懂的代码就查一下Objective C语法手册。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3269 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:38 · PVG 20:38 · LAX 04:38 · JFK 07:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.