码迷,mamicode.com
首页 > 移动开发 > 详细

iOS练习-Xcode6创建静态库

时间:2015-05-20 20:45:48      阅读:375      评论:0      收藏:0      [点我收藏+]

标签:

开发中可能会有一些属于自己的类和工具函数,当这些代码被反复重用。重用代码的最简单方法是简单的 拷贝/粘贴 。然而,养以来在修复bug或者升级的时候就会遇到需要修改所有的拷贝。这时静态库便会拯救苦逼的我们。

一个静态库是若干个类,函数,定义和资源的包装

进行打包之后便可以在项目之间共享

以下简述摘自:http://www.it165.net/pro/html/201404/11585.html

程序编译一般需经预处理、编译、汇编和链接几个步骤。对于项目中的一些公共代码,如果想要对其进行复用,可以把这些代码编译成一个静态库文件。在链接步骤中,链接器会从库文件中取得对应的代码并生成可执行文件。静态库的执行文件中包含了库中的完整代码,但是多次使用会产生多份冗余拷贝。??静态库和动态库的区别在于静态库在链接阶段被复制,与程序的运行阶段无关;动态库在程序运行时由系统动态加载到内存中供程序调用,这样可以大大节省内存。

创建静态库可能出于以下几个理由:?1.你想将一些你和你团队中的同事们经常使用的类打包并轻松的分享给周围其他人。?2.你想让一些通用代码处于自己的掌控之下,以便于修复和升级。?3.你想将库共享给其他人,但不想让他们看到你的源代码。


~~~~~~~~~~~~~~~~~~华丽的分割线~~~~~~~~~~~~~~~~~~~~~~~

下面我们来创建静态库

  1. 打开xcode 点击FrameWork&Library=》Cocoa Touch static Library

技术分享

示例代码如下:

MyfirstLib.h文件:

#import <Foundation/Foundation.h>
@interface MyfirstLib : NSObject
-(void)logMyfirstLib;
@end

MyfirstLib.m文件:

#import "MyfirstLib.h"
@implementation MyfirstLib
-(void)logMyfirstLib
{
    NSLog(@"This is my fitst static lib");
}
@end

2.之后Command+B编译使得Products目录下面的linMyfirstLib.a文件有红变黑。

技术分享

3.点击 show in finder ,找到.a文件

技术分享

4.如下所示.a 文件和include文件夹中的.h文件

技术分享


5.创建新项目将.h和.a 倒入到项目中

技术分享

6.点击add other在finder中找到.a和。h文件

技术分享

示例代码:

#import <UIKit/UIKit.h>
#import "MyfirstLib.h"
@interface ViewController : UIViewController
@end

@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    MyfirstLib *myFirstLib = [[MyfirstLib alloc] init];
    [myFirstLib logMyfirstLib];
    
}
@end

7.打印结果如下:

技术分享

8.剩下的就是分享咯


iOS练习-Xcode6创建静态库

标签:

原文地址:http://my.oschina.net/wupengnash/blog/417405

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!