1. 程式人生 > >記一次獨立開發APP的感悟

記一次獨立開發APP的感悟

前言

第一次接觸Android開發大約是去年八月份,是在大一的暑假,感覺這個學起來挺簡單的,還能夠放在手機上執行,感覺美滋滋。
於是學了兩個月之後,一個朋友要我做一個功能,說能不能在鎖屏介面上彈出一個框框,然後可以在上面記錄一下今天要做的事情,這樣就可以每次點亮螢幕的時候就能夠看到了。於是匆匆忙忙搞了出來,但是程式似乎挺容易被系統殺死的,之後就彈不出來了,後來也就不了了之了。
但是最近又學了一點程序保活的技巧,便用在了那個專案身上,發現效果還不錯。於是又萌生了完善那個APP的想法,說幹就幹,功能比較簡單,幾天就搞定了第一版。

第一個版本

只考慮實現某些功能,不考慮別的,是一個完完全全的單機APP,程式碼也是寥寥草草,擴充套件性非常差。資料庫的表結構也沒有怎麼設計,看到還差什麼屬性就往上加,然後更新一下資料庫的表結構。這樣反反覆覆改了好幾次吧,總算第一個原型出來了,沒有發現什麼bug,但是bug總是存在的,只是還沒發現罷了(後來在一個低版本的機器上發現了)。

永存的只有BUG

第二個版本

第二個版本是想重構一下程式碼,考慮一下未來可能會發生變化的地方,於是嘗試使用了MVP架構去優化程式碼,結果重構了兩個介面,花了足足4個多小時!但是不得不說,程式的可擴充套件性還是提高了很多,至少將View和Model進行了解耦。但是後來發現MVP實在是太難使用了,特別是adapter的邏輯比較複雜的時候,就感覺使用MVP是一個錯誤。

MVP從入門到放棄

第三個版本

這也是最新的一版,但是還沒有進行編碼。因為吸取了前面兩次的教訓,不弄清楚需求之前,儘量不要編碼實現,不然改動的時間會非常多,而且會破壞程式碼的結構。所以今天花了一些時間和同學討論,某些功能是否有必要,如果需要,又該怎樣排版。以及介面該如何美化,如何提升使用者體驗等等。討論了很多,之後依然沒有編碼,因為感覺還沒有達到一個最終的效果,許多東西還有待商榷。

程式猿

感悟

  1. 需求很模糊的時候,儘量不要編碼。
  2. 介面最好要能夠確立風格,各個介面的風格要統一。
  3. 在編碼的時候,最好把架構搭好,根據複雜度選擇不同的架構。
  4. 給別人打工比自己當老闆要輕鬆。

由於是自己想做一個好用的APP,然後推薦給大家使用,所以總想加入一些實用的功能,又不知道具體的細節,所以走了很多不必要的彎路。接下來準備花一個星期去確定功能和介面,然後下個週末再編碼,希望能夠做出一個自己滿意的效果。
還想問大家一個問題:沒有美工,且自身的審美能力極差,該如何設計出好看的APP介面呢

相關推薦

獨立開發APP感悟

前言 第一次接觸Android開發大約是去年八月份,是在大一的暑假,感覺這個學起來挺簡單的,還能夠放在手機上執行,感覺美滋滋。 於是學了兩個月之後,一個朋友要我做一個功能,說能不能在鎖屏介面上彈出一個框框,然後可以在上面記錄一下今天要做的事情,這樣就可以每次

Jfinal開發錯誤解決

記一次Jfinal開發錯誤解決 錯誤如下:Failed to load http://localhost/login/1-test1-123456: No ‘Access-Control-Allow-Origin’ header is present on the requested r

卜時明餐|專案開發經歷

卜時明餐:校園餐廳人流量實時監測系統 做了一兩週,這個專案應該要告一段落了 這幾周每天肝到深夜,也挺開心的啊,和小夥伴完美配合,做出成品後還是很有成就感。 把這學期學的資料庫啊、java、計算機網路都實際用到了 簡單記錄一下這次專案經歷。 大概是這樣子的 P的視訊 B站備份了視訊,順便騙一波三連。

失敗的IM APP開發經歷

      近期收到一個類似釘釘的IM軟體安卓端開發需求,自己想也沒想就同意了開發需求,需要一個月內實現通訊錄下載,點對點發訊息,圖片,表情,小視訊,離線檔案,群聊(同樣實現訊息,表情,小視訊,離線檔案)的開發,前期一直沒有重視起來,因為有凡信這樣的開源框架,到了對接的時候發

UEditor編輯器_開發

alt aid tex 一次 .get html asp 初始化 下載 1.UEditor編輯器官網:http://ueditor.baidu.com/website/ 2.下載文件:選擇 1.4.3.3 .Net版本 UTF-8板 3.建一個ueditor文件夾,將下

APP和DB間流量異常問題的排查

異常流量分析 tcpdump抓取異常流量 wireshark流量分析 應用不定時異常流量分析 ###情景通過zabbix監控發現有一個應用和數據庫之間存在不定時的流量異常(也不頻繁),具體為應用server的入向流量和數據庫server的出向流量會有短時間(通常在一分鐘左右)的激增,甚至快達到

