【读书笔记】iOS-应用程序剖析
一,Default.png
包含应用程序默认扉页的PNG图像文件。用户运行应用程序时,iPhone会用此图片显示一个动画,产生由小变大来到屏幕前的效果。应用程序的Default.png文件加载后会不断变大,直到充满整个屏幕。在应用程序完成启动前,这个分变率大小为320*480的图片将一直显示在屏幕上。通常,应用程序的扉页由全黑或全白的背景加一个徽标构成,也可能是一个背景图,与应用程序初始化后显示的界面类似。
二,icon.png
包含应用程序图标的PNG图像文件。此图标显示在iPhone主界面中。苹果公司建议的图标尺寸是57*57像素。文件可以随意命名,只要在下文讲解的Info.plist清单中指定即可。图标在显示时会自动“加亮”,因此,无需考虑绘制图标的圆角边框和高亮效果。
应用程序 的icon.png和Default.png文件如果存在的放,也被复制到程序文件夹中。如果没有这两个文件,iPhone将会使用效果最差的默认图片来替代。在你发布讨好你你呢的应用程序时,要确保创建并包含这些图片,以便让程序显得专业。
三,交叉编译。
交叉编译是这样一种编译器:它在一种系统平台上运行,编译生成另一种系统平台的可执行程序。在iPhone SDK中,编译器运行在Mac OS X桌面机器上,编译生成的却是iPhone的ARM架构上的可执行程序。
四,iPhone模拟器。
你无法得知应用程序的哪个部分会大量耗用iPhone的CUP和内存,这是因为桌面计算机拥有更多的资源来运行你的应用程序。图形处理缓慢以及其他一些问题可能要到真机调试的时候才会显现出来。
五,模型-视图-控制器
iPhone上的软件开发都要遵循模型-视图-控制器模式,模型,负责应用程序的数据和业务逻辑。视图负责向用户展现数据的用户界面元素,并允许用户进行操作。控制器提供了用户界面元素和数据之间的互动。如响应多点触摸手势,交互事件以及在逻辑的不同部分之间切换。
六,添加框架。
静态链接会将对象直接编译到你的应用程序中。而动态链接则是运行进加载对象。
七,引入。
使用#import的一个好处是它有一种内建的逻辑,可以确保同一个资源被包含的次数绝对不会多于一次。这取代了在C代码中常常可以见到的,用宏来做标记的那种权宜之计。
参考资料:《AppStore掘金-iPhone SDK应用程序开发》
【读书笔记】iOS-应用程序剖析的更多相关文章
- 远程办公《Remote》读书笔记:中国程序员在家上班月入过六万不是梦
这不是一本新书,这是一本很值得中国程序员看的老书,所以我不是来做卖新书广告的:) 但它的确是一本好书,这本书在Amazon上3个business categories排第一.作者Jason Fried ...
- 错误内存【读书笔记】C程序中常见的内存操作有关的典型编程错误
题记:写这篇博客要主是加深自己对错误内存的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢. 对C/C++程序员来讲,内存管理是个不小的挑战,绝对值得慎之又慎,否则让由上万行代码构成的 ...
- [读书笔记]iOS 7 UI设计 对比度
好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...
- Node.js高级编程读书笔记 - 6 应用程序构建和调试 - Never
Explanation 现阶段console.log(...),util.inspect(...), JSON.stringify(...)在控制台输出已经够用了[2015/07/19]. 单元测试隶 ...
- 读书笔记一 Java程序员的基本修养(数组及其内存管理)
1.1 数组初始化 1.1.1 java数组是静态的 java数组被初始化之后,该数组所占的内存空间.数组长度都是不可变的. java程序中的数组必须经过初始化才可使用. 数组的初始化有两种方式: 1 ...
- 《java并发编程实战》读书笔记9--并发程序的测试
第12章 并发程序的测试 大致分为两类:安全性测试和活跃性测试 12.1 正确性测试 找出需要检查的不变性条件和后验条件.接下来将构建一组测试用例来测试一个有界缓存.程序清单12-1给出了Bounde ...
- 读书笔记-iOS核心动画高级技巧
如果不使用+imageNamed:,那么把整张图片绘制到CGContext可能是最佳的方式了. 这里我们利用了CALayer的KVC来存储和检索任意的值,将图层和索引打标签. 使用KVC打标签
- Node.js高级编程读书笔记Outline
Motivation 世俗一把,看看前端的JavaScript究竟能做什么. 顺便检验一下自己的学习能力. Audience 想看偏后台的Java程序员关于前端JavaScript的认识的职业前端工程 ...
- 深入理解Java虚拟机 -- 读书笔记(1):JVM运行时数据区域
深入理解Java虚拟机 -- 读书笔记:JVM运行时数据区域 本文转载:http://blog.csdn.net/jubincn/article/details/8607790 本系列为<深入理 ...
- STL源码剖析读书笔记之vector
STL源码剖析读书笔记之vector 1.vector概述 vector是一种序列式容器,我的理解是vector就像数组.但是数组有一个很大的问题就是当我们分配 一个一定大小的数组的时候,起初也许我们 ...
随机推荐
- iOS-【最新】跳转到 App Store 评分
APP应用内 App Store 跳转评分 NSString *itunesurl = @"itms-apps://itunes.apple.com/cn/app/id你的APPid?mt= ...
- Vue2.5开发去哪儿网App 第二章笔记
Vue完成 TodoList 1.默认方式 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Java 多线程学习笔记:wait、notify、notifyAll的阻塞和恢复
前言:昨天尝试用Java自行实现生产者消费者问题(Producer-Consumer Problem),在coding时,使用到了Condition的await和signalAll方法,然后顺便想起了 ...
- This Gradle plugin requires Studio 3.0 minimum
从github上下载的项目遇到一个问题:Error:This Gradle plugin requires Studio 3.0 minimum 意思就是说studio版本不高,导入的项目的版本是3. ...
- SHELL脚本编程的常识和VI常用技巧
来源:http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTM#_Toc3751808 ...
- 修改wireshark协议解析规则
不同的协议有不同的解码器,wireshark尝试为每个包尝试找到正确的解码器,特定的情况有可能会选择错误的解码器. 1.使用了其它协议的标准端口,被错误解码,使用udp的80端口发送数据被当作QUIC ...
- CentOS7安装sogou输入法
centos7中自带的ibus用起来相当不爽,就决定自己换个搜狗,遇到阻力不少,在此记下,防止下次不会也给大家提供一些参考.(参见<kali下安装中文输入法>) 准备阶段: 安装fcitx ...
- filebeat-2-通过kafka队列链接logstash
filebeat 直接到logstash, 由于logstash的设计问题, 可能会出现阻塞问题, 因为中间使用消息队列分开 可以使用redis, 或者kafka, 这儿使用的是kafka 1, 安装 ...
- js设计模式之发布/订阅模式模式
一.前言 发布订阅模式,基于一个主题/事件通道,希望接收通知的对象(称为subscriber)通过自定义事件订阅主题,被激活事件的对象(称为publisher)通过发布主题事件的方式被通知. 就和用户 ...
- netty源码解解析(4.0)-4 线程模型-概览
netty线程体系概览 netty的高并发能力很大程度上由它的线程模型决定的,netty定义了两种类型的线程: I/O线程: EventLoop, EventLoopGroup.一个EventLoop ...