1. 程式人生 > 實用技巧 >swift常用第三方庫

swift常用第三方庫

https://www.jianshu.com/p/03af23d1a0bc

swift常用第三方庫

網路

Alamofire:http網路請求事件處理的框架。

Moya:這是一個基於Alamofire的更高層網路請求封裝抽象層。

Reachability.swift:用來檢查應用當前的網路連線狀況。

綜合

Perfect:swift的伺服器端開發框架(針對於移動後端開發、網站和web應用程式開發)。

RxSwift:
函式響應式程式設計框架,是ReactiveX的swift版本,可以簡化非同步操作和事件/資料流。

Dollar:無需擴充套件任何內建物件就為Swift語言提供有效的函數語言程式設計輔助方法,類似於Lo-Dash或JavaScript中的Underscore。

MonkeyKing:社會化分享框架,支援分享texturlimageaudiofileWeChatQQAlipayWeibo

OAuthSwift:國外主流網站OAuth授權庫。

R.swift:以一種優雅安全的方式使用資原始檔。

Design-Patterns-In-Swift:swift實現的各種設計模式。

Whisper:使用簡單、功能實用的訊息及應用通知元件。

Surge:mattt寫的效能加速框架,為數字訊號處理和影象處理提供高效能。

Animation

Spring:MengTo寫的動畫框架,買過他的書《Design+Code》

EasyAnimation:主要應用於UIView.animateWithDuration(_:, animations:...)

IBAnimatable:主要使用於Interface Builder,不需要一行程式碼就可打造擁有炫酷動畫效果的UI介面。

Advance:可應用於 iOS、 tvOS、 and OS X的動畫框架。

PeekPop:使用3D touch 被引用的兩個動畫特性peekpop

Transition

StarWars.iOS:很炫酷的轉場動畫效果,檢視碎片化掉落。

其他動畫

NumberMorphView:label數字變形過渡動畫,用於金額數字變動或者時間上面會非常nice!

FillableLoaders:自定義的進度載入動畫。

資料處理

SQLite.swift:用swift封裝的sqlite 3

操作框架。

解析、轉換

SwiftyJSON:很好、很方便地處理JSON資料。

Argo:函式式json解析轉換庫。

ObjectMapper:把json物件對映為model物件。

儲存

SwiftyUserDefaults:對NSUserDefaults的封裝,讓NSUserDefaults使用更簡單。

KeychainAccess:使用Keychain非常方便。

其他

SwiftString:關於swift中string處理的擴充套件,有between(left, right)camelize()capitalize()count(string)decodeHTML()contains(substring)等。

ReSwift:單向資料流處理,靈感來自於redux

Category、Extension

ExSwift: 包含一組標準型別和類的Swift擴充套件。

載入指示、HUD

NVActivityIndicatorView:很多漂亮的載入指示器。

FillableLoaders:自定義的進度載入器,有wavesplainspikerounded等效果。

Refresh

DGElasticPullToRefresh:有彈性效果的下拉重新整理控制元件。

圖表、繪畫

Charts:非常好的圖表框架,類似於MPAndroidChart

PNChart-Swift:周凱文寫的PNChart的swift版。

AutoLayout

SnapKit:自動佈局框架,類似於Masonry。(推薦)

Cartography:自動佈局DSL。

Neon:一款關於UI自動佈局的框架。

Stevia:自動佈局。

TZStackView:UISatckView的代替品,支援iOS7+。

UIKit

Chatto:輕量級構建聊天應用的框架。

Koloda:卡片檢視,而且滑動檢視有滑動卡片一樣的動畫效果。

ImagePicker:圖片選擇器。

MaterialKit:關於Material design做的一系列UI元件。

Material:集AnimationUI與一身,還有IconColor等元素,使用這個庫就可以打造一個漂亮的UI介面並具有優雅的動畫效果。

引導頁、新手教程

IFTTT/RazzleDazzle:整合引導頁,具有不錯的動畫效果。

Instructions:應用於操作指南、新手教程。

Tab Bar

Animated Tab BarRamotion出品,給tabbar items各單元新增動畫效果。

Adaptive Tab Bar:同樣的Ramotion出品,提供適合的Tab Bar。

Table View

Eureka:通過詳細的對映,建立動態的table-viewforms。

folding-cell:摺疊的cell效果,動畫很nice。

Alert、Sheet

SCLAlertView-Swift:不錯的一款alert view

SweetAlert-iOS:alert。

Button

DOFavoriteButton:有動畫效果的button,適用於收藏喜歡點贊等。

