總結:正確的事再難也要堅持做下去
6 _5 `6 k- y9 {
3 I1 _" X. |* W$ y1 Z7 ~6 X1 b自從框架構思完畢后,就開始著手編程的事情。后面的難度遠遠超出我的預料,一度想放棄,幸好有一個朋友跟我說了一句話:正確的事情,再難也要堅持做下去。這個事情是正確的嗎?嗯,毫無疑問,事情成功后將解決一個很大的問題。還是回到我一直以來的信念:任何問題都是有解決的辦法,如果沒有,肯定是問題描述不夠清晰。9 Z2 V* H" Z9 |- O
1 E4 F6 P3 O; o: G6 \1 J& n
先說說困難# B4 ~% c A6 P. |
& d$ L/ n; X7 _4 l
困難一,軟件架構沒有規劃好,寫到一半出現重大缺陷,只能推倒重來。) |1 U! t+ ?" T1 U4 C& K2 i) E2 ^
因為不是計算機專業出身,前期沒有想軟件架構的問題(關鍵也不懂這個),后續數據的查詢、更新、插入等能力很弱,并發一上來,后端就開始鬧情緒。想著這樣實在是不行的,就找it行業的同學看看,讓他給我重新規劃了整個架構,然后前面的代碼幾乎重新寫了一邊。- a6 v. X* I2 c- S$ V
7 h- H) n) t) p- d) v/ G
困難二,想法很理想,但是技術上暫時實現不了。
+ V7 G0 P. ?8 \- M8 E8 g% ]站在用戶的角度,我希望這個小程序具備某些功能,但是到了編程階段,發現實現不了或者實現的代價很大。比如,我設想在外面看到不認識的單詞,可以打開攝像頭,然后識別出來,然后可以保存到優先列表中安排記憶。但是這個涉及到AI圖像識別功能,雖然騰訊有這個技術提供,但是收費有點高。一邊是理想,一邊是現實,最終還是選擇向現實妥協。
" M, d- z E3 X e* ] z! A, x9 O& P/ M ^( F/ [, a7 X& N( y
困難三,功能上實現了,但性能上很蛋疼# I2 F# x1 a1 m/ ~
有時候一個功能經過不斷嘗試,終于能實現了,但是實際使用起來,性能很蛋疼。比如,記單詞時,需要調取單詞的數據。剛開始,我是每記一個就調取一次數據,過一段時間當我收到騰訊給我的費用清單,就瞎了眼,因為服務器是按照讀取次數收費的,這一波操作差點把我那點私房錢清空了。而且讀取次數太頻繁,造成并發量上來,也影響了讀取速度。嚇得我趕緊優化。
S0 y I! n7 a Y! B9 n
. |) p( t5 d K' U, }# }6 [#說說收獲吧
; b: @4 u* f- f ?' e N+ x8 W m# U: q# n, ~
收獲一,雖然不完美,但至少做了出來
$ M& c9 p! O, s從構思到上線用了9個月,幾乎耗費了我全部的業余時間。雖然不完美,但至少按照自己的想法做了出來,后續還會不斷地優化。對于我來說,這是一件正確的事情,我堅持了下來。
4 G4 p4 p5 c6 u' }& R
0 g5 Z1 m6 S0 V M D6 }( _6 c收獲二,沒有條件具備這個說法,有想法了,干起來就好# E/ L5 z# [" Z4 f' }7 y- @
從一開始也是依仗自己對計算機有一點點的基礎,就開始干起來了。遇到很多也許在專業人士眼中很皮毛的問題,只能硬著頭皮在網上看看有沒有答案,反復地看那些大能的視頻,把別人的代碼copy下來,一句一句分析他的邏輯原理,再改成自己想要的效果。
2 h, n9 C/ h2 T+ u1 C* H( C- D, ]7 W! q7 M6 U$ ^
收獲三,眾人拾柴火焰高5 I1 J( _, w7 O+ X
小程序的很多功能都是那些最初試用的同學提出的,我從來沒有想到,但是很實用,所以我把它實現了,換句話來說這是一個集體的研發成果。感謝這些同學。
2 m$ }; ?& _/ xa.比如記單詞里有一個畫板功能,我有一個習慣就是記單詞時一邊記一邊寫出來,所以我記單詞的時候都會準備筆和紙。后來我發現有很多人都有這個習慣,然后一個同學跟我說帶紙和筆不方便,能否在屏幕上寫出來?后來我就加上了一個畫板功能,小伙伴們反饋這個功能實在是太實用了。
& h# [1 d3 f0 s- E) Sb.還有一個同學跟我說他每天開車上下班,他希望把這個時間用來學英語,開車時眼睛和手都不能被占用,只剩下耳朵和嘴巴可用。我就加入了自動循環播放功能,只要把小程序打開,開車也可以記單詞。
: ^0 l$ O- @4 a- `; ^c.有同學跟我說,他很多時間都在等電梯、排隊,他希望可以把這個時間利用上。我就優化了程序的啟動時間,讓整個啟動時間控制在2秒以內。7 F: C9 b5 \* E) H9 m2 G, E' n* y; Z
d.有同學跟我說,他上下班坐地鐵,手機信號不好,但是他希望用這段時間學英語。我就優化了數據的緩存結構,只要打開過一次,后續就算沒有網絡也可以繼續使用。 |