D开源小项目讨论

oldrev 2007-04-18
火星辞典不错,可惜已经有人用了。

火卫一Phobos和火卫二Deimos都被用了,要不用火星探测器的名字
smithfox 2007-04-18
我想为了能尽快走入正题,大家都发扬一下团队精神。
既然有两人倾向于用DayuDict,那就定这个吧。
真要不行的话到高版本再更名。
oldrev 2007-04-18
那就先暂定dayudict
oldrev 2007-04-18
我先提交个编码约定来讨论

文件和目录名均采用小写,所有文本文件(包括源程序)均为 UTF-8 编码。

常量、模板、模板参数、enum、类名、结构、联合 LikeThis
接口名 ILikeThis
成员函数、局部变量 likeThis
成员变量 m_likeThis

类、接口、结构命名用名词或名词短语,成员函数用动词或动词短语,但是自定义属性例外,例如应该用 int .count() 而不是 int .getCount()

把超过2个字母的缩写当作单词来对待,比如用 struct Guid 而不是 struct GUID。

最好在每个成员前显式指定访问模式和 override,比如:
public override ubyte[] read(uint count) { ... }

不知各位意下如何?
smithfox 2007-04-18
1、因为count本身可以理解为动词,所以建议用count,而不是getCount,如果是name,应该是getName吧

2、成员变量 m_likeThis,建议把m去掉,直接用:_likeThis
oldrev 2007-04-18
smithfox 写道
1、因为count本身可以理解为动词,所以建议用count,而不是getCount,如果是name,应该是getName吧

2、成员变量 m_likeThis,建议把m去掉,直接用:_likeThis


1. D可以省略括号,个人感觉 .name 比 .getName 要优雅一点

2. D的spec里不推荐下划线开头,m_ 开头在 C++ 世界里很普遍
jinheking 2007-04-18
单词库是什么格式的?怎么进行搜索?
要不要把界面和数据库的分成两个组?MVC一下?
oldrev 2007-04-18
词库我的意见是用SQLite存储,这样搜索也不是问题了。

词库来源可以考虑把星际译王的转换一下,学星际译王把程序和词库分开避开版权问题。

虽然不一定要严格实现 MVC,但界面和辞典引擎肯定是要分开的
oldrev 2007-04-18
还有协议问题,我倾向于 GPL。
协议如果确定下来就可以开项目了
smithfox 2007-04-18
oldrev 写道
smithfox 写道
1、因为count本身可以理解为动词,所以建议用count,而不是getCount,如果是name,应该是getName吧

2、成员变量 m_likeThis,建议把m去掉,直接用:_likeThis


1. D可以省略括号,个人感觉 .name 比 .getName 要优雅一点

2. D的spec里不推荐下划线开头,m_ 开头在 C++ 世界里很普遍


同意!!
我是以Java的思路想了,呵呵
Global site tag (gtag.js) - Google Analytics