开发环境 : 库, FrameWork, Cocoa, Xcode
来源:互联网 发布:中海油投标软件下载 编辑:程序博客网 时间:2024/06/16 12:24
库libraryof code
静态库(.a)和动态库是相对编译期和运行期的:静态库在程序编译时会被链接到目标代码中(链接时完整地拷贝至可执行文件中),程序运行时将不再需要改静态库;(包含在应用中)
而动态库在程序编译时并不会被链接到目标代码中,只是在程序运行时才被载入,因为在程序运行期间还需要动态库的存在。(在应用外)
(动态库链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用. 应该叫共享库,那么从这个意义上来说,苹果禁止iOS开发中使用动态库就可以理解了:1.因为在现在的iPhone,iPodTouch,iPad上面程序都是单进程的,也就是某一时刻只有一个进程在运行 . 2.沙盒封闭)
使用库是很麻烦的。你不仅仅需要包含库本身,还要加入所有的头文件,资源等等。苹果解决这个问题的方式是框架(framework)。基本上,这是含有固定结构并包含了引用该库时所必需的所有东西的文件夹。
系统的. Framework是动态库 (苹果只允许自己使用动态库)
自制的. Framework是静态库
框架FrameWork
FrameWork是一些类的集合,通常是一些可能一起使用的类集合.换句话说,这些类被一起编译成可复用的代码库(library of code)。所有相关的资源和代码库一起放入一个带扩展名“.framework”的目录(Mac OSX bundle 的概念可以参考苹果的一些文档).系统自带的framework可以在/System/Library/Frameworks找到
.a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件。
.a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用。
.a + .h + sourceFile = .framework
Cocoa有3个framework组成
1. Foundation: 所有的面向对象语言都会有一些标准结构: value , collection , String, dates,lists, thread等等.所有的这些都在Foundation framework里面(可以对比C++的STL)
2. Appkit: 所有和用户界面相关的类都在这里. Windows,buttons,text field, event,drawing. 它还有个名字: ApplicationKit
3. Core Data: Core Data可以方便的让你把你的对象存储成文件,或是从文件中加载你的对象.
Xcode
Xcode掌控应用程序中所有使用到的资源,代码,图片,声音等等.你只要在Xcode中编写代码,由Xcode来编译和运行你的程序。同时Xcode也能调用和控制调试器。
gcc作为编译器来编译代码,gdb来调试
Framework是一个类库;
Cocoa是三个Framework的合集;
Xcode是一个集成开发环境。
IDE 集成开发环境
集成开发环境(简称IDE Integrated Develop Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。就是集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。
- 开发环境 : 库, FrameWork, Cocoa, Xcode
- Xcode使用Cocoa Touch Framework新建Framework
- IOS开发学习一 :Cocoa环境熟悉和Xcode使用
- 什么是Cocoa 什么是Xcode 什么是Framework?
- cocoa xcode 添加 第三方 framework
- 什么是Cocoa 什么是Xcode 什么是Framework?
- iOS Universal Static Framework 手动转 XCode Cocoa Framework
- 使用xcode 6创建dynamic framework(cocoa touch framework)
- Cocoa环境熟悉和Xcode使用
- 黑马程序员——IOS开发学习一 :Cocoa环境熟悉和Xcode使用——黑马 ios 技术博客
- Xcode制作framework库
- 动态链接库Cocoa Touch Framework
- 基于.a .framework 创建Cocoa Pods 库
- 搭建Framework开发环境
- Xcode环境开发leveldb
- [Cocoa]深入浅出 Cocoa 之 Framework
- [Cocoa]深入浅出 Cocoa 之 Framework
- XCode、Cocoa开发中使用第三方dylib的方法
- 关于wamp2.5系统找不到指定文件的一个解决办法
- GCC 编译 参数
- Hello World!
- linux高级IO之readv/writev
- 从B树、B+树、B*树谈到R 树
- 开发环境 : 库, FrameWork, Cocoa, Xcode
- Mindjet MindManager for Mac 10.3.637 注册版
- 在服务中播放音乐
- Win7系统上安装SQL Server 2008
- ioS学习 UITableViewCell 增加、删除、移动
- 应用程序中的View框架
- onSavaInstanceState的用法
- 如何向GLSL中传入多个纹理
- in_array()大数组查询性能问题