標籤:
1. 那些被遺漏的objective-c保留字:http://blog.devtang.com/blog/2013/04/29/the-missing-objc-keywords/ 2. 使用crashlytics來儲存應用崩潰資訊:http://blog.devtang.com/blog/2013/07/24/use-crashlytics/ 3. iOS開發工具篇,AppStore統計工具:http://blog.devtang.com/blog/2013/06/16/ios-dev-tool-app-store-tool/ 4. 談objective-c block實現:http://blog.devtang.com/blog/2013/07/28/a-look-inside-blocks/ 5. objective-c物件模型以及應用:http://blog.devtang.com/blog/2013/10/15/objective-c-object-model/ 6. (一)使用多Target來構建大量相似app:http://blog.devtang.com/blog/2013/10/17/the-tech-detail-of-ape-client-1/ 7. 使用Flurry來統計和分析使用者行為:http://blog.devtang.com/blog/2013/11/14/use-flurry-to-analyse-data/ 8. WechatPayDemo是一個非官方的支付Demo:https://github.com/gbammc/WechatPayDemo 9. https://github.com/facebook/Tweaks 10. 藍芽:http://studentdeng.github.io/blog/2014/03/22/corebluetooth/ 11. rac,mvvm,example:https://github.com/jspahrsummers/enemy-of-the-state/blob/master/Enemy%20of%20the%20State.pdf(https://github.com/jspahrsummers/enemy-of-the-state) 12. SDWebImage的緩衝機制: 13. NSHashTable:http://billwang1990.github.io/blog/2014/03/31/nshashtable-and-nsmaptable/ 14. 初始化階段 —— load 和 initializehttp://www.cnblogs.com/biosli/p/NSObject_inherit.html 15. https://github.com/mxcl/PromiseKit 16. http://gracelancy.com/blog/2014/04/21/toll-free-bridging/ 17. https://github.com/intentkit/IntentKit 18. https://github.com/granoff/Lockbox 19. https://github.com/jerols/PopTut 20. http://foggry.com/blog/2014/04/25/githubyou-xiu-xiang-mu-ios/(開源項目大全) 21. GCD深入理解:https://github.com/nixzhu/dev-blog/blob/master/2014-05-14-grand-central-dispatch-in-depth-part-2.md 22. https://github.com/hfossli/AGGeometryKit-POP 23. https://github.com/bsalinas808/Loop 24. http://blog.xcodev.com/archives/tagged-pointer-and-64-bit/ 25.
- Viewfinder:移動支付公司 Square 將去年收購的照片應用 Viewfinder 開源了,包含服務端、iOS 和 Android 應用代碼。這裡有該項目的介紹。
26,
- Eggscellent開源:Eggscellent是Mac上的開源的番茄鐘應用。
27.
- PNChart:作者周楷雯Kevin發布了PNChart 0.5版本,提供了一個更漂亮的Pie Chart介面。
28。
- 文字編輯器Atom開源:GitHub將其開發的文字編輯器Atom開源。
(可用於《閱讀》的參考) 29.
- FlappySwift:FlappySwift用swift重寫的一個開源Flappy Bird遊戲。
- JokeClient-Swift:JokeClient-Swift是@YANGReal用swift寫了一個開源的糗事百科的用戶端,主要涉及網路請求,圖片載入、緩衝、自訂UITableViewCell、delegate以及closure,內容介面基於糗事百科API。
- swift-2048:一個用Swift實現的2048遊戲。
- UIImageView-BetterFace-Swift:UIImageView-BetterFace-Swift是一個根據靶心圖表象中頭像的位置進行智能圖片裁剪的開源庫,該地址是其更新的Swift版本。
- HackerNews:用Swift實現的HackerNews用戶端。
- LTMorphingLabel:用swift寫的文字飄入飄出的效果。
- Crashlytics-FPCustomHandler:這是一個為 Crashlytics 寫的 category, 可以方便添加自己的崩潰處理函數。
- ParseChat:ParseChat是基於Parse實現的一個即時的聊天室開源應用。
- Realm:Realm是一個真正為行動裝置打造的資料庫,同時支援Objective-C和Swfit。Realm宣稱其相比Sqlite,在行動裝置上有著更好的效能表現。
https://github.com/vsouza/awesome-ios http://weibo.com/2584320772/BfHoM6MM4#_rnd1434548517662
- vpn-deploy-playbook:一個自動部署各種FQ服務的工具,包括IPSec,L2TP,PPTP,Cisco AnyConnect,SigmaVPN,APN,shadowsocks,OpenVPN,DNS,SPDY,使用者管理等功能。
iReSign:一個可以把ipa用企業認證重新簽名的開源項目
《iOS8-day-by-day》:這是一個學習iOS8的系列文章合集,一共有16篇文章。
- 《objc非主流代碼技巧》:看開原始碼時,總會看到一些大神層級的代碼,給人眼前一亮的感覺,多數都是被淡忘的C語言文法,作者在文章中總結了objc寫碼中遇到的各類非主流代碼技巧和一些妙用。
https://github.com/ShinobiControls/iOS8-day-by-day,初步學習iOS。。。。。 http://mattgemmell.com/api-design/ https://github.com/tonymillion/Reachability,ARC版本的 https://github.com/shu223/iOS8-Sampler,iOS 8 sample。。。 https://github.com/miklselsoe/MSSPopMasonry:Use Masonry with the Facebook Pop animation framework. 鴨子物件?http://blog.sunnyxx.com/2014/08/26/objc-duck-advanced/ https://github.com/Brimizer/Slidden:An open source, customizable, iOS 8 keyboard.、http://blog.sunnyxx.com/2014/08/24/objc-duck/
- 《( ) –> ( )》:
() -> ()不是什麼Emoji,而是一種高度抽象的編程範式,它表示了一個函數式的編程思想,即值的變化過程。本文從swift語言入手分析,元組,函數,閉包等的設計對它進行解釋,並闡釋swift語言設計的大局觀,最後分享一個Reactive Cocoa作者的Talk中的編程思想。
- 《如何用Swift做一個不錯的按鈕變換動畫》:文章介紹了如何用Swift語言,採用
Core Graphics來完成兩個按鈕之間的切換動畫效果(如下所示)。作者也將相關的代碼開源在了這裡。
- 《為什麼唱吧iOS 6.0選擇了Mantle》:唱吧6.0一個很重大的修改就是基於Mantle重建(建立)了Model層。文章分享了使用Mantle的決策及執行過程。
- AsyncDisplayKit:AsyncDisplayKit是facebook開源的一個架構,它能讓複雜的使用者互動效果流暢地顯示,facebook使用它開發完成了paper。Facebook也在 這篇文章 中,詳細介紹了AsyncDisplayKit。
KZBootstrap:一個方便iOS工程初始化的項目,它包含一些推薦的工程設定和工具。
NewsFourApp:一個模仿網易4.0新UI架構的開源項目。
- 《Objective-C Runtime》:因為OC是一門動態語言,所以它總是想辦法把一些決定工作從編譯串連延遲到運行時。也就是說只有編譯器是不夠的,還需要一個運行時系統 (runtime system) 來執行編譯後的代碼。這就是 Objective-C Runtime 系統存在的意義,它是整個OC運行架構的一塊基石。本文詳細整理了 Cocoa 的 Runtime 系統的知識,它使得 Objective-C 如虎添翼,具備了靈活的動態特性,使這門古老的語言煥發生機。主要內容包括:與Runtime互動、Runtime術語、訊息機制、動態方法解析、訊息轉寄、壯的執行個體變數(Non Fragile ivars)、Objective-C Associated Objects。
-
《刨根問底Objective-C Runtime(1)- Self & Super》:本文通過分析clang重寫的Objective-C源碼,從而解釋Objective-C中的self和super在編譯器層面分別是如何處理的。
- 《刨根問底Objective-C Runtime(2)- Object & Class & Meta Class》:本文主要講述objc runtime中關於Object & Class & Meta Class的細節。
《刨根問底Objective-C Runtime(3)- 訊息 和 Category》:文章通過一道習題,利用分析Objective-C實現原始碼,講解了Objective-C的訊息和Category的實現原理。
- 《刨根問底Objective-C Runtime(4)- 成員變數與屬性》:本篇筆記主要是講述Objective-C Runtime的成員變數和屬性。
CBStoreHouseRefreshControl:一個效果很酷炫的下拉重新整理控制項。
- ZLSwipeableView:ZLSwipeableView是一個方便做出卡片效果的UI庫,支援各種卡片的滑動效果。
- YTKNetwork:YTKNetwork 是基於 AFNetworking 封裝的 iOS 網路程式庫,提供了更高層次的網路訪問抽象。相比 AFNetworking,YTKNetwork 提供了以下更進階的功能:按時間或版本號碼緩衝網路請求內容、檢查返回 JSON 內容的合法性、檔案的斷點續傳、批量的網路請求發送、filter和外掛程式機制等。
-
-
Objective-Chain:Objective-Chain是一個物件導向的響應式架構,作者表示該架構吸收了 ReactiveCocoa 的思想,並且想做得更物件導向一些。
《UIAlert?Controller》:你知道 UIAlertView、UIActionSheet (以及它們各自的 delegate protocols) 在 iOS 8 中已經被廢棄了嗎?本文章的主題就是 UIAlertController,向大家展示如何替換舊的 alert,以及這些操作方法的進階擴充。
-
- 《讀 Facebook App 標頭檔的一些收穫》:最近在看一些 App 架構相關的文章,也看了 Facebook 分享的兩個不同時期的架構(2013 和 2014),於是就想一窺 Facebook App 的標頭檔,看看會不會有更多的收穫,確實有,還不少。作者分享了從標頭檔中擷取到的一些資訊。
《SizeClass 和AutoLayout教程3》:文章翻譯自《iOS8 by tutorials》的第一章,以開發一個天氣應用為例子,介紹了SizeClass 和AutoLayout相關知識。譯者:@葉孤城___。
《SizeClasss和AutoLayout教程4》:文章翻譯自《iOS8 by tutorials》的第一章,介紹了如何在不同的 SizeClass 給同一個label設定不同的字型大小和樣式。譯者:@葉孤城___。
《如何做出炫酷的卡片動畫1》:作者介紹了有關卡片動畫的研究和實現。
http://objccn.io/issue-18-2/ http://objccn.io/issue-18-3/
- RTImageAssets:RTImageAssets 是一個 Xcode 外掛程式,用來產生 @3x 的圖片資源對應的 @2x 和 @1x 版本,只要拖拽高清圖到 @3x 的位置上,然後按
Ctrl+Shift+A 即可自動產生兩張低清的補全空位。當然,如果你對圖片品質要求不高的話,你也可以從 @2x 的圖產生 @3x 版本。
-
-
- PQFCustomLoaders:PQFCustomLoaders 提供了高品質的、定製化的載入進度條
- 《Method Swizzling 和 AOP 實踐》:利用 Objective-C 的 Runtime 特性,我們可以給語言做擴充,協助解決項目開發中的一些設計和技術問題。這一篇,我們來探索一些利用 Objective-C Runtime 的黑色技巧。這些技巧中最具爭議的或許就是 Method Swizzling 。文本介紹了利用 Method Swizzling,結合 AOP 來做一些打 Log 的工作。利用 objective-C Runtime 特性和 Aspect Oriented Programming ,我們可以把瑣碎事務的邏輯從主邏輯中分離出來,作為單獨的模組。它是對物件導向編程模式的一個補充。
- BreakOutToRefresh:BreakOutToRefresh 是一個有趣的項目,它利用 SpriteKit 在下拉重新整理過程中做了一個打磚塊遊戲。
- RAMAnimatedTabBarController:RAMAnimatedTabBarController 是一個讓 TabBar 上的元素能夠顯示動畫效果的開源庫。
VVBlurPresentation:VVBlurPresentation是一個很簡單易用的在原來view conntroller基礎上做模糊,然後present新的view controller的小項目。作者是onevcat。
- 《Swift開源項目精選》:該作者將 2014 年 Swift 開源項目做了一個篩選和匯總。
- peertalk:peertalk 是一個支援 iOS 與 Mac 通過 USB 相互連訊的開源庫。 Duet Display 基於此實現了將 Mac 介面呈現到 iOS 裝置上。
- KSHObjcUML:KSHObjcUML 是一個 Objective-C 類參考關聯性圖的 Xcode 外掛程式。作者是:@kimsungwhee。
- 《如何自己動手實現 KVO》:KVO 是 Objective-C 對觀察者模式(Observer Pattern)的實現。也是 Cocoa Binding 的基礎。當被觀察對象的某個屬性發生更改時,觀察者對象會獲得通知。本文探究了 KVO (Key-Value Observing) 實現機制,並去實踐一番:利用 Runtime 自己動手去實現 KVO 。
- 《QQ 中未讀氣泡拖拽消失的實現分析》:QQ 中針對強迫症有個很棒的互動,對於那些暫時不想理會的未讀資訊氣泡,可以直接手指拖拽去掉。本文介紹了其實現方法。
- 《提升 UITableView 效能-複雜頁面的最佳化》:隨著 App 的使用者介面的內容越來越豐富,再強的手機可能都無法同時渲染複雜的 UI 介面和保證流暢的體驗。本文分享了一些提升 UITableView 效能的技巧。
《UIResponder》:在 UIKit 中,IApplication、UIView、UIViewController 這幾個類都是直接繼承自 UIResponder 類。另外 SpriteKit 中的 SKNode 也是繼承自 UIResponder 類。因此 UIKit 中的視圖、控制項、視圖控制器,以及我們自訂的視圖及視圖控制器都有響應事件的能力。本文詳細介紹了一個 UIResponder 類提供的準系統。
《實現一個 TODO 宏》:文章介紹了如何?一個能產生編譯器警告的 TODO 宏,用於在代碼裡做備忘。
- 《First Impressions using React Native》:作者介紹了他使用 Facebook 即將開源的 React Native 的感受。
- iOS-Universal-Framework:iOS-Universal-Framework 是一個方便你將第三方 SDK 編譯成 Framework 的開源工具。
http://tech.glowing.com/cn/implement-kvo/
《如何用純程式碼構建一個 Widget(today extension)》:隨著 iOS8 的發布,各種 iPhone 的新玩法出現了,其中最引人關注的就是 today extension(也叫做 widget)。網上有很多相關的文章教你如何編寫一個簡單的 widget,但是卻沒有一篇適合我們這種純程式碼的擁躉。本文介紹了如何用純程式碼的方式來構建一個 widget。
- 《iOS 圖片載入速度極限最佳化—FastImageCache 解析》:FastImageCache 是 Path 團隊開發的一個開源庫,用於增益圖片的載入和渲染速度,讓基於圖片的列表滑動起來更順暢,本文分析了它的實現方式。
- BLKFlexibleHeightBar:BLKFlexibleHeightBar 是一個使導覽列高度可以動態變化的 UI 庫。
《輕鬆學習 Objective-C 訊息轉寄》:作者在文章中通過一個小例子來講解什麼是訊息轉寄,以及如何訊息轉寄,希望看完這篇文章時大家會徹底的明白 OC 的訊息轉寄機制。
《React 入門執行個體教程》:React 起源於 Facebook 的內部項目,因為該公司對市場上所有 JavaScript MVC 架構,都不滿意,就決定自己寫一套,用來架設 Instagram 的網站。本文是阮一峰原創的入門教程。
- 《React Native 通訊機制詳解》:React Native 是 facebook 剛開源的架構,可以用 javascript 直接開發原生 APP,先不說這個架構後續是否能得到福士認可,單從源碼來說,這個架構源碼裡有非常多的設計思想和實現方式值得學習,本文介紹了它最基礎的 JavaScript-ObjectC 通訊機制。
《為 GCD 隊資料行繫結 NSObject 類型上下文資料-利用 __bridge_retained(transfer) 轉移記憶體管理權》:本文介紹了如何合理運用 __bridge_retained(transfer) 關鍵字轉換對象的記憶體管理權,讓我們自己控制對象的生命週期。
- 《Don’t React》:本文作者從多方面分享了他對於 React 架構的負面看法。通過此文,大家可以更加客觀地瞭解 React 這個架構。
Lister:Lister 是蘋果提供的官方 Demo。包含了 iOS、Mac 和 Apple Watch 版本,並且為這個 demo 分別用 Objective-C 和 Swift 實現了一遍,最後還包括了 30 頁的文檔。
HackerNews-React-Native:HackerNews-React-Native 是用 React Native 完成的 HackerNews 用戶端。
RMPZoomTransitionAnimator:RMPZoomTransitionAnimator 是一個放大縮小的動效開源庫,可以實現圖片的放大縮小效果。
- MMTweenAnimation:MMTweenAnimation 是一個基於 POP 的擴充,提供了 10 種自訂的動效。
- Kingfisher:Kingfisher 是一個用於圖片緩衝的開源庫,類似 SDWebImage,但是完全基於 Swift 語言開發。
BCMagicTransition:BCMagicTransition 是一個動效架構,用於自訂 UINavigationController 的切換動畫,效果類似 Keynote 軟體中 Magic Move 切換。它可以用於任意兩個 UIViewController 之間,只需指定兩個 VC 中的相同元素即可
- 《Increasing Performance by Reducing Dynamic Dispatch》:來自蘋果官方部落格的文章,介紹了通過減少動態分發,來提高 Swift 程式的執行效率的辦法。具體做法上,文章分享了使用
final 關鍵字,使用 private 關鍵字,以及使用 Whole Module Optimization 編譯參數來進行深度最佳化。
唐巧的iOS技術部落格選摘