美文网首页专注iOS开发
网易云课堂:网易iOS开发工程师直播分享会

网易云课堂:网易iOS开发工程师直播分享会

作者: 腹黑的魔王 | 来源:发表于2017-03-30 11:28 被阅读46次

    一:网易资深“女程序猿”带你认识iOS开发

    1.推荐网站:objc.io

    2.现在公司对iOS开发者的工作经验要求高的原因:公司项目的工期时间一般都比较紧凑,所以都尽量招一个来了就能开工,就能做的开发者。

    3.安卓和iOS用跨平台做好吗?答:安卓和iOS有很多交互习惯都不太一样。最好还是各自按自己的交互习惯写。

    二:从零开始学iOS开发?这里有入门宝典!

    1.入门

    书籍:《iOS编程》《iOS开发指南》,入门材料:https://code.tutsplus.com/series/learn-ios-sdk-development-from-scratch--mobile-14536(讲解各个SDK,及各个SDK的用途)

    2.高级进阶:原理和基础。

    ①.语言

    a.《Effective Objective-C2.0》&编码规范。

    b.Objective-C Runtime。(http://opensource.apple.com/source/objc4/)(Objective-C Runtime Programming Guide)(objc_msgSend实现细节:能为OC的实现有很大帮助)

    c.The Swift Programming Language

    ②.GUI学习

    a.View、Controller、Event、Layout、Draw、Animation(对他们掌握的深度,就反映了开发的熟练程度,因为iOS开发一般都在做这些工作)。

    b.Apple Guide:(View Programming guide、View Controller Programming Guide、Event Handling Guide、Drawing and Printing Guide、Core Animation Programming Guide)(这些Guide讲得很宽泛)。

    ③.Xcode学习

    a.工欲善其事,必先利其器。(一个人对IDE的理解,反映了这个人对这个语言,这个平台的理解深度)。(学任何语言都要重视对IDE的学习)。

    b.Xcode Overview。

    c.Xcode Project Management Guide。

    d.Xcode编译、链接、打包各流程,配置,Xcodeconfig。

    e.Xcode管理多工程、多Target。

    f.熟练使用cocoa pods、plugin。

    g.llvm。

    ④.网络

    a.理解NSURLConnection、NSURLSession、NSURLProtocol。

    b.Apple Guide:(URL Loading System Programming Guide)(Introduction to CFNetwork Programming Guide)

    c.AFNetworking。

    ⑤.多线程

    a.《Objective-C高级编程iOS与OS X多线程和内存管理》。

    b.Apple Guide:(Concurrency Programming Guide)(Threading Programming Guide)。

    ⑥.逆向安全

    a.Keychain Services Programming Guide。

    b.《iOS应用逆向工程》。

    ⑦.学习资源

    a.WWDC session。

    b.objc.io。

    c.需要熟悉原理和实现的开源库。(SDWebImage)(AFNetworking、Restkit)(AsyncDisplayKit/Pop/ReactNative)(ReactiveCocoa)。

    3.知识体系,走向专家:

    内功而非招式(3-5年iOS后,该做什么)(学了这些,如果你不想做iOS了,花很少时间,你就又能成为其它领域的专家)

    ①.数学(基础、高等数学)(数论)(概率论)、《具体数学》

    ②.操作系统

    a.现代操作系统。

    b.操作系统实现。

    ③.链接(Linding)与加载(Loading)。《程序员的自我修养》

    ④.ARM体系架构(汇编)

    a.ARM体系结构与编程。

    ⑤.语言:

    a.Scheme、Racker、Haskell、Prolog…。

    b.C/C++/Java。

    c.《面向对象编程导论》

    d.《编译原理》:龙书

    e.《计算机程序构造与解释》(强烈推荐)

    ⑥.算法与数据结构

    a.《算法导论》

    ⑦.平台编程

    a.《Unix高级环境编程》

    ⑧.设计模式

    a.《代码大全》

    b.《重构》

    ⑨.网络&数据库

    a.计算机网络

    b.数据库

    企业需要怎样的iOS人才:

    a.大公司更看重基础,成长性。

    b.技术热情,不来自于说,来自于行动。

    c.系统学习的能力,多看书,系统的规划技术。(不推荐用看博客的方式作为提升技术的主要方式,书籍养分更足)。

    d.听、说能力。

    e.敢于承担、敢于挑战。(胆大心细)

    答疑:

    1.大公司都看重算法和数据结构吗?

    答:招应届生时,也没啥工作经验,就只有考查基础了,所以会考查数据结构和算法。

    2.同时学几门语言,会学混吗?

    答:同时学几门,并且同时用几门,确实有可能学混。但是,你学一门,并只用这一门,并一门心思思考这一门语言,就不会学混。

    3.架构、逆向工程师很火,iOS就不行了。

    答:iOS没啥好逆向的,已经比较安全了。

    架构:iOS没啥好架构的,将苹果那套东西用起来就行了。国内也没几款App复杂到需要架构的程度。

    想学架构,不如在看看其它领域,如看看安卓、后台开发,这样,谈架构,才有更大的发展空间。

    4.苹果为什么推出Swift替代OC?

    答:OC是一门很老的语言,80年代推出的语言。很多特性都非常老。

    Swift很多对安全的考虑,对性能上的考虑,都比OC好。是一门更现代化的语言。

    相关文章

      网友评论

        本文标题:网易云课堂:网易iOS开发工程师直播分享会

        本文链接:https://www.haomeiwen.com/subject/govuottx.html