从小白开始学习iOS开发

从事iOS开发不经意间,已经两年过去了,记得当初看到OC是,我根本就不知道那些个东西是什么?从开始学习开机,到一个个英文开始,为了能找到工作,愣是耐下心去坚持看下去。

现在回想起来,很是庆幸我没有放弃,虽然我不会写文章但是总有那么一点东西,会在不经意的瞬间给人些许的帮助。

第一:基础

一定的编程经验

这里说的编程经验是有编程经验或会一门编程语言,对OOP有一定认识,最好是了解一些设计模式;但是这都不是必须的,因为我是一名体育生,在学校只是学习过flash,第一次用mac的时候都不会开机,Mac的基本操作对我像座山。即使这样我一样走到了现在,所以说刚开始学习一门东西的时候,难不是问题。只要做好了准备,你会成功的。

英语

对于我来说做iOS英语是一大难题,但是通过编程我的英语学得也蛮快的,每天都在学习编程和英语。开始的时候最大的恐惧是开英文的API文档,有些代码我根本就不知道什么意思,注释是英文,文档解答英文,视频还是英文。我绝望过,我也放弃过,但是还是不服让我硬着头皮去看代码-----

接下来我在每天晚上都要总结一下,我学到了什么,哪怕是一个单词,一段代码我都会Push一下自己。接下来我看别人的小demo,找着做,每次看到我也能照着做出功能后,就想着做别的慢慢地,这种恐惧感就会减少很多。这样我就有继续开发的信心了。

书籍

要学习 iOS 开发,有很多人认为一定要读书,但是我却选择的看视频,有人说视频浪费时间看别人代码来的反而快点。是的,但是我认为如果是初学者,在不懂得代码规范,没进入iOS编程门槛的学习者,视频反而更有利于我们的学习。至少我们班简单的知识点汇集成一条溪流,听到声音看到实现这种记忆方式,我感觉要比单纯的看demo好很多,当然正常语速是不行的是我选择的是2倍速看视频,这样比较节省时间。

当基本知识了解以后,看项目是必须的,代码要自己反复的去敲打,去看去了解。同时要去和别人讨论,汲取别人的思想,看看别人怎么学习的。

接着你可以再找一两本书籍,补充一下 OC 的基础知识这里推荐 BNR (Big Nerd Ranch) 的这本 Objective-C Programming The Big Nerd Ranch Guide,讲解地比较细致,能帮助你更好的理解 OC,更重要的是教你遇到问题时,如何去解决问题,以及这个问题对应的一些知识点,如何使用文档等等。

要选择性的去读书:一本好的入门教材很重要,要契合自己当前的水平,且常常会有收获,这种成就感会激励着你继续学下去。

在看书的过程中,往往会有这样的经历:书中提到某个人、观点、知识点、书、文章,然后就顺着它提到的这些东西出去了,可能某个知识点又牵扯到另一些内容,然后就这样越走越远。想起了一个故事——一段经历-----

还有就是如果有可能,最好每天都看点,这其实是很难的,因为总是会有优先级更高的事,或者之前的某些习惯在干扰。一旦断了几天,就不想再拿起来了。

还有,苹果官方的 Start Developing iOS Apps Today 也是很不错的入门材料。

第二:

视频

国内的推荐MJ的视频,当初也是看的这个很多知识点讲得很到位,语速也蛮快的,同时配有Demo,总之听下来会对 iOS 开发有比较全面的了解。

同时推荐一本小册子:objc-zen-book,花不长时间就能看完,里面是一些 Best Practices,对于编写优质代码会很有帮助。

笔记

这是一个持久的过程,任何阶段都适用。以前也没太在意这个,觉得概念性的东西,脑子过一遍,就大概知道了,然后就去啃其他的东西了,现在看来,如果有记笔记的话,会更有助于消化概念、知识点,也可以记录自己的思考过程。

记笔记可以加深对知识点的理解,而成为编程巨星的唯一秘诀就是:对所做的事情理解地越深,就会做得越好。同时如果遵循遗忘曲线去复习的话,效果更佳。对知识点了解地足够透彻后,Debug 时才更有可能知道问题出在哪,解决问题也更容易有思路。

笔记不仅可以记知识点,也可以记录调试过程,比如这篇笔记,有一种调试方法:小黄鸭调试法

许多程序员都有过向别人(甚至可能向完全不会编程的人)提问及解释编程问题,就在解释的过程中击中了问题的解决方案。一边阐述代码的意图一边观察它实际上的意图并做调试,这两者之间的任何不协调会变得很明显,并且更容易发现自己的错误。

生活中我们可能不会真的这么去做,这时抽离出另一个自己,记录下跟ta的对话,也是个发现问题的好方法。

练习

这也是一个持续的过程,知道了些概念或原理后,总是会想着去验证下是不是这样,无论结果是否如自己预期,实践的过程会降低对语言的陌生感,慢慢地培养一种驾驭这门语言的自信,如果出了错,正好可以重新梳理一下。

目标

如果静下心来看完了 BNR 的这本书,以及MJ的开发视频,那么对 OC 应该比较了解了,一些常用的 UIKit 用起来也没什么问题了,比如 UIViewController / UIView / UIScrollView / UIImageView / UITableView。也熟悉一些概念,如 KVO / MVC / Delegate / DataSource。

