自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 iOS 之应用性能调优的25个建议和技巧

注意:每在优化代码之前,你都要注意一个问题,不要养成”预优化”代码的错误习惯。时常使用Instruments去profile你的代码来发现需要提升的方面。Matt Galloway写过一篇很棒的如何利用Instruments来优化代码的文章。还要注意的是,这里列出的其中一些建议是有代价的,所建议的方式会提升app的速度或者使它更加高效,但也可能需要花很多功夫去应用或者使代码变得更加复杂,所

2016-02-23 12:48:46 2662

原创 iOS海哥开发笔记 (海哥原创,常用的设计模式MVC,单例,代理,KVO)

其实iOS中的设计模式有非常多,常用的就下面这四种一.MVC设计模式(设计模式之王)MVC根据角色划分类,涉及到三个角色:Model:模型保存应用程序的数据。View:视图是模型的可视化表示以及用户交互的控件。Controller:控制器是一个协调所有工作的中介者。它访问模型中的数据并在视图中展示它们,同时它们还监听事件和操作数据。一个MVC模式的好的实

2016-02-24 08:59:17 692

原创 iOS海哥开发笔记 (海哥原创,iOS之深拷贝和浅拷贝)

copy与retain的区别:copy是创建一个新对象,retain是创建一个指针,引用对象计数加1。Copy属性表示两个对象内容相同,新的对象retain为1 ,与旧有对象的引用计数无关,旧有对象没有变化。copy减少对象对上下文的依赖。       retain属性表示两个对象地址相同(建立一个指针,指针拷贝),内容当然相同,这个对象的retain值+1也就是说,retain 

2016-02-23 16:53:37 594

原创 iOS海哥开发笔记 (海哥原创,线程安全的几种加锁方法)

在iOS中有几种方法来解决多线程访问同一个内存地址的互斥同步问题:方法一,@synchronized(id anObject),(最简单的方法)会自动对参数对象加锁,保证临界区内的代码线程安全[cpp] view plaincopyprint?@synchronized(self){        // 这段代码对其他 @sy

2016-02-23 12:51:41 550

原创 iOS海哥开发笔记 (海哥原创,iOS 之API概述)

2.6 iOS API简介苹果的iOS API在不同版本间有很多变化,本书采用的是iOS 6。本节中,我们会介绍iOS 6有哪些API,如何使用这些API的帮助文档以及如何使用官方案例。2.6.1 API概述iOS的整体架构图如图2-40所示,分为4层——Cocoa Touch层、Media层、Core Services层和Core OS层,下面概要介绍一下这4层。  图2

2016-02-23 12:46:28 1068

原创 iOS海哥开发笔记 (海哥原创,iOS 之Autolayout(VFL)(二))

2016-02-23 12:45:12 555

原创 iOS海哥开发笔记 (海哥原创,iOS 之Autolayout(VFL)(一))

VFL的子视图居中,网上搜了很多都没找到有用代码,自己研究出来了。代码如下UIActivityIndicatorView* prgrssView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];  prgrssVie

2016-02-23 12:44:04 423

原创 iOS海哥开发笔记 (海哥原创,iOS 之NSBundle介绍)

bundle是一个目录,其中包含了程序会使用到的资源. 这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in). 对应bundle,cocoa提供了类NSBundle.我们的程序是一个bundle. 在Finder中,一个应用程序看上去和其他文件没有什么区别. 但是实际上它是一个包含了nib文件,编译代码,以及其他资源的目录. 我们把这个目录叫

2016-02-23 12:42:54 350

原创 iOS海哥开发笔记 (海哥原创,iOS 之mac终端命令大全介绍 )

OSX 的文件系统OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念。你在桌面上看到的硬盘都挂在 /Volumes 下。比如接上个叫做 USBHD的移动硬盘,桌面上会显示出一个硬盘图标,它实际在哪里呢?在终端里执行 ls /Volumes/USBHD, 看看显示出的是不是这个移动硬盘的内容。根目录位置

2016-02-23 12:41:43 608

原创 iOS海哥开发笔记 (海哥原创,iOS 之同步请求、异步请求、GET请求、POST请求 )

1、同步请求可以从因特网请求数据,一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进行下一步操作,2、异步请求不会阻塞主线程,而会建立一个新的线程来操作,用户发出异步请求后,依然可以对UI进行操作,程序可以继续运行3、GET请求,将参数直接写在访问路径上。操作简单,不过容易被外界看到,安全性不高,地址最多255字节;4、POST请求,将参数放到bod

2016-02-23 12:38:37 548

原创 ios海哥开发笔记 (海哥原创,iOS 之iOS 之NSIndexPath )

