[开源]Flutter+Gin 带来丝滑流畅的体验 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
xiaozirun
V2EX    分享创造

[开源]Flutter+Gin 带来丝滑流畅的体验

  •  1
     
  •   xiaozirun 2024-10-30 08:11:13 +08:00 5818 次点击
    这是一个创建于 413 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这是个记账工具,仅需要 docker 就可以部署服务器和构建 Android 安装包

    项目地址: https://github.com/ZiRunHua/LeapLedger

    体验 Android 安装包下载: https://github.com/ZiRunHua/LeapLedger-App/releases/tag/v1.0.0

    如果你觉得不够丝滑流畅,但它会是一直追求的目标

    主要介绍在 Github 上这里就发下开发心路

    心路省流版

    后端开发,当初自负选了 Flutter ,开发中途想放弃,中断了一段时间,但回想当初的热情不甘心,于是去看了两本 Flutter 书籍之后,重新捡起来,虽然没有打算做 flutter 开发的工作,但成为了一个业余的兴趣爱好,隐约感觉背后一颗庞大的知识树,还会继续探索,未来持续更新,希望得到大家的支持,别忘了点点收藏谢谢大家

    心路

    开发初心

    最初因为找不到可以导入支付宝账单的安卓记账工具,就想自己简单开发一个,只要达到“能用就行”这个标准,当时就认为不管什么技术都行,因为只要浅浅学下,所以当时就FLutterRN二选一了,是的,当初就是这么的自信,了解到FLutter的状态管理,看着像微服务加事件驱动,当时感觉还蛮不错的也和后端差不多,就决定用FLutter了,实际上还是有一定差异的,因为状态是持久存在的。开始看官方文档,跟着写几个 demo ,“哎呦,不错哦”,于是就开启了开发之路。

    ps:后来我了解到,安卓读取系统的非媒体文件属于敏感权限。作为记账工具,获取这些权限可能会导致难以在应用商城上架。不过,由于我们自己并不需要上架,因此无需过于担心这些问题。这也是自我部署使用的一个优势。

    中途放弃

    刚开始学习FLutter时,心里想着写一个自己用的 app 太棒,再弄个 window 桌面记账太好了,就感觉这事特别有意义,一点一点的就热情起来,这也推动了自己的学习动力,然后标准也提高了,要弄成开源项目,要弄成每个人都能部署服务器使用,但仅看了官方文档就开始开发,可想而知开发过程会碰到许多的问题,这些问题让开发非常缓慢,在不停的搜谷歌问 AI ,AI 时不时还胡说八道你还听不出来,当你不知道有FlutterElement树存在时,你会以为有灵异事件发生,开发的热情就这样一点一点的消减了,然后就有段时间没怎么写了。

    重新捡起来

    回想当初的热情,不愿意放弃,有种不甘心,而且已经投入了许多时间了。回过头来看标准提高了但是知识没跟上,所以决定看本书,找了亚马逊上评分靠前的 Flutter 书籍《 Flutter Cookbook 》Simone Alessandria ,这本书很棒每节都有让你动手的机会,看完这本书后对 flutter 有了系统的认识,也在这里推荐下,还有《 Flutter 组件详解与实战》王浩然,那之后就可以比较流畅的开发了,但还是可以感受到背后还有一个庞大的知识树,虽然没有打算做flutter开发,但是当做一个兴趣,开发过程感觉也挺满足,现在开源后如果可以得到大家的支持,我会更有动力去做。

    为什么叫 LeapLedger

    中文应该叫飞记,“飞”来自于金克丝的台词“起飞咯”,在没有“双城之战”前,金克丝给人一种极度自由的形象,这也是现实生活中不太能达到状态,这个飞也是“飞越疯人院”的飞,也是飞跃困难的飞,所以在这里希望大家,能够了解自己,突破束缚,在更多时候做自己。

    但其实这个记账好像没事关系 哈哈

    有什么需求或建议欢迎提交issue,希望可以得到大家的支持别忘了收藏下

    35 条回复    2024-10-31 10:00:29 +08:00
    ssh
        1
    ssh  
       2024-10-30 08:23:42 +08:00
    不错,如果能通过无障碍权限自动识别微信、支付宝等 APP 的支付动作就更好了。现在记账软件非常多,主要是很多时候懒得一笔一笔的手动记录。
    wjcwukong
        2
    wjcwukong  
       2024-10-30 09:11:37 +08:00
    支持开源
    StoneHuLu
        3
    StoneHuLu  
       2024-10-30 09:15:56 +08:00
    很好,喜欢能导入的功能,以前也想写个类似的,但是没深入研究怎么把支付宝的账单导出来用,看了下代码理解了,另外我 ios 用户,问下以后有没有可能做其他端,不是 ios 的话,出个 pc 或者 h5 也行啊
    archxm
        4
    archxm  
       2024-10-30 09:31:26 +08:00
    我更喜欢单机模式
    xiaozirun
        5
    xiaozirun  
    OP
       2024-10-30 09:34:25 +08:00
    @StoneHuLu ios 、mac 和 window 后面都会有的
    archxm
        6
    archxm  
       2024-10-30 09:38:44 +08:00
    不过能做成这样也蛮不错的,我下载了,界面风格很喜欢,如果再加个按键震动就更好了。
    StoneHuLu
        7
    StoneHuLu  
       2024-10-30 09:48:14 +08:00
    @xiaozirun #5 期待越做越好!
    xiaozirun
        8
    xiaozirun  
    OP
       2024-10-30 10:34:51 +08:00
    @archxm #6 谢谢 计算器的按钮震动吗 确实可以考虑
    pangdundun996
        9
    pangdundun996  
       2024-10-30 11:01:34 +08:00
    感谢,作为后端一直想学习用 flutter 写 app ,正好参考 op 的实现,已 star
    aLazarus
        10
    aLazarus  
       2024-10-30 13:30:11 +08:00
    话说 Flutter 的应用,能支持系统的特性么?比如安卓的那种预见性返回
    bzj
        11
    bzj  
       2024-10-30 13:53:28 +08:00
    虽然对这个 app 兴趣不大,但是很欣赏楼主分享的学习过程,最后感谢开源!
    xiaozirun
        12
    xiaozirun  
    OP
       2024-10-30 14:12:01 +08:00
    @bzj
    ybz
        13
    ybz  
       2024-10-30 14:20:40 +08:00
    欢迎加入 Flutter ,虽然它有 1w+个 issues ,但是它还是很厉害的:)
    ybz
        14
    ybz  
       2024-10-30 14:23:05 +08:00
    哦,对了,桌面现在有一个致命硬伤,没有多窗口,官方也暂时暂停了多窗口的开发,前几天有社区的人继续开发提交了 PR ,但是我感觉离合并还很远。
    xiaozirun
        15
    xiaozirun  
    OP
       2024-10-30 14:47:17 +08:00
    @ybz #14 这是我见过 issues 最多的项目,其次是 Go 9k issues ,这也代表了他们的热度,关于桌面开发,那或许等到多窗口的支持才是最佳开发时机
    guiyumin
        16
    guiyumin  
       2024-10-30 15:18:57 +08:00
    @ssh 别想了,这些 app 都恨不得你留在 app 里永远别退出,还想着第三方能拿他们的数据?
    ssh
        17
    ssh  
       2024-10-30 15:23:53 +08:00
    @guiyumin 建议下载一个一木记账试试
    zoharSoul
        18
    zoharSoul  
       2024-10-30 16:08:28 +08:00
    这里面是用 redis 干嘛了啊
    yudoo
        19
    yudoo  
       2024-10-30 16:09:27 +08:00
    @xiaozirun 已 star, 想问下楼主, 做这个需要学习 css 和 html js 之类的吗, 我想自己做个餐饮相关的自己用, 目前只会 java 后端那些, go 只看了初级
    yudoo
        20
    yudoo  
       2024-10-30 16:11:32 +08:00
    yudoo
        21
    yudoo  
       2024-10-30 16:13:15 +08:00
    @xiaozirun #5 flutter 这个不是跨平台的吗, ios 和 mac 和 windows 要重新开发吗?
    xiaozirun
        22
    xiaozirun  
    OP
       2024-10-30 16:40:45 +08:00
    @yudoo #21 不需要重新开发,只需要在原有的基础上做些适配,例如涉及到系统调用的地方,安卓和 ios 的权限不是同,还有就是针对手机的竖屏和桌面的横屏,ui 部分显示要正常,也就是说要做到响应式布局,我目前了解到的就这些
    xiaozirun
        23
    xiaozirun  
    OP
       2024-10-30 16:47:02 +08:00   1
    @yudoo #20 这这本 https://annas-archive.org/search?q=Flutter+Cookbook 2023 年出版的 不需要学 css 、html 和 js
    xiaozirun
        24
    xiaozirun  
    OP
       2024-10-30 16:53:40 +08:00
    @zoharSoul 可能是后端习惯吧,开发数据库、消息队列、Redis 三件套都得有,目前这个项目中 Redis 就用来做密码错误次数的缓存和锁,后面会用来做数据库查询的旁路缓存
    xiaozirun
        25
    xiaozirun  
    OP
       2024-10-30 17:00:28 +08:00
    @zoharSoul 还有账本的地区是不可编辑的,同时又会频繁查询来获取时区,也是存在 Redis 里
    yudoo
        26
    yudoo  
       2024-10-30 17:03:19 +08:00
    好嘞感谢
    hanggoing
        27
    hanggoing  
       2024-10-30 17:41:30 +08:00
    Flutter Cookbook 有没有翻译版呢,全英看起来有点吃力
    xiaozirun
        28
    xiaozirun  
    OP
       2024-10-30 18:09:33 +08:00
    @OliverLee 我看得也吃力 ,我是导入微信读书全文翻译看的
    dkl1999
        29
    dkl1999  
       2024-10-30 19:01:32 +08:00
    lz 厉害
    rrubick
        30
    rrubick  
       2024-10-30 20:09:55 +08:00 via iPhone
    刚开始学新东西都这样,现在回头看我刚开始写的 flutter 代码,都是啥啊
    kakki
        31
    kakki  
       2024-10-30 21:31:23 +08:00
    已 star
    tanranran
        32
    tanranran  
       2024-10-30 21:33:57 +08:00
    666
    szdev
        33
    szdev  
       2024-10-30 23:49:54 +08:00
    开源其实挺费心的,支持
    rekulas
        34
    rekulas  
       2024-10-31 00:01:51 +08:00   1
    "如果你觉得不够丝滑流畅,但它会是一直追求的目标"
    咬文嚼字一下,不是我找茬只是有强迫症看到语法错误就想纠正,这里如果...但组合是不合适的,而且看起来也很怪而且后面缺少主语,稍微改改就通顺多了
    也许你仍然觉得不够丝滑流畅,但它将会是我一直追求的目标
    xiaozirun
        35
    xiaozirun  
    OP
       2024-10-31 10:00:29 +08:00
    @rekulas 哈哈哈 是有这个语法错误
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5204 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 01:32 PVG 09:32 LAX 17:32 JFK 20:32
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86