Objective-C教程之创建项目及OC基础语法(01)

本文是作者作为前端新手学习iOS开发的笔记,重点介绍了从选择Objective-C的原因到创建项目的过程,以及OC的基本语法,包括#import、@autoreleasepool、NSLog、字符串和函数等。文章提供了Objective-C基础教程的PDF和视频资源,并分享了Xcode中创建Command Line Tool项目的步骤。

写在前面

本菜鸡前端小白,实习期公司业务需求缺个iOS开发,菜鸡有点想做iOS,加上组长鼓励就开始入坑iOS开发了(嘤嘤嘤菜鸡原本只想划划水),前期学了一周swift,好用是好用,但是由于swift对个人开发者比较友好,而OC对大型项目来说比较友好,毕竟OC的社区成熟稳定,掉坑了能比较快的找到解决方案,加上需要接手的项目是OC写的,所以最终还是打算入坑OC。

虽然觉得暂时放下swift有点可惜,毕竟菜鸡swift已经开始写了几个小功能了,个人的打算是先主攻OC,swift前景是不错的,而且学好OC后上手swift也非常快,两不耽误,非常nice。可以看到大家对OC和swift的看法是OC注定会被swift淘汰,这个是没错,但是国内公司用的还是OC或者OC和swift混合开发居多;所以个人建议是如果目标是自己当个人开发者的话,去学swift吧,否则OC。曾听说OC语法非人类,学了两三天的OC,没有想象中的那么难,还是学的很愉快的~

系统的学习怎么能缺乏笔记呢,所以想写写学习历程,做个记录,也希望帮到一些人(可能得到帮助的人会很少,但主要当记笔记啦)swift暂时还不是很稳定,就不打算写学习swift的历程了,估计写出来过时会很快,容易误人子弟,swift还是写给自己看吧。那么OC开始~~

2020,加油啦~~

教程推荐

OC的教程还是蛮好找的,PDF和视频都拿出来吧(OC没啥大的改动,教程都比较老):
Objective-C基础教程(第二版)PDF:网盘提取码:90o6
哔哩哔哩Objective-C视频基础教程:B站传送门

环境

本菜鸡电脑的目前环境:
Mac系统:macOS Mojave 10.14.6
Xcode:Version 11.3
关于Xcode使用以及一些创建项目和关于OC的基础知识上述视频和PDF均有,不再赘述,主要上代码。

创建项目

1.打开Xcode,选择Create a new Xcode project.
Xcode
2.选择macOS->Command Line Tool点击Next
选择
3.依次填写Product Name项目名称,Team(可以为None),Organization Name随便取一个就好,注意Language选择Objective-C;点击Next。
创建
4.选择一个地方存放,点击Create
在这里插入图片描述
5.进入项目,点击打开main.m文件,先点击右上角的打开底部栏按钮,呼出控制台,再点击左上角运行按钮,或者快捷键Command+R运行。
项目页面
打开控制台并运行
6.恭喜!控制台打印出了第一个项目~
控制台输出
趁着这个劲,我们来快速过一遍OC基础语法吧~

OC基础语法

知识点:#import;@autoreleasepool;NSLog函数;字符串;NS前缀;@符号;函数的定义和调用。

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //自动释放池  代码可以选择写在这,前期学习可以先不管,后面的代码示例中会删除自动释放池
        //控制台输出
        NSLog(@"Hello world!");
    }
    
    //控制台也可以输出,可以输出变量
    int year = 2020;
    NSLog(@"Hello again! %d", year);
    
    //定义一个字符串并输出,OC字符串的占位符是%@
    NSString *name = @"MyEmun";
    NSLog(@"%@在%d要加油", name, year);
    
    return 0;
}
/*
 OC基础语法
 (OC主要和C进行比较,推荐大家视频PDF结合一起学习)
 1.#import指令
    1)作用:以#号开头,是一个预处理指令;是#include指令的增强版,将文件内容在预编译时拷贝至写指令的地方。
    2)增强:同一个文件无论#import多少次,只会包含一次。(如果#include指令要实现这个效果,就必须要配合条件编译指令来实现)
 2.@autoreleasepool是自动释放池
    可以选择在里面写代码,删除掉也无所谓
 3.NSLog函数
    1)作用:是printf函数的增强版,用来向控制台输出信息
    2)语法:NSLog(@"要输出的信息", 变量列表(可选));
    3)增强:
        a.输出了一些调试信息
        2020-xx-xx xx:xx:xx.xxxxxx+xxxx Practice01[1358:2379187] Hello world!
        执行代码的时间                     程序的名称  进程编号 线程编号 输出的信息
        b.会自动换行
        c.可以输出OC新增数据类型
 4.字符串
    1)C语言字符串的存储方式:使用字符数组存储,使用字符指针
    2)OC中存储字符串的类型:NSString  NSString类型的指针变量,专门用来存储OC字符串的地址
    3)OC的字符串常量必须使用 @ 符号作为前缀
        如:@“MyEmun”
    4)语法:NSString *字符串名 = @"字符串";
    5)NSLog函数输出的字符串是OC类型的字符串,所以前缀也有 @ 。
 5.NS前缀
    NextStep工具包的缩写,详情看视频或者PDF教程。
 6.@符号
    1)将C字符串转换为OC字符串。
    2)OC大部分关键字都是以@开头。
 */
/*
1.函数的定义和调用:与C语言中一样

完整代码:
 */
#import <Foundation/Foundation.h>

//函数需要先在main函数之前声明
void Greeting()
{
    NSLog(@"第一节结束啦~");
}

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSLog(@"Hello world!");
    }
    int year = 2020;
    NSLog(@"Hello again! %d", year);
    
    NSString *name = @"MyEmun";
    NSLog(@"%@在%d要加油", name, year);
    
    //调用函数
    Greeting();
    
    return 0;
}

快捷键Command+R在控制台查看输出结果:
输出结果
希望能有帮助啦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值