J̥H́-合作 - 词典软件应用的设计与实现

想做新词典当然是因为已有词典不太能满足需求了,但是想法是多的,行动力在短时间内是有限的,所以借论坛寻找一两个知趣相投的小伙伴一起制作一个新的学习工具(词典为核心,慢慢外延)。

和大多数国人一样首先英语是我的第一外语,然后德语是我的第二外语,所以平时有需求查询 德文-中文,中文-德文,英文-中文,中文-英文,于是很自然的为了便于管理我的词典分成了7+个组

image

好吧,词典分组其实不是那么严谨,目前主要还是使用前3个分组。

然后,GoldenDict就开始不满足需求了(当然,词典领域GoldenDict在我心中是毫无争议的第一),示意例子:
理想中是,

  1. 选择不同分组查询的时候,查询的单词历史记录自动分组到对应组,比如Chinese
  2. 选择不同分组查询的时候,收藏标记的单词自动分组到对应组,比如Chinese

当然了,这只是一个GoldenDict无法满足的点,要是合作一起弄,我还有很多想法(主要是自己也是个学语言的小伙伴,根据自身需求,想法不少)可以交流。

其实也考虑过在GoldenDict的代码基础上慢点调整,然而其一是我嫌GoldenDict太臃肿了且使用了我并不认可的技术Qt和架构,其二是我自己的C++功力还是太弱不足以去碰GoldenDict。

和词典开发相关的技术储备方面,我个人主要还是便Web方面的前端开发和产品设计,另外因为从高中开始参加NOIP使用C++到大学C++课程几乎满分(98/100),C++基本功还行(但是项目化的C++接触有限)。
我的个人主页 www.johannhuang.com 用于佐证一下自己的实力吧。

所以借论坛宝地寻一个 对C++开发项目熟悉的小伙伴,一起从GoldenDict里面提取 词典管理及词典解析(parser/reader)相关模块代码,并加入基于Boost.Asio或类似干净类标准的技术实现的HTTP Server。

我目前人在德国,与中国时差7小时,有兴趣的小伙伴可以到我主页扫描加微信联系。

不好意思,微信二维码被我之前已经撤销掉了,还可以手工加我微信 johannhuang 。备注下 词典合作 之类的吧

个人从现有GoldenDict的功能出发,这样理解你的需求不知道对不对:
新增功能:每个分组有独立的查询历史和收藏列表。每当切换分组时,其对应的查询历史和收藏列表也随之切换过来。如果是这样,感觉在GoldenDict的代码基础上是可以实现的?

如果是要替换现有GoldenDict的Qt技术和架构,那可就是个大工程了。本人纯文科生,感觉很多兼容问题还是过去十多年浏览器战争累计下来的,需要时间慢慢去消化?毕竟不同线上词典、mdx制作者采用的HTML标准五花八门,光是在软件端硬性规定也仍然会出现各种兼容问题。

不管怎样,楼主这个想法本身就是值得鼓励的,希望继续讨论。

当然,我是想弄成开放的。毕竟从GD里面提取代码,还是至少得尊重GD的协议。只是我觉得,要想把一个项目弄好,一开始就开放着弄并不是一个很好的方式。更好的方式,是有一段沉淀期,做的有模有样了,然后开放。这样才会引起其他感兴趣的人的注意,才会得到更多的优化与改进,无论是点子也好,还是pull也好。

关于任务量的问题,其实我觉得摒弃GoldenDict使用的Qt以及由于历史而存在的各种兼容考虑,丢掉包袱与向后兼容,程序和代码可以更佳简洁搞笑。

技术在这10年有很多的发展,尤其是前后分层,B-S架构、C-S架构相对于前后端一体化是有很大的优势的,主要还是灵活性。