写代码遇到的问题

1,不知为啥开始写一个项目,大脑就处于某种兴奋中,导致的结果就是生物钟混乱,无限制推迟睡眠时间。写久了就感觉随时会猝死。
2,目前最想写的是一个剪贴板工具,但写之前要解决UI库的问题。因为当前在用的自写的UI库,完全没考虑DPI,必须要重写。而重写我想用新技术,比如rust,但rust的UI库还是不成熟。所以写不了,迟迟写不了。我感觉我3年前就在重复这个逻辑链。

所以一直在玩游戏。。。。

1 个赞

3,开始造全平台rust ui库轮子,开源到Gayhub获得1000k Star,还没开始写剪贴板工具就猝死了,全剧终

9 个赞

1. 编程的策略与精力管理

深有同感,上次因为通宵写代码,结果第二天早晨跑步时直接被救护车拉走了……啊啊啊我还没体验过美好的高中和大学生活呢
我的经验是尽量避免一开始就动手写代码。我会先把精力投入到程序设计中,先搭建好框架,然后再填充代码(现在这一步基本可以交给AI完成)。
边写边思考虽然看似高效,但往往消耗精力不多,大多操作是机械性的,不仅耗时,最终效果也不一定理想。相比之下,程序设计可以快速大量消耗精力,例如我很难连续思考几个小时。
累到睡着了,问题也就解决了(确信)。


2. 关于UI库的选择

我从入门到现在一直对C语言情有独钟,但众所周知,C语言并不适合开发GUI。最近在一个新项目中,我尝试用C#来负责GUI开发,感觉好太多了。

目前我了解到的适合GUI开发的语言和框架可以分为两类:

正规军(适合重型工程)

  • VB
  • C#
  • Qt-C++
  • PyQt

轻量级

  • 易语言
  • aardio
  • Wincmd
  • AutoHotkey (ahk)

3. GUI开发的建议

根据GUI的复杂程度,我有以下几点建议:

  1. GUI比较简单

    • 直接使用一个专用的UI库。
    • 或者用C语言直接调用WinAPI。
  2. GUI比较复杂

    • 考虑使用轻量级且有能力开发GUI的语言。
    • 可以采用混合编程的方式。如果底层性能要求不高,也可以直接用适合GUI开发的语言实现。
  3. GUI非常复杂

    • 同上,建议使用“正规军”语言,如VB、C#、Qt-C++或PyQt。
  4. GUI非常复杂且想用纯Rust

    • 可以尝试开发一个Qt-Rust(?)。

用了AI排版,看起来有一股奇怪的味道属正常现象。内容不是它生成的哦

4 个赞

qt-rust有的啊

1 个赞

可以拿这个二开 GitHub - EcoPasteHub/EcoPaste: 🎉跨平台的剪贴板管理工具 | Cross-platform clipboard management tool

老旧结合嘛,tauri + react/vue 也是一种不错的选择。相比electron有更好的性能和更小的体积(调用的系统的webview)不过相比原生的还是占用会更大。

UI 库可以考虑一下 flutter 和 tauri,这俩对跨平台支持都挺好,而且很好上手

我怎么记得之前也有一个坛友,也是想写一个剪贴板工具,也是要用rust,然后也是卡在ui库然后没下文了……

3 个赞

tauri
electron
欢迎你

诶!好巧,我是卡在c…

(怎么感觉在像说我

本来写一个沙盒配置工具,但需要代理,代理工具想放沙盒里,沙盒还没写好……还是玩游戏吧。

最后“破局”之法是沙盒工具写成了屎山,直接弃坑,世界都清净了。

直接手搓 bwrap 吧,啥配置工具也不需要了

就是bwrap,复用参数很多,搞个配置工具很有必要
不过目前还是用的几个shell脚本,将就能用,但每次换软件啥的都得重写一遍

虽然我不写代码,但是看了也有同感,现实中的很多项目,想要认真完成,会面临一个又一个的困难,自己处于无助、孤独、苦苦修行的旅途中。

但是环境营造的感觉都是很容易、很娱乐的感觉,比如:

  • 糊弄一下就过去了(这一点体会较深,目前我觉得应该把认真的劲用在重要的项目上,不重要的项目,别人也不在乎,真别压力自己了。)
  • 只要用了 xxx 就解决了(工具机械降神论,比如用了 XX 笔记软件你就解决了个人知识管理,用了 AI 你就无所不能……)
  • 站着说话不腰疼型(我不做你这个项目,但是你这个我感觉挺简单的)

先写命令行版本.
让剪贴板支持命令行参数.

UI用其他语言开发.

1 个赞