新闻中心> 文章详情

南京iOS培训分享|小白如何学习iOS开发?

2016年08月01日

  最近一段时间,很多小伙伴都咨询南京万和iOS培训中心,问小白要如何学习iOS开发,这里南京万和iOS培训整理了一个清单,介绍了在成为一个iOS入门级开发者的路上你需要知道的东西。


  Swift还是Objective-C?


  同样,南京万和iOS培训没有说你必须对这两门语言的认识要到能够写一些博客,或者教课的程度,但你至少应该能够在不经常查阅语法的前提下用其中至少一种语言来写代码。API是一个难题,尤其是在iOS中,框架每年更新,方法经常被废弃。可以说在Safari标签中放入Apple Documentation以便工作中查阅是稀松平常的事情。API的东西多到难以记住全部。你只需要能够在没有任何外界帮助下写一些类、结构体、循环、函数(类方法和实例方法),以及定义变量和表达式就足够了。


  如今我们处在一个很奇特的时代,雇佣只懂Objective-C的人也是能够被接受。Swift还很年轻,除非你被一家拥有很多项目更新流转的公司聘用,否则你仍旧会在大部分时间使用Objective-C做开发。尽管如此,有很多公司愿意冒险使用Swift,而且南京万和iOS培训不认为在你只会Swift的前提下找到一个工作会比较困难。关键是你要精于你所选择的语言,并对另一门语言的了解至少是能够到看得懂代码。


  框架和API


  正如南京万和iOS培训之前说的那样,没有必要记住iOS所有的API,但你应该有一个好的切入点。


  UIKit (UITableView、UIButton、UINavigationController以及GestureRecognizers)


  Interface Builder (Storyboards、Segues和奇怪的.xib)


  基本数据类型 (NSArray、NSDictionary以及NSString),与之对应的Swift中的类型 (Array、Dictionary 和 String),HTTP API (NSURLSession, 基本的 REST API 概念, 用NSJSONSerialization解析处理JSON)


  Grand Central Dispatch (GCD、NSOperationQueue)


  持久化 (NSCoding、NSUserDefaults和CoreData)


  内存管理 (什么是 循环引用 以及 ARC 基础)


  开发模式


  模式很重要,它能让开发更轻松,让你的代码更整洁。确保你了解最基本的模式,它们被广泛使用在iOS框架中,不了解这些你很难在开发中施展拳脚(还有很多其他的模式,但这些可以作为你刚开始学习的起点)。


  代理 (这是很多iOS的API会涉及到的,你必须清楚地理解它)


  Model View Controller (这里并不认为Apple在鼓励使用最好的MVC分离上做的足够出色,但如果你花时间正确实践它,它会是一个能帮助你提升代码质量的重要模式。同样,基本上都会出现在任何面试问题的列表里。)


  Subclassing (几乎所有用户接口都是某个类的子类)


  单例 (这个模式绝对被滥用了...请有节制地使用)   有疑惑,请咨询南京万和iOS培训


  熟悉开发环境


  这看起来像是显而易见的,但如果你没有Mac电脑,去买一台!如果你没有iOS设备,去买一台!如果你没有使用过或者不熟悉一个设备却在为它做开发,这会变得相当困难。同样,没有Mac电脑来做开发也会很困难。我的第一台Mac设备是2009款的13寸MacBook Pro配上第一代iPod Touch。从低端设备入手是非常合适的。我在这两个设备上投入了将近1500刀,但从长期看来确实值这个价。


  UX/UI


  通常来说,UX和UI是设计师负责的内容,但是你应该理解Apple人机界面指南。你需要知道原型和线框图之间的区别,并在开发过程中使用这两者。


  工具


  你应该熟练掌握一些常用的开发工具。  有疑惑,请咨询南京万和iOS培训


  Xcode (必须的)


  Git Source Control (一些公司可能使用的是Subversion或者Mercurial,但git对于你入门来说足够了。)


  JIRA 或 Bugzilla (以JIRA为例,你不需要成为使用它的专家,但你至少要熟练到不像第一次接触它时那么恐惧。)


  CocoaPods (这是一个用来管理依赖和第三方代码的工具,我从未听说有不使用这个的公司。)


  主见


  对iOS、Swift、甚至一个特定的API持有自己的观点是一个很好的给面试官了解你对某一块知识理解深度的方式(对iOS、Swift、甚至一个特定的API持有自己的观点可以让面试官很好地了解你对某个开发主题的深入情况。)。这也能让我们看到你的学习热情。如果你在一场面试中被问到:"从你的角度如何看待Swift?"答:"还不错",这并不是正确的回答,你应该告诉他们你对optional的态度,你是如何使用一个新语言特性的。这里南京万和iOS培训并没有列举出很多错误的回答,最重要的是要言而有物。


  学习档案


  行胜于言。如果你真的很注重一场面试,把你的一些简单的app整理在一起(如果能在App Store中启动它们就更好了)。展示独立完成一个项目让你的话语更有分量。这是南京万和iOS培训极力推荐的方式。GitHub也是一个很好的平台,但如果你展示你的GitHub,尽量让你的代码对于那些想测试一下的面试官来说能够轻松编译。


  计算机科学基础知识


  南京万和iOS培训不认为获得一个计算机科学博士学位是上手移动应用开发的必要条件,它应该被归在"绝对有帮助"的一类,但理解最基础的数据结构和算法就能让新手开发者防止被自己的代码绕进去。因此,对于初学者而言,想要系统的学习的话,相对比较推荐参加相关的课程培训,有老师现场讲解,不会可以及时问老师。


  总结


  如果你想要更多的资料来帮助你迈出第一步,可以多关注南京万和iOS培训。最后加上的一点就是 JUST DO IT!当下iOS开发者需求量很高,如果你能让你的技能达到一个不错的层次,你不会长期处于失业状态。这是一份让你磨练工程技能和创造力的工作。


上一篇下一篇
按时发顺丰

技术交流群

Java大数据交流群560819979    加入
Python技术交流群595083299    加入
Oracle技术交流群595119011    加入
Web前端技术交流群604697610    加入
Huawei技术交流群482919361    加入
Redhat技术交流群587875348    加入
UI设计技术交流群511649801    加入
Cisco技术交流群596886705    加入
IT运维技术交流群605888381    加入