【附原始碼】為了幫助程式設計師談戀愛,我做了這個APP

PTHFLY發表於2018-01-22

前段時間,21歲的我第一次開啟了名為『戀愛』的副本,開始打名叫『女朋友』的BOSS,深感過程艱難,整個過程彷彿0級的菜雞進入了佈滿世界迷霧的地圖,只能小心翼翼才能平安通過。然而在打怪升級的過程中,偶然看見有人感嘆:要是談戀愛有進度條該多好!於是基於這個idea,身為iOS開發者的我決定開發一款能夠像技術手冊一般的app,幫助程式設計師以及其他戀愛初學者入門,並且更健康的戀愛。當然,女朋友也作為顧問參與了app內容的準備,對此我是感激涕零的。

APP的思路是通過任務系統,讓使用者明白戀愛每個階段要做的最基本的事情,並且通過做任務的過程來聯動其他功能,最終達到能夠推送關係深入的效果。

APP資訊

  • 名稱:戀愛進度條
  • iOS版下載地址:戀愛進度條
  • 掃碼下載:
    【附原始碼】為了幫助程式設計師談戀愛,我做了這個APP
  • 截圖:
    【附原始碼】為了幫助程式設計師談戀愛,我做了這個APP

技術背景

首先介紹一下技術背景:

  1. 某渣一本大四計算機專業
  2. 還算OK的iOS開發技術,做過幾個商業專案,帶過技術團隊
  3. 職業方向轉型為產品,拿了某大廠產品OFFER,有能力搞定原型&UI

工具選擇

主要功能模組

  • 任務系統:主要包含關係階段(等級)、任務清單、已完成任務記錄、單個任務完成度(即使用者向功能表新增的條目)
  • 紀念:實現了計算紀念日已過天數與對應的下一個週年日的倒數天數
  • 行動:實現了記錄計劃的日期和行動詳情
  • 記錄:實現了精簡版的朋友圈,包括內容、時間、tag、六宮格圖片順序儲存
  • 喜好:實現了根據是否喜歡和根據場景記錄對方喜好,並且可以分類顯示的功能

開發相關

後端選擇

雖然Python水平還可以,可以使用Django開發後端,但是為了上線速度,最後還是決定用BAAS服務做後端。之前一直使用Bmob,這回試了一下Leancloud,文件清晰,社群活躍,開發體驗非常不錯,就是免費額度比較低,商業版收費比較貴。

資料庫設計

開發中唯一的難點是任務不分的設計,由此我的資料庫的設計如下

【附原始碼】為了幫助程式設計師談戀愛,我做了這個APP

開發

開發本身比較簡單,只說一下使用的第三方庫

  • Leancloud:儲存
  • MJRefresh:下拉重新整理
  • WSDaePickerView:日期選擇
  • MBProgressHUD:小菊花
  • SDWebImage:非同步圖片載入
  • ZLPhotoBrowser:圖片選擇器

原始碼

github(順便點個贊吧)


PS.我不知道為什麼有很多人不會就事論事,本意是分享出自己的程式碼和大家交流,也希望得到關於技術本身的批評、指正。

有很多人在下面質疑所謂的『大廠OFFER』,不好意思,我拿的是產品OFFER,技術上面確實比不過評論區大佬。不過我也希望在下面噴的鍵盤俠們貼出自己的GitHub地址、工作公司、工作年限以及職級,讓所有人看看你們的水平是否配得上現在的薪水。

相關文章