- 博客(25)
- 资源 (33)
- 收藏
- 关注
翻译 关于 Objective-C iVar 的一点说明
Class A:@interface ClassA : NSObject{}@property(nonatomic, retain) Foo* foo;@endClass B:@interface ClassB : NSObject{ Foo* foo;}@property(nonatomic, retain) Foo* foo;@end上面两个类
2012-08-30 12:12:15 3287
原创 lua 1.0 源代码的类图
如果读最新版的代码有问题,可以选一个早期的代码读读。另外,一开始不要淹没在细节中,可以从类图上鸟瞰下实现。类图的PDF文件:http://files.cnblogs.com/Proteas/lua-1-uml.pdf类图如下:
2012-08-29 11:09:57 1858 2
原创 iOS 中的单元测试与持续集成
Unit Test 工具1、OCUnit:从 xcode 2.1 开始集成到开发环境中,使用方便,不需要引入额外的库。并可以配置 xcodebuild,实现在命令行测试,从而在 CI 中进行测试与报告。2、GTM 的单元测试部分:对 OCUnit 进行了扩展,增加了一些宏。地址:https://code.google.com/p/google-toolbox-for-mac/wik
2012-08-21 16:41:01 1460
原创 在 iOS 或者 Mac OS X 中将 NSDictionary 映射为本地对象的方法
在进行 iOS 时一般会遇到从网络上获取 JSON 格式数据的情况,现在有很多框架可以将 JSON 格式的字符串解析成 NSDictionary。但是解析成 NSDictionary 后就直接使用吗?每次读取值,都要知道类型;都要用 objectForKey? 这样我们用起来也太麻烦了。这时我们一般会定义一些业务数据的本地对象封装,我们从这些业务对象中读取需要的值,就方便多
2012-08-09 15:05:58 1248
原创 iOS 中 Lua 脚本的应用
1、为什么要在应用中引入脚本?2、为什么是 Lua ?3、使用 Lua 开发应用的几种模式4、Hello Lua5、Meta-*: Lua 与 Objective-C 集成的原理6、wax 框架及其本身的一些问题7、Demos8、其它9、目前没有解决的问题PDF:http://files.cnblogs.com/Proteas/iOS%E4%B8%ADL
2012-08-02 11:25:42 1144
原创 常用缓存算法收集
1、Belady's algorithms2、random replacement3、first in first out4、least frequent used (LFU)5、simple time-based6、least recently used (LRU)7、adaptive replacement cache (ACR)先记录下来,随后展开了解下。
2012-08-02 11:25:18 736
原创 在 Objective-C 中对 Block 应用 property 时的注意事项
应当使用:@property (nonatomic, copy)今天在这个问题上犯错误了,找了好久才知道原因。另外,简单的进行反汇编看了下,Block 被存储在静态变量区,运行时构造出一个运行栈,进行调用。retain 并不会改变 Block 的引用计数,因此对 Block 应用 retain 相当于 assign。但是既然在静态存储区,为什么会出现 EXC_BAD_ACC
2012-08-02 11:24:55 2016
原创 2D & 3D Engine Resource
http://isgl3d.com/downloadhttp://maniacdev.com/2009/08/the-open-source-iphone-game-engine-comparison/http://maniacdev.com/2011/01/open-source-and-commercial-ios-game-engine-listings-updated/http
2012-08-02 11:24:33 729
原创 关于为什么要使用脚本引擎与脚本的一点思考
目前在做 iOS 应用开发,并在应用中使用了 Lua 脚本引擎。但是有的同事不理解为什么要引入脚本。在应用中引入脚本主要有下面两个原因:1、脚本的表达能力比原生语言强: 这个道理比较简单,比如:一个冒泡排序,用C来实现比用汇编实现,代码行数要少。 这样,用脚本就可以更简练得处理程序中易变部分。2、脚本语言本身的扩展能力强: 这个能力可以以
2012-08-02 11:24:06 726
原创 iOS 应用的签名分两步
第一步:生成 .app 时,只是对代码进行签名,资源会做拷贝输出。这时可以自己写脚本将相关资源拷贝到 .app 的目录,因为利用 xcode 的资源输出,有目录的限制。第二步:将 .app 生成 .ipa 时,会对资源进行签名。
2012-08-02 11:23:21 1180
原创 处理 NSOpertion 间依赖关系的一种方式
我们知道 NSOperationQueue 可以调度 NSOpertion 间的依赖,虽然可以为 NSOperation 增加 Depends,但是框架并没有提供方法,让你可以直接判断依赖关系是否成立。框架这么设计主要是考虑通用性,Operation 执行的成功与否是业务相关的。但是在实际应用中,只有 Opration 依赖的所有操作都执行成功了,当前的 Operati
2012-08-02 11:22:54 708
转载 Understanding the Objective-C Runtime
The Objective-C Runtime is one of the overlooked features of Objective-C initially when people are generally introduced to Cocoa/Objective-C. The reason for this is that while Objective-C (the langu
2012-08-02 11:22:32 1134
转载 Inside the Objective-C Runtime
Inside the Objective-C Runtimeby Ezra Epstein05/24/2002 IntroductionOnce upon a time dynamism in languages (especially OO languages) was a point of debate. Essentially dynamism won: Java added
2012-08-02 11:22:06 1308
原创 关于批量化生产 iOS 应用的一点想法
目标:通过代码,编译,打包生成 IPA 后,然后通过修改 IPA,再签名,打包生成更多的 IPA。前提:iOS 应用程序是可配置的,不管是通过配置文件,还是暴露出来的 SDK(比如:以Lua 方式向外暴露)。相关工具与资料:https://code.google.com/p/iresign/http://www.ketzler.de/2011/01/resign-an-iphone
2012-08-02 11:21:41 1105
原创 在 iOS 应用中使用 Lua 作为模块粘合剂的方法
iOS 中应用的变化主要集中在三个方面:界面,业务逻辑,数据源。下面是自己做的一个技术实验,可以用来处理业务逻辑的变化。大概说一下,具体见代码。使用Lua作为类的粘合剂,主要应用在什么场景呢?比如:点击一个按钮后,程序跳转到什么类或者控制器。思路:向 Lua 提供完备的信息,通过在 Lua 中的配置,实现业务逻辑的整合。推理下去,用 ObjC 代码写模块,模块间的粘合用 Lua
2012-08-02 11:21:07 1013
转载 iOS 应用中对视频进行抽帧的方法
You can do this in one of two ways. The first way is to use the MPMoviePlayerController to grab the thumbnail:MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc]
2012-08-02 11:20:40 3586
原创 安装 Mac OS X 时不要使用大小写敏感的日志文件系统
安装 Mac OS X 时不要使用大小写敏感的日志文件系统,因为这样子很多历史比较久的软件都用不了,比如:Adobe 系列的软件。原因是:早期的 Mac 文件系统并不是大小写敏感的。今天被这个问题折腾惨了。如果已经错了,可以使用 iPartition 处理这个问题。
2012-08-02 11:19:29 3241
原创 在 iOS 应用中直接跳转到 AppStore 的方法
找到应用程序的描述链接,比如:http://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8然后将 http:// 替换为 itms:// 或者 itms-apps://: itms://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8 itms-apps
2012-08-02 11:19:07 1840
原创 iOS 下取消 OAuth 绑定的问题
最近遇到一个问题:在一次程序运行期间,无法取消新浪微博的绑定。原因:新浪微博OAuth绑定时使用了 SSO,并且会在此次程序运行期间保留 Cookie,造成无法取消绑定。处理方法:删除 Cookie。
2012-08-02 11:18:43 945
转载 Common Lisp Style Guide
ref:Common Lisp Style Guide - Ariel Networks LabsPackageOne package per one fileStrangely enough, in case of legacy CL programs, their packages are declared in one file (maybe named "pac
2012-08-02 11:18:22 765
原创 Slime 无法无法加载 asdf 的解决办法
环境: OS:Ubuntu-v11.10 x64 Emacs: 23.3.1使用 apt 安装了 sbcl 与 slime,但是启动时会出现: "/usr/share/common-lisp/source/slime/swank-loader.lisp" there is no package with name "ASDF"解决这个问题可以通过安装
2012-08-02 11:17:48 774
翻译 在 Mac OS X 下编译 Objective-C 运行时
原文地址:http://www.mulle-kybernetik.com/weblog/2011/10/how_to_build_libobjc_for_os_x.htmlMax OS X 版本:10.6.8待编译运行时版本:437.3刚刚自己试了一下,可以编译。另:文章中提到头文件的包含路径为绝对路径,这样不好,可以改为相对路径,比如:以 $(SRCROOT) 为参考。附
2012-08-02 11:17:14 1296
原创 iOS 下一维码与二维码识别相关资料
一维码:barcode二维码:two-dimensional barcode在 iOS 下主要有两个开源库可以用来处理条码:1、Zxing:http://code.google.com/p/zxing2、ZBar:http://zbar.sourceforge.net/两个库都有相应的 demo 程序。其中,zxing 对 Android 支持更好。
2012-08-01 13:20:42 2161
原创 Classic C and C++ Book List
C:1. The C Programming Language (Second edition) - Brian W. Kernighan and Dennis M. Ritchie2. C: A Reference Manual - Samuel P. Harbison and Guy R. Steele3. C Pocket Reference (O'Reilly) - Peter
2012-08-01 13:19:50 1846
原创 在 Windows Server 2008 R2 下用 Visual Studio 2010 编译 Chrome 与 WebKit Chromium Port
Ref: http://www.chromium.org/developers/how-tos/build-instructions-windowsRef:http://trac.webkit.org/wiki/Chromium 环境搭建:1、安装 VS2010 SP1,下载地址:http://go.microsoft.com/fwlink/?LinkId=2107
2012-08-01 13:19:06 1233
Processor Microarchitecture An Implementation Perspective.pdf
2021-04-13
Optimizing Compilers for Modern Architectures
2017-03-07
Data Flow Analysis Theory and Practice
2016-11-01
Zero Configuration Networking: The Definitive Guide
2015-11-09
Open Source Fuzzing Tools
2015-09-09
MachOView-build-2013-05-22
2013-07-28
Programming with Quartz 2D and PDF Graphics in Mac OS X
2013-01-09
Hack the Stack
2012-02-03
The Indispensable PC Hardware Book - Third Edition
2010-10-09
ASP.NET MVC 2 in Action 2nd
2010-06-23
iPhone开发需要看的3本书
2010-03-30
BoundsChecker 6.5 VC++ -----------(6)
2007-11-29
BoundsChecker 6.5 VC++ -----------(5)
2007-11-29
BoundsChecker 6.5 VC++ -----------(4)
2007-11-29
BoundsChecker 6.5 VC++ -----------(3)
2007-11-29
BoundsChecker 6.5 VC++ -----------(2)
2007-11-29
BoundsChecker 6.5 VC++ -----------(1)
2007-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人