iOS开发入门篇,一Objective-C语言的简介

从今天起,我将陆续写一些关于iOS编程学习的小文章,便于一些初学者的学习,也便于自己以后使用

首先我们带来的是iOS开发的入门篇(一)

Objective-C语言的创始人:Brad Cox,Objective-C是在C语言的基础加上了面向对象编程的特性之后形成的

一种面向对象的语言。

这种语言可以说是比较复杂的,因为它来源于C所以开发者会经常看到这种语言的代码中会参杂着许多C语言的代码

这种混编的方式可能会使开发者不舒服,但是选择了这条跪着也要走完。

后Jobs的NextStep公司取得了这种语言的授权,并在这种语言的基础之上开发了一套编程框架叫做cocoa(Tool-kit),

这也是我们今后将长期打交道的东西。

虽然Objective-C语言是在C语言基础之上建立的,但是Objective-C也和C语言一样并不支持命名空间(名称空间)的概念

这对于开发者来说也是比较痛苦的一点,但是苹果优秀的工程师们并没有被Objective-C没有命名空间这一难题所难到,他们在

每个类的前面加上前缀用来区分不同的框架下的类如:Foundation框架下:NS、UIKit框架下:UI等,也为开发者提供了方便,

和一个可以用来参照的规范。

Objective-C和Java,C#等主流的开发语言一样只支持单枝继承,当然为解决单继承所带来的功能不够强大的问题,Objective-C

也引入了类似于Java,或C#中接口的东西,Objective-C中叫做协议(protocol)

一下是我们的第一个程序,依旧是这个梗,“Hello world!!!”:(大家莫怪)

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

int main(int argc, char * argv[]) {

@autoreleasepool {

NSLog(@"hello world!!!!!");

return 0;

}

}

接下来我们提提一下Objective-C的一些基本的东西,这里知识随口一提,后面的文章中会具体的事例和讲解

Foundation 框架我们在此了结一下,这个框架是我们最常用的框架类似于 Java中的java.lang包,其重要性时

不言而喻的,其中的类均是以NS前缀开头的,用于处理非UI部分的编程

NSLog函数这是一个非常强大的东西,一个好的程序员,需要的是什么,1.会百度,2.会打印

当一个程序员会了这两个东西之后,就走遍天下都不怕了,而NSLog就是帮助好的程序员打印调试用的

这个NSLog可以格式化输出内容,与C语言中的printf用法几乎一致,只是多了一个"%@"用于打印Objective-C

的对象(此处如有不全之处请指正)。

Objective-C中的常量变量:

基本数据类型的常变量与C#,Java中的没有什么区别

如:

int age=12;

float price=20.0f;

对象的数据类型(指针数据类型)

NSString *str=@"Objective-C";

UIView *view;

等,注意Objective-C语言中的对象在声明时与Java,C#等语言是有区别的需要在变量名1前面加上“*”和C语言中声明指针

很像

与其它面向对象的语言一样,Objective-C中的变量也分为实例变量,全局变量,局部变量,其作用域和Java,C#的都是类似的

Objective-C中的常量分为直接常量,只读常量,符号常量

直接常量在变量名之前加上const,

只读常量就是程序中出现的常量如:@"Objective-C",

符号常量也就是C语言中的宏定义#define LANGUAGE_NAME @"Objective-C"

像一些基本的语法如数据类型,控制语句,等与其它的语言都是相通的,在此就不费笔墨去介绍了,这篇文章主要着力于介绍Objective-C的一些基本的特性,

如果是零基础的朋友请先研究一下C语言,或Java这样的类C语言,会更方便理解本文的一些东西

在此,如有不正确的地方,请大家指正,相互学习,相互借鉴,另外这是本人第一次发文,请多包涵