找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
楼主: mato

纯自嗨:从零开始写一个小程序

[复制链接]
 楼主| 发表于 2021-10-6 17:30:18 | 显示全部楼层
总结:正确的事再难也要坚持做下去
8 q$ P9 F% N4 H; H: e7 }1 t* j
自从框架构思完毕后,就开始着手编程的事情。后面的难度远远超出我的预料,一度想放弃,幸好有一个朋友跟我说了一句话:正确的事情,再难也要坚持做下去。这个事情是正确的吗?嗯,毫无疑问,事情成功后将解决一个很大的问题。还是回到我一直以来的信念:任何问题都是有解决的办法,如果没有,肯定是问题描述不够清晰。
4 c/ d" n+ G# v8 F2 L3 @9 k
& ^, U' v# {! _* Y) F先说说困难
' I  N+ _: o7 p& C* P/ {
7 x, Y0 S4 r# G) X! R9 U- s困难一,软件架构没有规划好,写到一半出现重大缺陷,只能推倒重来。# P& f* R* `) Z* x/ @
因为不是计算机专业出身,前期没有想软件架构的问题(关键也不懂这个),后续数据的查询、更新、插入等能力很弱,并发一上来,后端就开始闹情绪。想着这样实在是不行的,就找it行业的同学看看,让他给我重新规划了整个架构,然后前面的代码几乎重新写了一边。
. \: ]2 y3 p- P* z4 U0 y0 [" h4 m$ V+ @
困难二,想法很理想,但是技术上暂时实现不了。% M0 c3 F( u/ _7 N
站在用户的角度,我希望这个小程序具备某些功能,但是到了编程阶段,发现实现不了或者实现的代价很大。比如,我设想在外面看到不认识的单词,可以打开摄像头,然后识别出来,然后可以保存到优先列表中安排记忆。但是这个涉及到AI图像识别功能,虽然腾讯有这个技术提供,但是收费有点高。一边是理想,一边是现实,最终还是选择向现实妥协。+ c$ T( e. k1 v  `! K! A
0 ?! L6 x* V8 a
困难三,功能上实现了,但性能上很蛋疼2 O, I# o/ Q  A  C- H2 J1 g6 F/ n
有时候一个功能经过不断尝试,终于能实现了,但是实际使用起来,性能很蛋疼。比如,记单词时,需要调取单词的数据。刚开始,我是每记一个就调取一次数据,过一段时间当我收到腾讯给我的费用清单,就瞎了眼,因为服务器是按照读取次数收费的,这一波操作差点把我那点私房钱清空了。而且读取次数太频繁,造成并发量上来,也影响了读取速度。吓得我赶紧优化。0 C5 b/ n' \8 P# H: ]: k1 G2 N- a
, i+ O. i: [) q* n$ O! v) X" e
#说说收获吧
6 A2 \8 B1 ~% P' n% \6 {; z9 V, I
+ f" t! `- ?, @  X, W4 ?& A9 G1 n2 _收获一,虽然不完美,但至少做了出来
, W0 ]: N7 j  [# _9 h1 x从构思到上线用了9个月,几乎耗费了我全部的业余时间。虽然不完美,但至少按照自己的想法做了出来,后续还会不断地优化。对于我来说,这是一件正确的事情,我坚持了下来。1 T1 Z4 b& u- |9 Q6 S

. K, `$ G# \1 H4 B, Z收获二,没有条件具备这个说法,有想法了,干起来就好
& l, m7 J) G" v% l4 H3 m从一开始也是依仗自己对计算机有一点点的基础,就开始干起来了。遇到很多也许在专业人士眼中很皮毛的问题,只能硬着头皮在网上看看有没有答案,反复地看那些大能的视频,把别人的代码copy下来,一句一句分析他的逻辑原理,再改成自己想要的效果。
' A4 t6 t3 a0 [, n) _- B( n: U4 u# E/ @+ m  J% Z
收获三,众人拾柴火焰高9 `8 |" I  E: [8 H& a  K
小程序的很多功能都是那些最初试用的同学提出的,我从来没有想到,但是很实用,所以我把它实现了,换句话来说这是一个集体的研发成果。感谢这些同学。
& c, X% }7 ?* e9 p. D2 `7 F) ~' U/ ua.比如记单词里有一个画板功能,我有一个习惯就是记单词时一边记一边写出来,所以我记单词的时候都会准备笔和纸。后来我发现有很多人都有这个习惯,然后一个同学跟我说带纸和笔不方便,能否在屏幕上写出来?后来我就加上了一个画板功能,小伙伴们反馈这个功能实在是太实用了。
" N0 H/ o$ p* y) n0 N9 _5 ~" ?, Lb.还有一个同学跟我说他每天开车上下班,他希望把这个时间用来学英语,开车时眼睛和手都不能被占用,只剩下耳朵和嘴巴可用。我就加入了自动循环播放功能,只要把小程序打开,开车也可以记单词。
7 `& X9 o# K  z& @9 v! w+ Lc.有同学跟我说,他很多时间都在等电梯、排队,他希望可以把这个时间利用上。我就优化了程序的启动时间,让整个启动时间控制在2秒以内。: S' u1 {" q, R6 F: I
d.有同学跟我说,他上下班坐地铁,手机信号不好,但是他希望用这段时间学英语。我就优化了数据的缓存结构,只要打开过一次,后续就算没有网络也可以继续使用。
发表于 2021-10-7 13:44:37 | 显示全部楼层
还说啥呢?点赞就完事了
/ J  |# g$ T5 {
发表于 2022-9-30 11:35:42 | 显示全部楼层
mato 发表于 2021-10-6 17:30
6 A$ x' l/ r4 [1 U/ @2 s总结:正确的事再难也要坚持做下去
5 h- p3 m- N7 s9 x3 u& ~6 l* w+ o: M
自从框架构思完毕后,就开始着手编程的事情。后面的难度远远超出我的 ...
% v8 M" G  |4 f
外行请教大佬一个问题,关于手机app的通信机制,3 k( ^( X7 M4 ^- r2 s/ v
一个远程的设备,带控制系统,如何向手机app,微信小程序双向通信,发送数据?
3 Y5 O: I2 S$ c" Q
0 O- E% S8 N! j+ w0 n; T
* s/ H. `- r/ y* c. ^+ |% y不要通过云;是选择wifi,还是4G数传模块?谢谢指点~! b6 H, h& A! ~, |3 C

9 O- V' W0 q0 v* H. N

点评

感谢lz回复。我再次读了全部楼层,受益匪浅。也发了一下自己的看法,姑妄言之,欢迎批评指正!  发表于 2022-10-1 12:44
不过我想你要的功能是可以实现的。小程序可以调取WIFI硬件,只要你的设备通过WIFI和手机联上。你可以去研究一下小程序的开发文档。  发表于 2022-10-1 09:44
这个问题真不懂,不好意思!  发表于 2022-10-1 09:41
发表于 2022-9-30 14:42:27 | 显示全部楼层
mato 发表于 2021-10-6 17:30; H! m) B% m3 W5 z4 o% R
总结:正确的事再难也要坚持做下去
. K4 e, B" m2 B/ O% q# c! s) Q
! ^9 ~4 t& @5 a7 k9 l自从框架构思完毕后,就开始着手编程的事情。后面的难度远远超出我的 ...
0 `4 ~# m8 ~% i9 n4 p0 \
顶lz!
2 E: H. l/ {) h3 l: A# G0 H
发表于 2022-10-1 12:13:41 | 显示全部楼层
mato 发表于 2021-1-10 09:00# M! r) [% l; h$ d+ G" ]
感谢给位社友的关注和支持,今天继续。
: m$ Q: y' B, G2 n+ o4 {
“后续数据的查询、更新、插入等能力很弱,并发一上来,后端就开始闹情绪。”
. q! N! \  x0 y9 s6 \" e/ v7 v/ y# ~$ c& M
感觉DB的结构有问题,导致繁琐的数据库操作业务,搞多个表,多个映射,不用频繁插删单词,搞个有限状态机就可以了。6 l5 [  S3 p( y3 X3 c

: G+ R5 @% ~9 o) e; a0 Q0 N7 z6 gFYI: f- B% X5 R8 r( c1 I
发表于 2022-10-1 12:19:51 | 显示全部楼层
mato 发表于 2021-10-6 17:30
; v7 D. D; H1 X7 y  B总结:正确的事再难也要坚持做下去# f- A+ X/ E8 F1 H6 X
5 `& S0 U& P2 r" d# Q( T
自从框架构思完毕后,就开始着手编程的事情。后面的难度远远超出我的 ...

- J0 N$ V* }: ^7 u“比如,我设想在外面看到不认识的单词,可以打开摄像头,然后识别出来,然后可以保存到优先列表中安排记忆。但是这个涉及到AI图像识别功能,虽然腾讯有这个技术提供,但是收费有点高。一边是理想,一边是现实,最终还是选择向现实妥协。”$ T* Y1 A+ P( Y8 X5 E

& y( R* k9 ~. W$ C+ s没必要图像识别,让他自己输入,生成新单词就ok;允许客户拥有自己的私人单词库,你给他多建一张表。
& k2 J; Y( r' ]1 e6 n$ X$ U) F2 u( S4 K* N
例如一些专业术语,工作中常用的英文缩写,让他自己输入,自己生成单词,一起放入单词库进行记忆。或者单独对私人词库进行高强度记忆,可以比普通单词库优先完成全部记忆。
2 z3 `3 `/ n0 D6 {5 V: p& U! \  L% e6 J( x5 y
FYI5 A" }. j5 }3 n* v- f0 f( [
) a3 V: R$ k0 h7 W) O6 F* {) l9 ^
2 J; O' `1 e! b. @% n
发表于 2022-10-1 12:48:05 | 显示全部楼层
无敌老大 发表于 2021-1-6 15:036 ?% S( k! z! j) x3 J) ^6 ^
好大的广告

1 z( w+ g% s  v“刚开始,我是每记一个就调取一次数据,过一段时间当我收到腾讯给我的费用清单,就瞎了眼,因为服务器是按照读取次数收费的,这一波操作差点把我那点私房钱清空了。”4 k  K) r. `* {+ {# a/ B

3 k7 _2 }3 f7 r# T5 c  x1 X我证明,lz绝对不是给麻花藤打广告。企鹅厂太黑了。
! s1 s( q4 K0 G# ?6 H  p  f
发表于 2022-10-1 12:57:16 | 显示全部楼层
mato 发表于 2021-1-6 11:36
- e; e! P. m) _7 I确定开发微信小程序后,那后面所有的工作就以这个展开。  M0 C  a2 {8 G; U8 t7 m7 Q9 t* Y
& h8 T3 G2 w, [- G! ^* K) h' ?3 K; i
我把这事分成三个步骤:

6 g( k8 M8 S7 D+ e$ h5 S5 o6 Gvx小程序,有了后台DB,以后等你搞大了,会不会限制你,
2 k& |6 y9 j' q, l( x1 H$ Z7 H数据库你无法移植,数据不是你的,要你入会员,强制交租?
" Z0 Q+ F) H1 E1 l+ \- I/ q( |( n* b( }, t6 i3 ^; ~& f
3 j) p. P, [0 @% s/ C8 S8 p
充或者不充,这是一个扎心的问题。# c7 ]  t% l* i$ w. C6 Y" H

6 O. Q' f3 u# N1 G 不充钱你会变得更强.png : N/ G4 h1 j3 R8 v& o2 W) l9 t

+ o+ V, f# b+ ^5 ~( i# h$ X1 [# E
: @( k, T3 J8 {* D+ w
发表于 2022-10-6 13:14:42 | 显示全部楼层
大白小白 发表于 2022-9-30 11:35
/ f1 \% T6 @4 m8 p外行请教大佬一个问题,关于手机app的通信机制,
/ S0 r: T' ?2 K3 W5 d一个远程的设备,带控制系统,如何向手机app,微信小程 ...
% J, o9 u* E5 e1 d2 B( q' V
谢谢lz推荐,我去看了B站小程序视频,一节课哗啦啦十几分钟,很多废话,一点也不精炼。
" u' l) {/ z/ Q( w, z0 n7 w( |, c% h! ~0 `% ]
搞了几百节课,太浪费了,顿感看视频的学习效率太低了。哈哈
$ V3 p" o' r) I5 f, g2 V, B% Q1 A( ?/ G/ ?, e0 r3 A
向lz学习,提高自学自制力!
. a" H9 F( X& X% `
% e0 P+ K" J: ~( K8 k- n" A. S( ^( G7 s2 p/ a0 F
: R" E. [# R% |* k0 V
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Archiver|手机版|小黑屋|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-6-24 17:58 , Processed in 0.067962 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表