接下来就进入了,编程的折腾界面了

时间: 2024-10-11 16:29:58

从小白开始学习iOS开发的相关文章

iOS 开发人才市场饱和了吗?为什么我会继续选择深入学习iOS开发?

前言: 说饱和是饱和的:说不饱和也是不饱和的. 一),几年间移动互联网的飞速发展以及互联网创业的大潮来袭,使得 iOS 开发一职位炙手可热.由于前几年 iOS 开发的稀缺以及自学门槛相对其他技术高(需要 Mac 和 iPhone),加之创业公司大都以移动端产品作为入口,iOS 开发的薪资也水涨船高. 1,随着时间的推移,互联网已经为越来越多的人熟知,同时传统行业一显颓势.不少其他专业的学生听说互联网行业薪水高.门槛低这样的传言,再加上学校吃回扣的老师以及培训机构招生人员的鼓吹纷纷踏入 iOS 培

学习IOS开发UI篇--UI知识点总结(四) UITabelView/UITableViewCell

UITabelView:常用属性 @property (nonatomic)          CGFloat    rowHeight;             // will return the default value if unset @property (nonatomic)          CGFloat     sectionHeaderHeight;   // will return the default value if unset @property (nonatom

学习IOS开发UI篇--UI知识点总结(三) UIScrollView/UIPageControl/NSTimer

UIScrollView:常用属性 @property(nonatomic)   UIEdgeInsets     contentInset;               // default UIEdgeInsetsZero. add additional scroll area around content @property(nonatomic,getter=isPagingEnabled) BOOL   pagingEnabled;     // default NO. if YES,

【转】零基础学习iOS开发【2015-09-06 23:03】

原文链接:http://www.cnblogs.com/mjios/archive/2013/04/27/3046049.html#label5 本文目录 一.程序设计语言 二.是否需要计算机专业知识 三.是否要英文很好 四.开发工具 五.开发环境 六.Mac OS X的获取途径 七.调试设备 八.开发者证书 九.总结 在上一讲中,介绍了什么是iOS开发.说简单一点,iOS开发,就是开发运行在iPhone或者iPad上的软件.这么一说完,应该有很多人就会产生一些疑惑,比如学习iOS开发是不是一定

学习IOS开发项目篇--如何让程序在后台保持挂起状态

程序的状态分为:前台运行,后台挂起,后台休眠,为了让项目的网络请求保持活跃状态,需要对程序进行设置. 在applicationDidEnterBackground方法中调用下面的方法,可以让程序进入挂起状态,但在未知时间内,可能会被系统设置为休眠,如果在将程序设置为播放器,并且循环播放一个MP3文件,可以保持永久挂起状态. UIBackgroundTaskIdentifier task =[application beginBackgroundTaskWithExpirationHandler:

学习IOS开发UI篇--UITableView/数据模型嵌套/UITableViewCell/Cell的重用

1.UITableView ================================================== UITableView有两种格式:group和plain 2.UITableView如何展示数据 ================================================== UITableView需要一个数据源(dataSource)来显示数据 凡是遵守UITableViewDataSource协议的OC对象,都可以是UITableView的

开始学习iOS开发

开始学习iOS开发了,从昨天开始看了「iOS Apprentice」的第一本,写了一个简单的小游戏,虽然之前也看过一些iOS开发的相关东西,但是系统的看书学这是第一次(之前看了两节斯坦福大学的公开课写了一个简单的计算器). 「iOS Apprentice」应该算是很好的入门书了,如果有一门面向对象语言的基础的话,看起来应该是很快的,我看第一本书(大概150页左右)加上编码的时间一共用了6小时,期间包括看官方文档查资料的时间,所以如果只是跟着书上来做的话时间应该会更少一点.看完了第一本书大概就知道

【零基础学习iOS开发】【01-前言】01-开篇

本文目录 一.什么是iOS 二.主流手机操作系统 三.什么是iOS开发 四.学习iOS开发的目的 五.学习iOS开发的前提 从今天开始,我就开始更新[零基础学习iOS开发]这个专题.不管你是否涉足过IT领域,也不管你是理科生还是文科生,只要你对iOS开发感兴趣,都可以来阅读此专题.我尽量以通俗易懂的语言,让每个人都能够看懂.若遇到不明白的地方或者对此文有异议,望及时评论. 回到顶部 一.什么是iOS 要想学习iOS开发,首先要搞清楚什么是iOS.iOS其实是一款操作系统,就像平时我们在电脑上用的

奔五的人,准备学习iOS开发

这些年一直在java/web/android方面折腾,去年最终换成了apple的设备,本想就開始折腾iOS,却始终没能进入状态. 从今天開始,本人宣布:正式进入iOS/xcode 5的编程学习中,也希望大家共同进步. 补充一下:环顾四周,到我这个年龄还能在coding中找到快乐的人好像已经不多了,你呢?当年进入android时,我是由于领了一台android的mt620合约机,记忆中也是国庆前拿到了,用了一个假期的时间学习android,边学边用,开发了第一个安卓应用:百度音乐下载播放器,在接着