做爲一個自由職業者,去年花了整整一年做研發,做基礎功能,做這些基礎工作的原因。就是想在碰到一些熱點事件,就我一個人的情況下,能快速的做一些響應,結果今年開年就碰到了一個大的。
前一段時間緊急返深後,一直在家裏寫文章。一直在想做爲一個程序員能爲這次疫情做點什麼。
想來想去,發現病例同行車廂已經有人做了。以經緯度查周邊的病例,我又怕我的服務器資源不夠,於是就決定做一個與自動生成一個與疫情相關的海報小程序。
剛好去年年底的時候爲別人做過一個辦公應用的小程序,剛好我自己研發的Spring Cloud微服務(我稱它爲sea微服務平臺)能支撐多終端、多業務也解決了用戶問題,而我只需關心業務,就能實現小程序快速上線。
我是一個全棧,所有的東西我都可以一個人包辦,那麼說幹就幹吧。
因爲是一個人開發,在開發小程序之初,這是我拉的清單。
設計:
產品原型設計
界面設計
小程序頁面:
新冠肺炎自我篩查表單
新冠肺炎自我報告列表
新冠肺炎自我報告海報
微服務:
新冠肺炎微服務-表單入庫
新冠肺炎微服務-數據格式化
新冠肺炎微服務-海報數據
新冠肺炎微服務-個人報告列表
小程序微服務-微信用戶接入
小程序微服務-微信用戶token交互
小程序微服務-用戶裂變接入
數據庫:
新冠肺炎自我篩查數據庫表設計
社交&分享:
小程序碼社交分享、保存到相冊
發佈&部署:
小程序發版、審覈上線
nginx域名SSL
其實這些都不是最難的,因爲這些坑我去年已經填過了,包括界面、微服務、用戶裂變、社交分享。這些都是現成的。去年在開發微服務腳手架時,我就已經考慮到了多機構、多應用的支撐,如何在解決這些問題的時候,再另啓項目時,不需要考慮這些問題,開箱即用。這是目前在我自己的服務器上跑的微服務。
確實,前面的清單我只花了二天的時間就完成了。如果一切順利的話,我第三天就可以全部完成。第二天的時候我的海報還是符合疫情走勢的。但是你知道,就像這次疫情一樣,你永遠不知道驚喜和意外哪一個先來。
然後我就遇到了史上最難用的微信小程序canvas,它難用在哪呢?它的開發工具的效果不能代表真機上效果!我。。。
比如像這樣的,在開發工具上有問題的,而在真機上是沒有問題的。這問題在開發工具上困擾了我很長時間,怎麼調怎麼不對,後來纔到資料說這是正常的。。。。
再比如說在微信小程序上畫帶圓角的矩形、文字自動換行、豎行文字等等,最後光這個海報我就調了兩、三天的時間。最後終於調成了我滿意的樣子,自動適應屏幕、全屏、背景透明、圓角矩形等等。最後海報就是這樣的:
最後的一個坑就是微信審覈,其實也不是坑,反正有時快有時慢,快時一個小時,慢時半天工夫就沒了,我總共審覈了五次,光審覈的時間就花了兩天的時間。
這時疫情的情況已經變了,比如評斷標準變了,很多人已經開始對疫情由恐慌變成了習以爲常。而我的海報已經廢了。
通過這次行動,我也思考了不少問題,比如互聯網產品的迭代問題,時間就是金錢,而且綜合來說團隊的力量還是比個人的力量大。
最後,我也考慮疫情之下,以這種方式去做裂變,有點不太好,但是畢竟東西已經做了,也是滿滿正能量的海報。
那麼就直接開源吧。如果剛好你遇到canvas方面的坑,可以參考一下。
小程序是用DCloud做的,據說可以跨平臺,同時支持微信、支付寶、百度、ios、安卓。
需要開源地址的朋友,請關注後評論或者私信我。
請您幫忙點贊、評論或轉發讓更多的朋友看到,謝謝!