Origheart

零基础如何开始iOS开发

零基础如何开始iOS开发

虽然是万事开头难,但是任何行动都比没有行动好。从现在开始,让我们行动起来吧!这一份行动指南,从一开始就让大家通过很Geek的方式走在iOSer成长之路,让大家有一个全局观。个人并不喜欢其他的“从0开始学xxx”的教程,它们总是告诉你第一步该做什么,第二步该做什么,这种教程不是不好,而是让我们没有一种大局观,不知道我们每天做的事情、学的东西能有什么用。而对于我来说,学会任何一种技能,首先需要了解全局,先学会学习,再去学习,然后就是:直接用起来!

这里我将开始行动分为两个部分:软技能和硬技能。在大多数时候,我们都在学习硬技能。但其实软技能更为重要。因为它不仅能指引我们学会App开发,更能让我们始终成长,可以通过软技能去学任意硬技能!因此,比较大的篇幅都在讲软技能。我整理出了一份思维导图,大家可以下载到自己的手机里,经常查阅,激励自己。

一. 软技能

1. 将编程赋予重大意义

李笑来老师说,我们学不好一个技能,是因为这个技能不是我们的刚需,而坚持下去的方法之一就是将编程赋予重大意义。

首先,我们要了解移动互联网发展现状。无处不在的互联网正在影响着各行各业。同样影响着未来生活。比如我们看得见的未来:无人驾驶、人工智能。而这些高新技术背后最核心的技能就是编程。

其次,我们需要明白编程有什么好处。编程不是什么?不是一下子就能学会的,需要付出时间和注意力;不是什么都能做得出来的;不是会编程就会修电脑的!编程是什么?是让电脑按照指令处理问题,使计算机能理解人的意图;是解决某个现实问题的方法。会编程有什么好的?锻炼我们抽象思维能力;锻炼我们逻辑思维能力;处理工作和生活中大量重复性、低效率的工作,节省时间。

最后,我们明白了编程的好处,可以进行换算。比如,现在每天投入的时间,将来可以通过程序节省更多的时间换取注意力。进而可以算出一行代码值多少钱。如果你的一行代码能为自己赚100元,那何乐而不为呢?

2. 学会学习

学会学习,再开始学习!学习编程,归纳以下几个步骤:

2.1 了解全局。

万事开头难,你需要有全局观:iOS编程可以做出运行在iPhone/iPad/iPod/Apple Watch的App。通常一个App并非只需要开发客户端,而且需要开发服务端,为App提供数据及数据存储。

2.2 确定范围。

集中精力明确自己到底要学什么,比如学习Swift基础知识,可以了解一个App做出来需要哪些知识和步骤。

2.3 定义目标。

定义可以量化的目标。比如学习iOS编程,可以自己写出一个日记本App。

2.4 寻找资源。

大量收集各种资料。

2.5 创建学习计划。

可以理解为自己写书时候的大纲。

2.6 筛选资源。

知道了学什么以及什么顺序学,那么就要决定用哪些资源,筛选出最有价值的资源。

2.7 开始学习,浅尝辄止。

快速学习基础知识,立刻开始实际操作。

2.8 动手操作,边玩边学。

这一步没有任何规则,你可以做任何你想做的事情。

2.9 全面掌握,学以致用。

让你找回好奇心来驱动学习。

2.10 乐为人师,融汇贯通。

教是最好的学。“你告诉我的,我都忘了。你教会我的,我都记得。让我乐在其中,我就一定能学会。”

3. 自我营销

绝对要有Geek精神!绝对要重视自我营销!想一想两个实力相当的歌手,一位是在酒吧驻场,一位是流行巨星之间的差距;想一想以后你入职想去的公司,面试官竟然知道你那种感觉;最关键是自我营销能让自己成长的更快。

3.1 打造个人品牌。

明确要传达的品牌信息,创建品牌口号,创建视觉符号(Logo)。

3.2 创建博客。

关于博客的创建,可以关注后续课程,会详细讲述如何搭建博客、获得域名、部署访问。

3.3 为他人增加价值。

这才是自我营销的根本。

3.4 善于运用社交媒体。

比如微信公众号、微博、简书、今日头条头条号。

3.5 百折不挠,越挫越勇。

被看做傻瓜又如何?我们要小步快跑。最终就会产生复利效应!

4. 生产力

