Yep - 遇見天才,成為天才的地方
“Yep 是一款非常小巧而輕量化的社交 App寨辩,圍繞「遇見天才」這個主題之碗,讓用戶去找到領(lǐng)域中的精英或者是正在一起學(xué)習(xí)的人∩μ澹” ——官方簡介
從產(chǎn)品的角度恨樟,我覺得它很好地把朋友圈的概念提煉加工,通過“遇見天才”這個主題疚俱,依據(jù)不同領(lǐng)域劝术、地理位置等來篩選匹配相對應(yīng)的朋友圈,并將“評論”轉(zhuǎn)換為話題討論呆奕,很好地做到了輕量而高效的社交體驗养晋。
更贊的是Catch Inc團隊將整個Yep開源出來了,既能吸引天才們一同參與貢獻梁钾,也能幫助向著天才進發(fā)的童鞋學(xué)習(xí)成長绳泉。再來一個頂級贊,鑲鉆的那種陈轿。??+??
話不多說圈纺,趕緊去App Store下載,來到Y(jié)ep的世界就對了!當(dāng)然了麦射,iOS開發(fā)者們蛾娶,也一定別忘了去Github關(guān)注這個優(yōu)秀的開源項目。
Podfile 學(xué)起
以下就是Yep項目中的Podfile中的pods
def pods
pod 'Kanna'
pod 'Navi'
pod 'Appsee'
pod 'Alamofire'
pod 'DeviceGuru'
pod '1PasswordExtension'
pod 'KeyboardMan'
pod 'Ruler'
pod 'Proposer'
pod 'FXBlurView'
pod 'Kingfisher'
pod 'TPKeyboardAvoiding'
pod 'pop'
pod 'Base64'
pod 'SocketRocket'
pod 'RealmSwift'
pod 'MonkeyKing', '0.0.2'
pod 'JPush-iOS-SDK', '1.8.8'
pod 'Fabric'
end
可以看到潜秋,里面隨便一個框架蛔琅,光是介紹就可以寫好幾篇長文,但我們這回就走馬觀花一趟峻呛,看看在做項目的時候罗售,有哪些功能模塊是通過優(yōu)秀的第三方開源庫來完成辜窑,以便騰出足夠的時間在核心業(yè)務(wù)功能快馬揚鞭~
Kanna - XML/HTML的解析框架
通過搜索源碼可以看到,Yep項目中只有OpenGraphService.swift
中用來解析HTML寨躁,來獲取其中的meta
以及其中的property
穆碎、content
,還有site_name
职恳、title
所禀、description
、image
等屬性放钦,這樣就可以在話題中優(yōu)雅地展示Github色徘、Drribbble、簡書包括Apple Ebook操禀、Apple Music褂策、Apple Movie等各種分享鏈接了。
if let doc = Kanna.HTML(html: HTMLString, encoding: NSUTF8StringEncoding) {
var openGraph = OpenGraph(URL: URL)
if let metaSet = doc.head?.css("meta") {
var openGraphInfo = [String: String]()
for meta in metaSet {
if let property = meta["property"]?.lowercaseString {
if property.hasPrefix("og:") {
if let content = meta["content"] {
openGraphInfo[property] = content
}
}
}
}
openGraph.siteName = openGraphInfo["og:site_name"]
openGraph.title = openGraphInfo["og:title"]
openGraph.description = openGraphInfo["og:description"]
openGraph.previewImageURLString = openGraphInfo["og:image"]
……
}
解析處理之后颓屑,展示出來的效果:
Navi - @nixzhu打造的“納美人”
這是一個頭像(Avatar)緩存組件斤寂,@nixzhu也專門寫了一篇文章詳實介紹了打造這款輪子的始末,詳情可移步《一種頭像緩存策略》
Appsee - App統(tǒng)計分析神器
這是一款支持點擊熱圖和用戶記錄的統(tǒng)計分析框架邢锯,針對產(chǎn)品的市場分析和迭代改進非常有幫助扬蕊,它是付費的,所以有需要的童鞋可以去Appsee官網(wǎng)詳細了解丹擎,獲取支持。
Alamofire - Swift語言下必備的優(yōu)雅網(wǎng)絡(luò)框架
如果你在寫OC的時候離不開AFNetworking歇父,那么轉(zhuǎn)戰(zhàn)蘋果下一代語言Swift的時候你就同樣離不開Alamofire蒂培,必掌握無疑。
DeviceGuru - 簡單快捷的“設(shè)備識別器”
以下是它全部的用法介紹榜苫,是不是簡單快捷而高效呢护戳?
If you install from CocoaPods, you have to import the module. If you used drag and drop then there is no need of import
import DeviceGuru
In your code:
let deviceCode = DeviceGuru.hardwareString()
let deviceName = DeviceGuru.hardware()
print("\(deviceName) - \(deviceCode)")
//Ex: IPHONE_6S_PLUS - iPhone8,2
1PasswordExtension
想必許多人都了解或用過1Password,方便垂睬、安全的密碼管理軟件媳荒。還是學(xué)生的時候買不起,就選擇了同樣優(yōu)秀的LastPass驹饺,所以等到1Password限免的時候買了钳枕,但因為習(xí)慣,所以仍然還是在用LastPass赏壹。哎呀~鱼炒!扯遠了。言歸正題蝌借,可以看出來昔瞧,Yep團隊是非常有Geek追求的指蚁,在應(yīng)用中集成了這個密碼管理插件。那么自晰,也趕緊學(xué)著做個Geek的開發(fā)者吧凝化。Github-1PasswordExtention、《在自己的項目中嵌入1Password》by翔妖除魔
KeyboardMan - 又一個Yep作者打造的優(yōu)秀輪子
其主要用于方便處理鍵盤通知酬荞,也同樣有一篇文章講述介紹缘圈。
Ruler - 這不是輪子,這是@nixzhu的尺子
顧名思義袜蚕,它可以方便地獲取屏幕的各類尺寸信息糟把,Yep的分享與開源精神棒棒棒~,快去Ruler-Github點顆小星星吧牲剃。
Proposer - 還是Yep團隊的優(yōu)秀開源組件
這個工具厲害了遣疯,在提出獲取各種圖片、位置凿傅、聯(lián)系人權(quán)限的時候缠犀,便捷溫馨地先給出了小提示吧,告訴用戶“我是個好人聪舒,就拉下小手增進友誼辨液,啥壞事都不干!”箱残。還等什么呢滔迈?去Proposer-Github點星星啊,點得亮晶晶的被辑,帶著那種一點star好像你就會用且寫得出來的錯覺~
FXBlurView - 締造朦朧美
做半透明燎悍、模糊處理的框架不少,但Yep的天才們都在用它盼理,有什么理由拒絕再新學(xué)一個呢谈山?FXBlurView-Github
Kingfisher - 喵神的圖片下載緩存框架
OC你用SDWebImage, 那么Swift下,請選用喵神牌Kingfinshe宏怔,你值得擁有奏路。網(wǎng)紅代言和知名品牌框架的優(yōu)點就是文檔介紹詳實齊全,就像機械工具都選用德國品牌那樣臊诊。
TPKeyboardAvoiding - 讓滾動和鍵盤的彈出鸽粉、關(guān)閉優(yōu)雅無痛
滾動窗口中的鍵盤應(yīng)該懂得用戶什么時候需要它,什么時候又需要它“走開妨猩!”潜叛。想必Yep中舒服的鍵盤彈出關(guān)閉體驗,它功不可沒吧。
pop - Facebook出品的動畫擴展庫
有了它威兜,你的應(yīng)用可以duang得又酷又有節(jié)奏销斟。喜歡動畫,又薄弱在動畫的我應(yīng)該好好學(xué)會用才行椒舵。
Base64
想了解這個框架的作用蚂踊,先去Wiki了解base64編碼是怎么回事吧。有需要的時候拿來用就好了笔宿。
SocketRocket - 遇見天才的Yep怎么能離開WebSocket來持續(xù)連接
Yep中話題中的聊天想必離不開這個框架組件的支持了犁钟,要做社交聊天的話,WebSocket是一定要接觸的泼橘。那么涝动,從這個Socket客戶端庫開始或許是個不錯的契機。
RealmSwift - 數(shù)據(jù)可以有另一種玩法
Realm.io是一個聲稱為移動設(shè)備而生炬灭,要替代SQLite和Core Data的數(shù)據(jù)庫工具醋粟。Yep的天才們選擇了它,是特立獨行還是別有洞天重归?至少米愿,對于移動端的數(shù)據(jù)儲存方案,多了一種優(yōu)雅的解決方案鼻吮。
MonkeyKing - 輕巧的社交分享解決方案
針對國內(nèi)主要社交平臺的分享框架育苟,輕量實用高效。@nixzhu的開源力作椎木。
JPush-iOS-SDK - 極光推送
國內(nèi)知名的推送服務(wù)平臺违柏,去官網(wǎng)獲取支持吧。
Fabric - 模塊化拓哺、跨平臺的移動開發(fā)套件
增加應(yīng)用的可靠性勇垛,在上線之前進行測試,提高下載量士鸥,吸引新用戶,鼓勵用戶互動谆级,掌握應(yīng)用增長指標(biāo)烤礁,讓應(yīng)用帶來收益。
Twitter幫你用最少的努力打造最好的應(yīng)用程序肥照,學(xué)好了可以很好地解決開發(fā)中的許多問題脚仔。
總結(jié)
以上,就走馬觀花完了舆绎。接下來鲤脏,就可以看看這些優(yōu)秀的開源框架在Yep中是怎樣得到高效應(yīng)用的。
來自彬少の原野