是Foundation框架中的一个普通的类,它提供了到嵌套数列的树中特定节点的路径,事实上,它是一个整数阵列,表格视图使用这个去表现在特定章节中的特定行,UITableView用的所有索引路径正好有两个元素,第一个是章节,第二个是行。NSIndexPath和TableViews@interfaceNSIndexPath (UITableView) {}

2016-02-23 12:36:58 856

原创 ios海哥开发笔记 (海哥原创,iOS 之NSCoding )

由于Sqlite数据库的blob数据和NSData的兼容比较好,我想尝试把一个NSArray存入Sqlite。Sqlite不支持数组的直接存储,所以我寻找了一些数组转化为NSData的方法。网上大多数的解决办法都是针对于字符数组,eg: NSArray*array01= [[NSArrayalloc]initWithObjects:@"1",@"2",@"3",nil];这种数

2016-02-23 12:35:41 622

原创 ios海哥开发笔记 (海哥原创,C语言之堆栈入门——堆和栈的区别 )

在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈。我身边的一些编程的朋友以及在网上看帖遇到的朋友中有好多也说不清堆栈,所以我想有必要给大家分享一下我对堆栈的看法,有说的不对的地方请朋友们不吝赐教

2016-02-23 12:34:24 1846

原创 iOS海哥开发笔记 (海哥原创,C语言之内存四区模型和函数调用模型)

内存四区模型流程说明1、操作系统把物理硬盘代码load到内存2、操作系统把c代码分成四个区3、操作系统找到main函数入口执行1、内存四区:一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack):由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(he

2016-02-23 12:33:00 791

原创 iOS海哥开发笔记 (海哥原创,NSCharacterSet 简单用法)

NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到  NSMutableCharacterSet *base = [NSMutableCharacterSet lowercaseLetterCharacterSet]; //字母  NSCharacterSet *decimalDigit = [NSCharacterSet deci

2016-02-23 12:31:16 926

原创 ios海哥开发笔记 (海哥原创,iOS缓存机制NSUserDefaults)

NSUserDefaults可以存取一些短小的信息。比如存入再读出一个字符串到NSUserDefaults:    但是并不是所有的东西都能往里放的。NSUserDefaults只支持: NSString, NSNumber, NSDate, NSArray, NSDictionary.    如果把一个自定义的类存到一个NSArray里,然后再存到NSUserDefaults里也是不

2016-02-23 12:30:09 448

原创 iOS海哥开发笔记 (海哥原创,iOS 通知NSNotificationCenter)

iOS的一种很好用的方法(不知道iOS底层是怎么实现的但是猜测是利用kvc原理实现的,类似于字典原理,再向底层的话,就看看做c函数类似的逻辑,先姑且不谈)。下面让我们看看通知如何使用,再什么情况下使用。    首先通知分成这么几个部分1、addObserver  2、postNotificationName  3、要是不使用的话,避免设备设备内部的线程以及内存浪费或避险内存泄漏的话,要remo

2016-02-23 12:28:31 947

原创 iOS海哥开发笔记 (海哥原创,retain、strong、weak、assign区别)

感觉做iOS开发这么久了,跟同事大哥们学到了不少东西,在此感谢李群,余灵大哥,在任务艰巨的时候,也总是帮助我修改bug,解决逻辑问题,在此感谢心地善良的你们,向你们学习。在学习之中想为以后的同仁们建立一些有帮助的文档,文章,这就是我要做日志的目的,东西不难,但是经常会用到,所有的东西还是要从最基本的去理解,做代码不是实现了就可以(以前吃过这样的亏,用别人的库不明白原理,最后返工了)小到一个细节,以

2016-02-23 12:26:52 598

原创 iOS海哥开发笔记(MapKit的使用)

定位要实现地图、导航功能,往往需要先熟悉定位功能,在iOS中通过Core Location框架进行定位操作。Core Location自身可以单独使用,和地图开发框架MapKit完全是独立的,但是往往地图开发要配合定位框架使用。在Core Location中主要包含了定位、地理编码(包括反编码)功能。定位功能定位是一个很常用的功能,如一些地图软件打开之后如果用户允许软件定位

2016-02-22 17:37:19 529

原创 iOS海哥开发笔记 (海哥原创,数据存储篇之sqlite3的基本使用)

前言:一.数据存储的方式:1.plist: (NSArray,NSString,NSDictionary等OC对象的存储)存储少量数据。2.Preference: (偏好设置/NSUserDefaults)存储一些软件设置,记住密码,自动登录等,存储少量数据。3.归档: (NSKeyedArchiver,NSKeyedUnarchiver)也是存储中

2016-02-22 10:19:55 917

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除