论坛首页 综合技术论坛

『提问』编码时的命名问题?

浏览 13824 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-12-13  
不太赞成用中文命名。

可能会带来不必要的转换和移植性问题。另外总是在中英文输入之间切换也不是什么好事. 减少 切换 是值得强调的.

只要不是键盘敲得特别慢, 名字长一点有什么关系. 多想着点程序是给人看的.
0 请登录后投票
   发表时间:2004-12-15  
在unicode编码的编辑器内英文和中文命名对编译器来说是没有区别的,另外用Access数据库用中文命名也没有问题
0 请登录后投票
   发表时间:2005-01-04  
英文水平,计算机功力的底蕴,和对业务领域的理解,其实都是优雅的前提,须知编程也是艺术
0 请登录后投票
   发表时间:2005-01-04  
我很少用到中文的命名,常用的是英文,长一些无所谓,能明确的表达含义就行!
0 请登录后投票
   发表时间:2005-02-18  
啊,你们强,俺第一次听说还有用中文命名的,我觉得不好,如果你们的产品需要和国外公司有源码级的合作,就惨了,我们增经因为这个原因,把中文的注释翻译了一遍。
0 请登录后投票
   发表时间:2005-02-24  
ozzzzzz 写道
就是用中文阿,不是拼音。某个人当初在这个论坛还跟发现了个宝贝一样说过这个事情。


听从ozzzzzz的教诲,项目中全面启用中文名
像最近一个项目里的"先行登记保存物品通知书","解除先行登记保存物品通知书"...这样的玩意,要是不用中文还真不知道该怎样命名才直观了
0 请登录后投票
   发表时间:2005-03-04  
用中文来回切换不麻烦啊?
0 请登录后投票
   发表时间:2005-03-11  
1.不论如何命名 所以成员一定要形成统一规范 甚至可以成为公司
的一个传统
例如:用户这个词 翻译成 customer or user 都可以
但一定要在开始时候规定好 用哪个并强迫所有项目成员只用一个
再如:删除 用remove or delete 也是要在项目开始时就确定的

2.如果项目成员英语水平都可以 可以考虑 将部分重要文档
如:需求文档 做成双语形式 这样在描述业务模型的时候
翻译方式也确定了

3.如前面xd所说 一个字典的维护也是必要的
如果可能这个字典由PM维护是合适的吧
0 请登录后投票
   发表时间:2005-05-12  
这个问题可以看看 《Essential Skills for Agile Development》介绍的是怎么弄的。

名字太长可能是你的代码需要重构,看看下面这段描述比较好。

Consider the example below:
class StockItemsInDB {
//find all the stock items from overseas whose inventory is smaller than 10.
StockItem[] findStockItems() {
...
}
}

In order to turn this comment into code, in principle we should change the code like this:

class StockItemsInDB {
StockItem[] findStockItemsFromOverseasWithInventoryLessThan10() {
...
}
}

However, this method name is too long, warning us that the code has problems. What should we do? We should determine: Is the customer of this system really only interested in those stock items from overseas and whose inventory are less than 10? Would he be interested in those stock items from overseas and whose inventory are less than 20? Would he be interested in those stock items from local and whose inventory are greater than 25? If yes, we can turn the comment into parameters:

class StockItemsInDB {
StockItem[] findStockItemsWithFeatures(
boolean isFromOverseas,
InventoryRange inventoryRange) {
...
}
}

class InventoryRange {
int minimumInventory;
int maximumInventory;
}

If the customer is really only interested in those stock items from overseas and whose inventory are less than 10, he must have some particular reason (why only those but not the others?). After further conversation he may say it is because he needs to replenish the stock, because the shipping from overseas takes longer. Therefore, we find out that what he is really interested is the stock items that need replenishing, instead of those from verseas and whose nventory are less than 10. Therefore, we can turn the real purpose into the method name and turn the comment into the method body:

class StockItemsInDB {
StockItem[] findStockItemsToReplenish() {
StockItem stockItems[];
stockItems = findStockItemsFromOverseas();
stockItems = findStockItemsInventoryLessThan10(stockItems);
return stockItems;
}
}
0 请登录后投票
   发表时间:2005-05-21  
用什么都好,关键是要统一.
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics