天天看点

0基础学习iOS的一些感想

0基础学习iOS的一些感想

从刚开始学习iOS到现在也有快一年的时间了。虽然是参加了培训学校,不过个人还是有一些初学阶段的心得,希望能对准备投身iOS开发浪潮的童鞋们有点小帮助。

由于是零基础学习,大学没接触过程序相关的东西,所以我的经验可能对于有基础的想转平台的童鞋没什么帮助。

好了废话不多说了,个人主要历程如下:

0基础学习iOS的一些感想

从一个小白到现在学会这门手艺,这条路可谓艰辛啊,不提我那可怜的培训费,还有4个月的埋头苦学,下面基本说下每个阶段的学习主要是哪些方面。

c语言:

a)      了解了神马叫编程,一堆英文字母和运算符号的有序集会

b)     常用的变量,语法(数组,字符串相关的比较重要,基本的if ,switch各种循环等)

c)      数组,指针(感觉是重点,小白同学们可以多花点时间研究研究)

d)     函数的定义使用(这边很重要,特别是对于后期的oc的学习,感觉很有帮助)

e)      文件的读写以及一些常用的函数

现在想起来,c语言似乎概括起来也就这些,因为最终使用的是oc语言,所以c语言方面比较深的东西都没有深究。

程序说白了除了要能理解之外,就是大量的练习,实际动手敲代码,在学c的阶段,我感觉最重要的一点就是老师教会了我们用程序的眼光看问题,一行一行的读代码,可能有些童鞋不赞同这种观点,因为很多代码是前后有关联的什么的,但是,我个人建议,纯小白如果想迅速提高自己,第一步学会一行一行的读代码。

这个阶段学习的话,建议大家买谭浩强的那本经典c语言就可以了。正好这个书有配套的习题,不追求每一题都会,但是一定要熟悉和清楚最基本的概念。

Objective -c 语言:

a)      学习了面向对象的编程思想

b)     oc特有的一些机制(协议,类别之类的)

c)      oc内存管理

d)     Foundation框架(常用的数据类型,字符串,集合家族)

e)      文件的操作

直接从c转过来的童鞋可能接触oc的时候会比较迷茫,完全不同的编程思想,一些特有的机制会让刚开始的学习有点困难,不过不要紧,还是记住一句话,程序是一行一行的读的,我刚开始学的时候主要碰到的难点如下:

a)      完全不理解关联的概念

b)     对于set,get方法总喜欢钻牛角尖,觉得没什么必要(事实证明,这是很有必要的。哈哈)

c)      不理解类别的具体用途

d)     对于协议的实际使用不熟练

e)      内存管理,各种纠结

f)       不理解c的基本数据类型和oc里的数值对象的区别

当时主要是这些问题,可能在学习的各个阶段都不是很熟悉,当时老师要求用oc实现各种链表的时候是对神经的一种摧残,因为那会刚开始接触oc,个人也强烈建议初学的同学尽量用oc实现各种数据结构,一方面加强对数据结构的理解,一方面也能快速的理解oc的一些基本的语法和思想,提高和加快学习的进度。

这边的话建议大家要尽量熟悉foundation框架里的一些基本的东西,字符串,数组,字典。这些是非常常用的,尽量能够熟悉他们的每一个方法,会在以后的编程里极大的提高编程的速度也会快速的提升自己的水平。

这边对于这三个东东,介绍点自己当时的学习心得吧:

字符串:

1,          区分NSString和NSMutableString的差别

一个是不可变可以想象成固定的模子,做好了就不能改了,可变的就是橡胶泥的模子,不符合需求的还能再次修改

2,          理解[NSString stringWithFormat:]的具体使用方法:

NSString *str = [NSString stringWithFormat:@”%d”,1];

NSString *str1= [NSString stringWithFormat:@”%@”,str];

简单来说。O-c里的字符串要比c语言里的灵活好用很多,几乎就是正常的说话的感觉,同时在次感谢下老乔的这种理念,方法名起的跟说话一样。哈哈

数组:

1,          O-c里的数组刚开始接触时,感觉太好用了,不限制类型,可变的还不用管刚开始的内存分配

2,          区分NSArray和NSMutableArray的差别

3,          [array  objectAtIndex:];方法

说实在的,数组当时在学的时候没有感觉到太多的障碍,因为跟c的数组比起来,oc的数组实在是太可爱了。哈哈

字典:

1,          字典存储值的方式:键值对,相当于一个标签,对应一个对象一样

2,          字典的最简单的初始化方法:[NSDictionary dictionaryWithObjectsAndKeys:],我个人建议刚开始用字典的童鞋可以直接用这个方法,简单直接,有助于帮助理解字典到底是个神马玩意,具体的定义方式如下:

0基础学习iOS的一些感想

值在前,键在后面,最后用nil结尾就好了。

字典的话,主要感觉一开始不知道该怎么用,(不熟悉害死人啊,当时刚学完O-c的时候几乎都不用这个)不过一旦能够理解字典的存取方式,其实是个很强大好用的东西。

我刚开始学习O-c的时候参考书籍还不是很多,当时买的是那本经典的水果书:

0基础学习iOS的一些感想

不过现在的参考教材应该会多出很多来。这本书对于刚接触O-c的童鞋来说感觉价值不是很大,偏难。或者说,不怎么符合天朝人的思维,建议选用一些国人写的书,也许相对会好点。

iOS平台

xib的使用(现在的可能都流行SoryBoard,个人不怎么喜欢用图形化工具,还是感觉代码会比较有层次,各位童鞋酌情而看,哈哈)

a)      UIView的一些知识

b)     各种控件

c)      UIViewController的一些知识

d)     动画以及图形处理

e)      手势开发和触摸

f)       表格视图(UITableView)

g)      导航条

h)     各种传感器

i)       数据持久化

iOS平台刚开始的时候,接触的比较直接的就是UI的编写,在视图上添加各种控件,个人对当时在培训期间的iOS平台学习计划安排现在感觉相当的不满,半个月的学习时间,几乎有12,13天左右都是在讲各种控件,相当重要的网络,数据持久化以及xml,json数据解析甚至就简单的走了一边流程(心里那个气啊)。不过现在来说有很多可供学习参考的书以及网站,每个同鞋可以根据自己的实际接受能力来进行选择。

iOS的学习,说实在的,我现在也在不停的学习当中,对于表视图:UITableViewController,网络编程,数据解析方面也还是有点迷迷糊糊的,所以就不误人子弟了。哈哈。

这个阶段的学习,书的话倒确实有一本可以推荐下:

0基础学习iOS的一些感想

希望能对想学习iOS编程的同学有点小帮助。

继续阅读