Instagram 代码背后的免费午餐

http://diwublog.com/archives/165

 

这篇博文。)Instagram 就是这样一款杀器。精美的 UI 、流畅的体验以及高水准的滤镜 ( filter ) 算法让这款应用在不到半年的时间内轻松拿下两百万的注册量以及一亿张照片的上传量。然而,出乎所有人意料, Instagram 本身仍然只是一个四人组成的团队。作为开发者,我们很难想象这个“袖珍团队”是如何在如此短暂的时间内,一边高效的开发代码,一边有条不紊的升级服务器,一边还能打理日常运营甚至悄悄拿下百万美元的投资。详细列出了他们在开发过程中用到的全部开源项目。这么说来, Instagram 的辉煌的确有点点“站在了巨人肩膀上”的意思。在代码开源潮流愈演愈烈的今天,就让我们仔细看看这款大众情人应用是站在了哪些优秀开源代码的肩膀上的。GitHub 代码下载 )GitHub 代码下载 )GitHub 代码下载 )GitHub 代码下载 )GitHub 代码下载 )GitHub 代码下载 )Google Code 代码下载 )GitHub 代码下载 )

(本文已有更新,增补了更多开源项目介绍,请访问

 

有些 app 天生属于 iPhone 必备杀器。刚上架 4 个月便风靡全球的

不过其实呢, Instagram 应用并不是一个完全从头到脚一行一行纯粹原创的应用, Instagram 的作者在应用中和网页上

/**********************

1. SFHFKeychainUtils (

**********************/

还在用明文以及 SQLite 存储用户账号密码?你太凹凸了。 Cocoa Touch 本身就提供了安全的 Key Chain 供我们存储敏感信息。不过 Key Chain 的接口实在是难用到不敢恭维。于是就有牛人开发出了这款轻巧方便的 SFHFKeychainUtils 代码。不说了,实在是很好用。一共只有三个接口,看一眼头文件你就明白了。

1
2
3
4
5
6
7
8
9
10
11
12
13
#import <UIKit/UIKit.h>

@interface SFHFKeychainUtils : NSObject {

}

+ ( NSString * ) getPasswordForUsername : ( NSString * ) username andServiceName : ( NSString * ) serviceName error : ( NSError ** ) error;

+ ( BOOL ) storeUsername : ( NSString * ) username andPassword : ( NSString * ) password forServiceName : ( NSString * ) serviceName updateExisting : ( BOOL ) updateExisting error : ( NSError ** ) error;

+ ( BOOL ) deleteItemForUsername : ( NSString * ) username andServiceName : ( NSString * ) serviceName error : ( NSError ** ) error;

@end

/**********************

2. MGTwitterEngine (

**********************/

Twitter 官方 Objective-C SDK 。

/**********************

3. XAuthTwitterEngine (

**********************/

在 MGTwitterEngine 的基础之上,专门针对 XAuth 的一套 SDK 。

/**********************

4. ASIHTTPRequest (

**********************/

我琢磨着,估计绝大多数 iPhone 开发者跟我一样,从接触 Objective-C / Cocoa Touch 的第一天起,就一直没用过 Cocoa Touch 提供的 NSURLConnection ,而只用过 ASIHTTPRequest 。没办法, Cocoa Touch 提供的 HTTP 接口不比它提供的 Key Chain 接口好用到哪去…

/**********************

5. MBProgressHUD (

**********************/

看图不说话。 MBProgressHUD 就是图中那个美丽的框。(截图来自 Pandora 应用)

 

/**********************

6. EGOImageLoading (

**********************/

通过 EGOImageLoading ,我们能够更加方便的从服务器端读取图片,并且轻松的实现 Memory / Disc 两个级别的图片缓存。

/**********************

7. SBJSON (

**********************/

我们天天嘴里嚷着“ HTTP 通讯一定要序列化 ( Serialization ) ”。 SBJSON 就是业界公认的 JSON 格式的 Objective-C  实现版。

/**********************

8. Facebook (

**********************/

大名鼎鼎的 Facebook SDK for iOS。

Instagram 提供的官方列表到这就结束了。其实吧,我由衷希望哪天 Instagram 自己能把自己给开源了,特别是 filter 那一大块的基于 AVFoundation 的滤镜算法。不过估计他们不会答应。 :-)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值