hamburger-button: hamburger button,動畫過渡不錯。

Switch

paper-switch:Ramotion出品turned on覆蓋父檢視的動畫效果。

Label

LTMorphingLabel:擁有很多種特性的label。

ActiveLabel.swift:支援HashtagsMentionsLinks響應事件處理。

TextField

TextFieldEffects:具有非常多、非常nice的輸入框檢視。

PhoneNumberKit:專門針對電話號碼格式做的一個輸入框,很贊。

SkyFloatingLabelTextField:類似於OCJVFloatLabeledTextField,編輯就會出現浮動的提示label。

FloatLabelFields:類似於SkyFloatingLabelTextField

TextView

NextGrowingTextView:取自於HPGrowingTextView,文字輸入檢視,對於訊息編輯非常有用。

Font、Color

Hue:整合color功用的庫,使用的是hex顏色值。

CoreText、AttributeText

TextAttributes:封裝NSAttributedString的框架,讓attributed strings處理更加簡單,而且是鏈式結構,看起來更加直觀。

Image

GPUImage2:GPUImage的Swift版,GPU加速imagevideo的處理。

圖片載入、快取

Kingfisher:喵神王巍寫的一款關於圖片下載、快取的框架,靈感取自於SDWebImage

HanekeSwift:輕量帶快取高效能圖片載入元件。

Gif

Gifu:載入gif的框架,表現良好。

JWAnimatedImage:載入gifapng的引擎,低記憶體和cpu消耗。

特殊效果

Filterpedia:給圖片加濾鏡效果,有很多種濾鏡。

Toucan:圖片處理,支援重設尺寸、裁剪、風格化等

Menu

FlowingMenu:很有意思的一個menu,具有平滑的彈簧效果,且手勢拖動動畫特別有趣。

ENSwiftSideMenu:手勢側滑menu

CircleMenu:簡單、優雅的一款circle menu,有不錯的動畫效果。

Page Menu

PageMenu:滑動出現不同分頁的一個pagemenu,用於不同狀態分頁效果上是很好的選擇。

XLPagerTabStrip:功能同上,類似於androidPageTabStrip

測試

Quick:測試框架,支援SwiftOC,靈感來自於RSpec,Specta, andGinkgo

Sleipnir:BDD測試框架,靈感來自於OC寫的cedar

日誌、Log

XCGLogger:功能完整的日誌管理庫。

Log:強有力的日誌框架。

工具、外掛

Carthage:包管理工具,類似於CocoaPod

swift-package-manager:同樣的,包管理工具。

SwiftLint: 一個用於檢查 Swift 程式設計風格和約定的試驗性工具。

其他

TSWeChat:仿Wechat

FlappySwift:遊戲flappy bird的swift實現。

OCR

SwiftOCR:ocr影象識別庫。

Asynchronous

PromiseKit:能提供強大的 iOS 開發非同步功能,非常容易使用。

Async:關於GCD非同步分發的語法糖。

KVO

Observable-Swift:用於kvo的庫。

Permission

PermissionScope:統一許可管理。(推薦)

Permission:統一管理iOS系統的許可,比如相機相片定位等。

App內購

SwiftyStoreKit:封裝的輕量級的APP內購框架。

Bluetooth

BluetoothKit:使用藍芽更方便。

App間跳轉、DeepLink

Appz:非常方便地實現App間跳轉和DeepLink。

狀態機

SwiftTask:用Swift編寫的狀態機,綜合了 Promise + progress + pause + cancel,使用SwiftState。

演算法以及資料結構

swift-algorithm-club:swift中的演算法以及資料結構,還有解釋說明。

開源APP

Yep:周凱文團隊開源的一個社交APP,對於學習swift開發整個專案非常有價值。

資料、資源

iOS-9-Sampler:關於iOS9新特性的所有demo。

iOS9-day-by-day:day-by-day系列相信很多人都很熟悉,主要介紹一些新特性、新框架的使用。

30DaysofSwift:作者Allen Wang是一名產品設計師,這是他學習swift的專案,在dribbble上看到過他的設計作品:openallen,挺不錯的。

SwiftGuide:這份指南匯集了Swift語言主流學習資源,並以開發者的視角整理編排。

Awesome-Swift-Education:swift學習資源整理。

awesome-swift:swift資源大合集,覆蓋了幾乎所有方面。

awesome-ios:iOS開發資源大整合,包括OCSwift,涉及到frameworkslibrariestutorialsxcode pluginscomponents等。



作者:王家小雷
連結:https://www.jianshu.com/p/03af23d1a0bc
來源:簡書
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。