一、引言
从一名网络工程师转型做程序员,我没有太多想说的话,命运掌握在自己手中,选择了,就会尽全力去做,把这件事做好就是我最大的心愿。再没有一段时光叫做青春,任你挥霍,接下来的时光叫做生活,而它会是怎样,就取决于现在所做的决定。越努力,越幸运。
二、MAC系统快捷键功能
MAC系统与Windows有很多相似之处,但也有很多区别,在学习编程之前掌握一定的操作技巧可以让自己形成良好的习惯,使操作效率更高。
> 以下是可能会出现在 OS X 菜单中的修饰键符号:
> 功能快捷键
* cmd+A----全选
* cmd+C----拷贝
* cmd+V----粘贴
* cmd+W----关闭窗口
* cmd+Q----退出程序
* cmd+I----显示文件/文件夹属性
* cmd+Backspace----删除
* cmd+shift+3----捕获整个屏幕
* cmd+shift+4----捕获选择的区域
* cmd+shift+4+space----捕获某个应用程序的窗口
* cmd+F----在应用程序中搜索
* cmd+Space----用Spotlight进行桌面搜索
* fn+Backspace----相当于Windows里面的Delete键(笔记本键盘专用,台式机键盘有Delete键)
> 文本快捷键
comand+左箭头----跳到本行文字最后
comand+右箭头----跳到本行文字最前
comand+中括号 并行缩进
option+F ------------光标前移一个字符
option+B ------------光标后移一个字符
option+P ------------上移一行
option+N ------------下移一行
option+A ------------光标前移到行首
option+E=option+v------------光标后移到行尾
option+H-----------删除光标前的一个字符
option+D-----------删除光标后的一个字符
option+K-----------删除光标开始到行尾
option+shift+A ------选定光标开始至行首
option+shift+E ------选定光标开始至行尾
快捷键也是一门大学问,熟练使用以上快捷键足以让你在茫茫IT人海中找到存在感,其他快捷键请自行在互联网上搜素查询。
三、OC简介
Objective-C,通常写作ObjC和较少用的Objective C或Obj-C,是扩充C的面向对象编程语言。它主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。Objective-C可以在GCC以及Clang运作的系统上编写和编译,因为GCC与Clang含Objective-C的编译器。1980年代初布莱德·确斯(Brad Cox)在其公司Stepstone发明Objective-C。他对软件设计和编程里的真实可用度问题十分关心。
> C语言的基础上,增加了一层最小的面向对象语法
> 完全兼容C语言
> 可以在OC代码中混入C语言代码,甚至是C++代码
> 可以使用OC开发Mac OS X平台和iOS平台的应用程序
四、OC基本语法
1.关键字:关键字是系统已定义的具有特殊用途的字符。
OC的关键字特点:
> 基本上所有关键字都是以@开头
> 下面列举一些常见的关键字,这些关键字都有其自己的功能
@interface、@implementation、@end
@public、@protected、@private、@selector
@try、@catch、@throw、@finally
@protocol、@optional、@required、@class
@property、@synthesize、@dynamic
self、super、id、_cmd、__block、__strong、__weak
2.字符串以@开头
比如@"Hello"是OC中的字符串,而"Hello"则是C语言中的字符串。
3.其他语法
与C语言相似,OC在由以.m结尾的源文件生成.out结尾的可执行文件时也要经过编译器的编译和链接,在编译器经过对源文件的语法检测编译无误后就会生成.o的目标文件,然后编译器再将.o文件和OC语言函数库组合在一起,便生成可执行文件。
五、开发环境简介
OC语言是用来开发苹果设备软件的,自然是用MAC OS去开发程序,所使用的开发环境是苹果公司的Xcode。Xcode是一个集成的开发环境,Xcode 是苹果公司开发的编程软件,是开发人员建立OS X 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。支持 C语言、C++、Fortran、Objective-C、Objective-C++、Java、AppleScript、Python以及Ruby,还提供Cocoa、Carbon以及Java等编程模式。协力厂商更提供了
GNU Pascal,Free Pascal, Ada, C#, Perl, Haskell 和 D语言。
六、第一个OC程序
1.使用OC语言打印出Hello word ,文件名为hello.m
#import <Foundation/Foundation.h>
int main()
{
NSLog(@"Hello word !");
return 0;
}
2.终端编译
1> 编译:cc -c hello.m
2> 链接:cc hello.o -framework Foundation
(只有用到了Foundation框架才需要加上-framework Foundation)
3> 运行:./a.out
可以直接使用cc hello.m进行编译
3.#import的作用
1.#import的用途:
1> 跟#include一样,拷贝文件的内容。
2> 可以自动防止文件的内容被重复拷贝。
4.什么是框架
> 框架是一种聚集在一个单元的部件集合,包含头文件,库,图像,声音文件等。苹果公司将cocoa,Carbon,QuickTime和OpenGL 等技术 作为框架集提供。cocoa的组成部分有Foundation和Application Kit框架。还有一个支持框架的套件,包含 Core Animation和Core Image,这为Cocoa增添了多种精彩的功能。
> 每个框架都是一个重要的技术集合,通常包含数十个甚至上百个头文件。每个框架都有一个主头文件,它包含了所有框架的各个头文件。通过使用#import导入主头文件,可以使用所有框架的特性。
> Foundation框架处理的是用户界面之下的层(layer)中得特性,例如数据结构和通信机制。
> 由于Foudation.h主头文件中包含了所有框架中的头文件,所以一般只需要在程序中包含Foundation.h即可。
#import <Foundation/Foundation.h>
> Foundation框架头文件的路径:
1> 右击Xcode.app --> 显示包内容
2>Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/Foundation.framework
5.主头文件(注意不是猪头)
1> 主头文件:最主要的头文件,名字一般跟框架名称一样,包含了框架中的所有其他头文件
2> Foundation框架的主头文件名称就是Foundation.h
3> 只需要包含Foundation框架主头文件,就可以使用整个框架的东西。
6.NSLog与printf两个打印函数的区别
> NSLog接收OC字符串作为参数,printf接收C语言字符串作为参数
> NSLog输出后会自动换行,printf输出后不会自动换行
> 使用NSLog需要#import <Foundation/Foundation.h>
> 使用printf需要#include <stdio.h>