生产力的重要性不必说大家也都了解。我们圈子里很多都是笑来专栏的读者,都明白注意力是最宝贵的财富。

注意力 > 时间 > 金钱

这一方法论哪儿都适用!注意力用在哪,哪就有产出。提高生产力,个人总结有如下方法:

4.1 番茄工作法。

这个真的很高效!其实不用过分追求番茄数量,一天能种5个番茄就够高效了。

4.2 对自己负责。

要明白,我并不是看看就算了的,并不是看看就学会了的。一定要做一个有责任心的人。

4.3 要不要多任务并行?

我的做法是停止任何并非真正多任务并行的多任务,不要试图同事做两件费脑力的事情。每天力争在一个时间段只做一件事。花小段时间一次性批量处理小任务:回邮件、修复bug、打电话。真正可并行的任务:费脑力的活动 + 体育运动。

4.4 要明白时间是怎样被浪费的。

戒掉电视、不要无效社交、不参加不必要的会议、不要玩电子游戏,尤其是网络游戏。

4.5 分解任务。

4.6 立刻行动!

任何行动都比没有行动好。

5. 精神

软技能最后一点说说精神。我们要拥有正确的心态。一时学不会,掌握不了并没有什么,大不了读一遍不懂再读一遍,刻意练习。另外,构建一个积极的自我形象也很重要。真正的成长是与人共同进步,多分享,多交流,用自己的行动去影响他人!

二. 硬技能

打磨自己的硬技能是我们长期要做的一件事情。为了让大家有个全局观,简单介绍一下我们需要学习哪些硬技能。

1. 工具的使用

iOS开发最重要的工具(IDE)当然是Xcode。不同于其他平台的开发需要安装各种插件和各种软件配置复杂,为iOS平台开发App只需要在你的电脑里安装Xcode就可以了!熟练掌握了工具的使用可以极大的提升开发效率。
当然了,我们要知道,并不是只有Xcode能开发iOS App,别人问起如果我们只知道有Xcode那就有点low了!😄AppCode也是可以用来开发iOS App的。这只需要了解一下就行,我们绝大多数时候都是用的Xcode。

对于初学者,我们尤其要会使用Xcode中的Playground,后续会介绍这部分内容。

2. 英语

英语能力越强,对学习编程越有帮助。很多国外博客、苹果官方文档都是英文版的。如果你会英语,那真是太好了!

3. 编程语言

Swift语言和Objective-C语言都可以用来开发iOS App。
我们目前先从Swift语言开始讲起,后续大家感兴趣,可以学习Objective-C语言,甚至是Python语言去写服务端程序。后面统计大家感兴趣程度咯~

4. Cocoa Touch

有了编程语言的基础,我们就可以去学习苹果公司针对iOS应用程序快速开发提供的一个类库。包括:UIKit、Core Animation、Core Audio、Core Data、Foundation等。

5. 设计模式、算法

编程和练武功一样。😄内修设计模式、算法,外练各种语言、各种应用技术。这一层功力的提升,才会让我们的编程技艺突飞猛进。

大家加油!

三. 教程

微信扫一扫加入小密圈:
小密圈iOSer成长之路

这个圈子的名称叫做《iOSer成长之路》。而关键点在于成长,我们要做成长型而非表现型的人。加入此圈子不要求你有什么编程基础,但是要求你有一颗进取的心。

在这个圈子里,我会每天更新一个概念、一个知识点、一个小思路。对,每天!持续更新下去!

持续学习,你将收获如下:

  1. 学会互联网思维、培养极客精神;

  2. 锻炼我们的抽象思维能力和逻辑思维能力;

  3. 学会通过编程处理大量重复性、低效率的工作,从而节省时间;

  4. 学会开发自己的App,发布自己的App到应用市场,赚取财富;

  5. 学会编程语言:Swift、Python、JavaScript、HTML、CSS等;

  6. 寻找设计的感觉,做一个有审美品位的人;

  7. 学会寻找需求,学会营销,为创造价值储蓄能量,做一个有用的人。

俗话说,师傅领进门,修行在个人。只能通过自己的眼睛告诉你,我在关注什么。踏踏实实找痛点,打磨产品,提供价值,这也是我正在做的事。

入圈者如果在一年内在此圈里分享超过20个概念或者思路,可以找我免去入圈费。

圈子定价56元/永久,每满10人,入圈费涨10元。一年后,改为按年收费。

进圈后建议先看精华区。