Python爬蟲開發經歷

light 情況 獲取 數據類型 true charm req 是我 遇到 為啥要做Python爬蟲,是因為我去找電影的某個網站有點坑,它支持tag標簽查詢自己喜歡的電影,但是不支持雙標簽或者三標簽查詢。由於一個電影對應多種類型(tag),這就意味著,我需要進入這個電影介紹

【unity實用技能】失敗的藍圖接口開發失敗經驗

返回值 。。 cat you 值類型 fff nts cor oci 本來想寫一個批量控制widget開關的接口,想寫一個像append一樣的可加pin的接口 首先還是找到這個接口得代碼 可以看到關鍵的點就是 CommutativeAssociativeBinaryOper

使用模塊化開發

exp png 依賴包 丟失 export ebp ref temp 個人理解 GitHub項目地址:modules 使用模塊化開發已成為當下一種趨勢,之前沒用過,近日得空對著某視頻學習了下,主要運用webpack 當然原理不是很明白,之前看過文檔,迷迷糊糊的。還是欠學習。

Maximo移動端app報錯的原因

【吉林-app】進入作業票下載頁面:系統崩潰 018-11-06 10:39:32,774 - [ERROR::com.hd.hse.common.module.phone.camera.MainApplication::com.hd.hse.common.module.phone.came

App反編譯分析

每次尋找漏洞的時候,我都喜歡從抓包開始 噢噢,這裡有點尷尬~~請求和返回的資料都進行了加密處理,這波操作我挺喜歡的,證明人家公司的開發人員還是有點安全意識的,不過沒有關係,他有張良計,我有過牆梯,先反編譯一波看看,使用的工具是 jadx 很明顯,app用了360加固

“噁心”的利潤報表開發(基於阿里雲MaxCompute)

前言 作為一名資料人員,報表開發可能是難以繞過的一項工作。運營、市場、銷售、財務等部門總會有各種各樣的報表需求。我也算是經歷過不少風雨的一號人物了,為財務開發利潤報表仍然讓我頭疼不已。 設計思路 一、靈活的引數 利潤報表中有很多引數並不是固化的,而是在不同的時期會有不同的

專案談判的失敗經歷,要拒絕免費開發

程式設計師平時總難免要接個外包,幹個兼職啥的。下面給大家講講我這次經歷,給大家增長一點經驗。 我這段時間由於自由創業,經濟上小有緊張。幻想是不是可以兼職接點活幹幹,幫補一下經濟。一次偶然的機會,得知某老闆有一個專案,正在找一個技術合夥人。當合夥人我倒不至於那麼想當,倒是很想看看有什麼活可以扒點乾乾,多掙個三

APP脫殼重打包過程

小夥伴分享了一個開車軟體,但是有播放次數限制。對此小夥伴放言要制裁它,無奈APP加固了。 咳咳,本著學(wei)習(le)研(fu)究(li)的態度,嘗試著脫殼並重打包。 為證清白,伸出雙手,上操作。 右鍵直接解壓APK,檢視特徵是360加固: 使用apktool工具反編譯APK作為

移動端H5開發所遇到的問題與細節,以及ios相容

第一次弄移動端H5專案開發,雖然是簡單的頁面展示,但也遇到了很多細節問題與相容問題,尤其是h5視訊標籤video, 一.移動端禁止縮放 相容 <meta name="viewport" content="width=device-width,initial-scal

imperva-API開發-python3

有些客戶想要對imperva裝置進行實現自動化管理,imperva官方提供的api介面寫的也非常的詳細,使用的方法就是通過指定的格式向管理平臺傳送http請求進行控制。一下是我簡單寫的一個python3程式碼(我知道自己很菜。。比較中國化勿噴。。。 ^(* ̄(oo) ̄)^) import

基於react、cra2、typescript的pwa專案由開發到部署(三)

該篇文章為本系列最後一篇文章,因為最近樓主忙於畢設,所以這也是一篇被鴿了很久很久的文章。該文章主要講的是該專案的部署部分,包括: 如何將該專案部署到nginx伺服器上。 為它配置證書,讓它執行在https協議上等。 專案回顧 這是一個基於creat-react-app2的pwa專案。可以新

fis3+react開發經歷

前言: 雖然說是記錄fis3+react的一次開發經歷。但是在專案的上線前幾天收到公司TC委員會的郵件,因為react的開源協議讓找到react的替代方案,並且逐步下線線上的react專案。真的是可以用“出師未捷身先死”來形容這次開發了。 不過經過調研以後發

微信小程序開發

time imp catch 快速 urlencode 掃碼 ise headers ml2 之前在網上看到博客園新聞服務開放接口,因為自己本身有看博客園IT新聞的習慣,為了能隨時隨地簡潔方便的瀏覽新聞,於是萌生了一個利用開放API開發一個微信小程序的想法。 1. mpvu

網易七魚雲客服開發記錄

節前一個朋友找我叫我幫他做一個微信線上客服的系統。其實微信公眾號是有線上客服功能的,只是這個功能算是最基本的吧。之前我們公司使用過智齒,後來到期了就沒做了。這次又有機會用第三方的客服系統就記錄下來。 需求: 1.使用者開啟微信公眾號,點選線上客服,使用者