PS1:其实,这是用来记录我的IOS开发学习过程,并且为同样想学习IOS开发的同学们提供一个比较容易的入门教程吧,毕竟这也是我从一窍不懂的菜鸟开始的
PS2:部分内容是直接从书上写下来再加上自己的想法
首先先从开发设备开始
- 你首先需要一台Mac电脑,或者是上一版本Mac
OS操作系统的现代Mac电脑——理想状态时你的Mac电脑使用最新版本的OS,拥有至少8GB的RAM,以及大量磁盘空间(PS这里这是硬性要求啊,毕竟博主是在Mac下进行学习的。其他环境的话等博主学有所成之后能解决的话会从新写在其他环境下如何开发的) - 一台IOS设备——尽管Xcode包含能用于开发应用程序的桌面模拟器,但你仍需要在实际设备上运行应用程序以确保它能正确运行
除此之外:
你还需要对Objective-C有所熟悉。当然啦,作者一开始也是不熟悉的,没关系。Objective-C语言基于ANSI C,带有面向对象的扩展,所以你若是曾使用Java或C++语言进行编程,并且熟悉C语言的话,你会发现Objective-C很简单,只是语法上面的使用与Java或C++有所不同,但记住时候就很容易使用了。
当然,如果你上什么语言都没有接触过的话,也没关系,毕竟博主写这些博客的目的就是为了让跟我一样是小白的人能够学会如何进行IOS开发的(PS当然现在是入门,我详细随着时间的增长,本小白也会成长为大神的!!!)
好了,现在开始进行正事
当然,要先把Xcode装上,这个可以在App Store上面直接下载
好了,下载完成后(Xcode是真心大啊,更新一次也好心酸)
这是博主使用的Xcode版本
还是按照新手入门的第一步吧,先来个HelloWorld。。。
PS(一开始有些没有用到的代码之类的或者是生成的文件没有用到我就不一一细说了,只说一下当前用到的部分)
首先新建一个项目 选择Single View Application
在Product Name里面填入项目名称,其他的一般都不用改(至少对于我们新手来说)
创建完成之后进入的页面,页面中有介绍
进入到故事面板
将label直接用鼠标拖拽到故事面板自己喜欢的位置,然后双击,修改名称即可。
修改完成后,点击左上角的三角形进行编译运行
这就是编译运行的结果
哦!有可能模拟器运行界面太大了,这时候可以点即模拟器,然后在屏幕的左上方找到Window->Scale进行修改,或者直接记住快捷键修改成自己想要的大小就行了
看到这里,是不是会觉得IOS开发也就那么回事?其实IOS开发入门当然简单啦,很多代码在创建项目的时候,都自动生成了,我们用起来也很方便。
恩。。。想了想,博客不能这么水啊。在这里介绍一下一些Objective-C的一些与C或Java不同的地方吧
首先什么是OBjective-C
自己百度去…
一些语法区别
- 在C语言中
调用一个函数我们会这样写
- printCarInfo();
- 在Objective-C中
要这么写
- [self printCarInfo];
在C语言中,想要运行的函数目标对象,会被假定为当前的对象。在有些语言上你可能会看到是这么用的this.printCarInfo]。在Objective-C中,self表示当前,相当于this的使用。(反正就是这么用的,记住就好啦)
调用类里面的函数也是类似的
- 在C语言中
假设A类里面有一个函数是printCarInfo(),假设有一个对象 A lalala;
那么调用lalala中的printCarInfo(),我们这么用lalala.printCarInfo();
- 在Objective中
假设同上就不多废话了
调用lalala中的printCarInfo(),我们这么用[lalala printCarInfo];
这样子看起来好像差别不是很大,但是,一旦函数带有参数的话,这个差别可就明显多了
- 在C语言中
假设printCarInfo(myCar);//表示打印A的详细信息 A是一个对象
- 在Objective-C中
[self printCarInfo:myCar]
PS:Objective-C鼓励我们一次放置方法名和参数,因此既有可能将printCarInfo方法重命名为
[self printCarInfoWithCar:myCar];
再深入一步,假设必须传递显示信息时的字体大小。
- 在C语言中
printCarInfo(myCar,10);
- 在Objective-C中
[self printCarInfoWithCar:myCar withFontSize:10];
这样看来我们会发现,Objective-C读起来更加容易明白
再更麻烦一点,假设现在有3个参数 多加个判断字体是否加粗
- 在C语言中
printCarInfo(myCar,10,1);//1表示是 0表示否
- 在Objective-C中
[self printCarInfoWithCar:myCar withFontSize:10 shouldBoldText:YES];
PS:在Objective-C中,BOOL类型的标准值是YES/NO而不是C语言中的true/fales,当然,也可以引入C标准库并且使用C语言的Boolean类型,但在这里并不推荐使用
在Objective-C中,方法的参数由冒号(:)进行分隔,在参数值之间带有方法名称中的一部分。方法也会有返回对象
- 在C语言中
float mySpeed = calculateSpeed(100,10);//返回的时间根据distance/time
- 在Objective-C中
float mySpeed = [self calculateSpeedWithDistance:100 time:10];
语法暂时到这里啦
Objective-C方法(函数)调用的组成部分如下
- (void)insertObject:(id)anObject atIndex:(NSUInteger)index
解释:
- “-”:方法类型标示符
- (void):返回类型
- insertObject和atIndex:方法签名关键字
- (id)和(NSUInteger):参数类型
- anObject和index:参数名
今天的介绍就到这里咯
我的另一个博客站点:Arnold-你们好啊