- 浏览: 582163 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
JYY282:
[i][/i]
Ecshop与Shopex的比较 -
qq247890212:
我也遇见这问题了,真诡异。重新下载个猫换了就好了。 太浪费时间 ...
诡异:ClassNotFoundException: org.springframework.web.filter.CharacterEncoding
开发iPhone程序,首先接触到的不是源代码,而是项目工程文件,目录。我们来看看它有怎样的构成。
iPhone应用程序目录构成
iPhone应用程序被放入一个叫做沙盒(sandbox)的具有安全性的构造中。程序只能访问自己沙盒中的资源。
iPhone 应用程序与 Mac OS 上的程序基本上相同、 只是程序目录下有一些不同。可以通过 AddressBook 等构造访问其他的功能或构造体。
iPhone 应用程序的目录构造如下所示:
/Applications/
[Application1]/
Application1.app
Documents/
Library/
tmp/
[Application2]/
Application2.app
Documents/
Library/
tmp/
工程项目的构成
工程项目的构成虽然根据程序不同而不同,但基本上都是基于MVC模型,所以按照 Model、Controller、View 来组织目录形式。
比如以下的目录构成:
Classes
Libraries (各种中间件,程序库等)
JSON
ImageStore
其他程序模块
Controllers (与 View Controller 相关的类)
UIApplicationDelegate
UIViewController
Views (定制的视图,程序界面)
UITableViewCell的子类
UIView的子类
项目文件构成
接下来我们再看看程序工程中还有什么:
HelloWorld
|-- Classes
| |-- HelloWorldAppDelegate.h
| |-- HelloWorldAppDelegate.m
| |-- HelloWorldViewController.h
| `-- HelloWorldViewController.m
|-- HelloWorld.xcodeproj
|-- HelloWorldViewController.xib
|-- HelloWorld_Prefix.pch
|-- Info.plist
|-- MainWindow.xib
|-- build
| `-- HelloWorld.build
`-- main.m
.pch
预编译头文件,win32里经常会碰到,这里也有,包含了常用的头文件。
.plist
包含了项目自身的特性,比如说项目名称,默认加载的nib file,版本等。
.xib
程序的资源文件。用于简化编码过程,提高开发效率。
main.m
iphone程序的入口,类似于C/C++中的main函数。
main函数如下所示:
int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil);
[pool release];
return retVal;
}
main函数的参数 argc 以及 argv[] 与C语言中的意思一样,支持命令行的输入。
接下来创建一个NSAutoreleasePool对象,用来自动管理程序的内存。
1 NSAutoreleasePool * pool = NSAutoreleasePool alloc] init];
最主要的是下面的 UIApplicationMain 的调用,通过它完成系统启动的过程,并形成一个事件驱动。
1 int retVal = UIApplicationMain(argc, argv, nil, nil);
关于 iPhone 应用程序具体的启动过程,我们下回讲解
作者:易飞扬
发表评论
-
Phone应用开发之十二:使用ShareKit一键分享到Facebook,Twitter等平台
2012-02-12 18:27 0ShareKit是iPhone开发的第三方接口,允许你一 ... -
iPhone应用开发之十一:常用的三种动画表现效果
2012-02-12 18:24 0From:http://www.2cto.com/kf/201 ... -
iphone应用开发之十:发送短信/邮件/打电话
2012-02-20 22:00 950From:http://www.2cto.com/kf/201 ... -
iPhone应用开发之六:UITableView的详细讲解(一)
2012-02-12 18:02 0From:http://www.2cto.com/kf/201 ... -
iPhone应用开发之五: UIScrollView的详细讲解
2012-02-26 17:45 1012From:http://www.2cto.com/kf/201 ... -
iPhone应用开发之四:UIImageView和UIWebView的详细讲解
2012-02-27 09:14 1334From: http://www.2cto.com/kf/20 ... -
iPhone应用开发之三:UILable和UITextField的详细讲解
2012-02-25 17:41 1142From:http://www.2cto.com/kf/201 ... -
iPhone 应用开发之二:UITextView控件的详细讲解
2012-02-26 17:45 1120From:http://www.2cto.com/kf/201 ... -
iPhone应用开发之一:窗口,视图,视图控制器和UIKit基础
2012-02-29 09:12 1029From:http://www.2cto.com/kf/201 ... -
iPhone操作队列 VS Java线程池
2012-02-24 20:14 732From:http://www.2cto.com/kf ... -
iPhone开发的门槛和成本及线路图
2012-02-12 15:42 0From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(11)--- 多线程的使用与注意事项
2012-02-25 17:40 1022From:http://www.2cto.com/kf/ ... -
iPhone开发进阶(10)--- 在程序中使用GPS
2012-02-25 17:41 911From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(9)--- 用SQLite管理数据库
2012-02-27 09:10 907From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(8)--- 检测屏幕触摸事件
2012-02-25 17:39 940From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(7)--- 利用ModalViewController切换View
2012-02-27 09:09 1033From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(6)--- 编程定制UIButton
2012-02-12 15:29 0From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(5) --- 编程定制UIViewController
2012-02-12 15:26 0From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(4) --- 使用Makefile自动编译iPhone程序
2012-02-12 15:25 0From:http://www.2cto.com/kf/201 ... -
iPhone开发进阶(3) --- iPhone应用程序的启动过程
2012-02-12 15:15 0From:http://www.2cto.com/kf/201 ...
相关推荐
在本教程“知易Cocos2D-iPhone 游戏开发教程005”中,我们将深入探讨Cocos2D-iPhone这一强大的游戏开发框架,它为iOS平台上的2D游戏开发提供了丰富的功能和易用性。Cocos2D-iPhone是基于Cocos2D的一个版本,特别针对...
通过以上总结,我们可以了解到OpenGL ES在iPhone开发中的基础应用,包括基本的图元绘制、坐标系统以及简单的三维图形渲染。这对于初学者来说是一个很好的入门点,同时也为更高级的应用开发打下了坚实的基础。
- **开发环境**:需要熟悉Xcode开发环境,它是官方推荐的iOS应用程序开发工具。 #### 知识点四:游戏项目实践 - **首个项目**:第四章将指导读者完成第一个游戏项目的开发,这是一个非常好的实践机会,可以让初学...
在iOS开发领域,iPhone应用程序的构建是通过使用Apple的Swift编程语言和Xcode集成开发环境(IDE)进行的。这份“iPhone开发秘籍代码 1到5章”涵盖了开发过程中的关键概念,从基础到进阶,让我们逐一解析每个章节的重点...
Android 2.1不仅提升了系统的性能,还引入了许多新功能,使得开发者可以构建更加强大和丰富的移动应用程序。 在Android 2.1开发中,你需要了解以下几个核心知识点: 1. **3G 技术**:3G(第三代移动通信)是基于...
文档内容涵盖了iPhone应用程序开发的各个方面,主要包括以下几个部分: 1. **简介**:介绍了iPhone应用程序的基本概念和发展背景。 2. **环境搭建**:指导开发者如何设置开发环境,包括安装Xcode等工具。 3. **基础...
- **项目结构**:介绍iOS项目的基本构成,包括项目的组织方式、文件夹用途等。 - **工程设置**:讲解如何在Xcode中创建新的iOS工程,设置项目基本信息。 ##### 2. 开始编写代码! - **界面设计**:利用Interface ...
iOS是由Apple公司开发并用于其移动设备,如iPhone、iPad和iPod touch的操作系统。它基于Darwin,一个开源的Unix系统,拥有丰富的用户界面和强大的性能。iOS以其封闭的安全模型和严格的应用审核流程而闻名,确保了...
cocos2d是一款开源的2D游戏开发框架,特别针对iOS设备(如iPhone、iPad和iPod touch)进行了优化。它提供了一系列强大的工具和API,使得游戏开发变得更为直观和高效。无论是专业游戏开发者还是编程新手,都能从中...
《cocos2d中文学习第一部分(1到7章)》是针对iPhone平台上的cocos2d游戏开发框架的学习资料,旨在帮助初学者快速掌握这一强大的2D游戏开发工具。cocos2d是一款开源的游戏引擎,它为开发者提供了丰富的功能和易用的...
3. Android与iPhone的竞争:Android与苹果的iOS构成了智能手机市场的两大巨头,两者在用户体验、应用生态和硬件支持上各有优势。Android的优势在于其开放性,允许更多的定制和自由度,而iOS则以其出色的用户体验和...
它不仅适合初学者快速入门,也能够为有一定基础的开发者提供进阶指南,帮助他们在实际项目中解决具体问题并提高工作效率。无论你是设计师还是开发者,都可以从这本书中获取到大量实用信息,助力你在iOS平台上创造出...
发布构建是将Unity项目转化为可在不同平台上运行的应用程序的过程。Unity支持多种平台,包括Windows、macOS、iOS、Android等。开发者只需简单配置即可实现一键发布,大大简化了跨平台开发的工作流程。 **教程:** ...