Swift5 + MVVM + 文藝復興微博(純代碼)

背景: 如今愈來愈多的公司會嘗試用 Swift 作 native 的開發了,不少以前習慣用 Objective-C 的開發,有新項目啓動的時候,也會想說用 Swift 試試。若是從 2020年編程語言排行榜 上看的話,Swift的熱度也領先 Objective-C 10個身位了。而咱們如今公司所作的項目,也是用 Swift 開發的,雖說以前有些 OC 基礎,寫起 Swift 功能也是能實現,可是代碼不是很優雅,不夠 ‘Swift Style’。 熟練度不夠的話,不少 Swift 的高級寫法還得去翻文檔才知道什麼意思,因此就打算從0單排一個Swift的項目,而微博正好有 開放API , 因此這裏就選擇它了。面試

主頁界面數據庫

表情界面
編程

項目架構
imageswift

有一個學習的氛圍跟一個交流圈子特別重要,這是一個個人iOS QQ交流羣:651612063 進羣密碼111 ,若是你在技術上遇到問題也能夠在羣裏交流 ,羣文件有BAT,阿里面試題、面試經驗, 你們一塊兒交流學習成長!我也會在羣裏跟你們交流。

在這裏插入圖片描述
點擊進羣密碼:111緩存

項目功能架構

原創微博功能
轉發微博功能
Emoji表情功能
撰寫微博界面
新特性功能
消息提醒功能
多圖展現功能
富文本功能
多圖展現功能
下滑自動加載功能
上/下拉刷新功能
OAuth 受權登陸功能
已完成
發佈微博功能(API已不提供)
圖片上傳功能(API已不提供)
消息功能
發現功能
個人功能
SVProgressHUD 提醒功能
用到的技術點app

TableView高度緩存
SDWebImage圓角處理
FMDB數據緩存
OAuth受權
單張圖片的高度計算
Cell滾動自動加載更多
撰寫頁面的動畫處理
發佈界面的Emoji處理
多圖的展現

不足點編程語言

Weibo 的 App 包裏的素材圖片實在太多了,找到徹底匹配的要花費超多時間,因此有的資源不是很匹配,或者不是當前最新的
該Demo使用了FMDB,其實微博這種時效性畢竟高,且有較高政治敏感度的,不適合用本地緩存, 這裏只是一個 FMDB 使用的簡單案例,更適合更新不用太及時,或者相似qq這種接收服務端推送消息的app.
這個文藝復興版的微博(2016年的),如今的微博已經有了較大的變更,且不少API接口如今已經不開放了,因此暫時先用此懷舊版本.
SVProgressHUD 在Swift5.0會crash,因此這個app裏沒有 toast 功能,坐等修復…
Gif圖片因爲如今門戶網站只能傳 < 5M 的,因此看上去畢竟模糊,實際效果會比 Gif 圖片好得多,建議用真機跑一下試試~
這版原本打算用本人拙劣的英文寫全篇的註釋,後來因爲本人 Chinelish 水平有限,畢竟複雜的邏輯/業務就用中文寫了(求輕噴)

使用的第三方庫工具

AFNetworking
SDWebImage
YYModel
SnapKit
FMDB
pop
HMPhotoViewerController
工具分享學習

圖片素材獲取: cartool

取色標註工具: MarkMan

數據庫工具: Navicat

畫圖工具: MindNode

總結

從事Swift 開發已經有一段時間
,發現沒有必定量的代碼積澱(踩坑)仍是不行,因此就打算本身寫一個入門的純Swift App。這個項目是本萌新的第一個發佈swift項目,有些粗糙,可是若是新手做爲 Swift 上手,入門的,其實應該還能夠。該項目基本都是用的 「純代碼+純Swift」 的方式寫的,用的也是儘可能新的 API, 萌新們想玩的話感受仍是能夠上手的。

最近發現,時間管理 真的很重要,不少事情,一開始覺得本身作不到,後面天天把時間分配好,學習和琢磨 ,不會的與前輩交流,終於不負有心人, 把這些搞好了, 每一個人都不要放棄。
————————————————
點擊進羣 密碼:111
在這裏插入圖片描述

相關文章
相關標籤/搜索