DotLee

用中文编程

用中文编程
    最近园子里说到了用中文编程的事情,其实这是见仁见智的。    我说说我的一些体会。    
    我在程序中用中文编程有3年多了。只不过大多用在权限管理rbac中。
如:  if (!PageBase.GetPrivilege(Privilege.协会全部权限.登陆协会管理系统.View))
为什么要用中文呢。因为用户在添加权限的时候,可能是简体中文,也可能是繁体。
还有可能是英文或日文、韩文什么的。这时,就要给每个权限添加一个英文或字母的说明,
在程序中使用。但我感觉太麻烦,就没有做这么一个映射。数据库中已经设计进去了,
但没有使用。 而且,这些权限代码是自动生成的,大大提高了开发进度,90%的网站项目
可以通用。
   到现在为止,用了3年多,从来没有因为是中文或韩文而出现问题。 

前段时间,从网上下载了【易语言4.11】,使用了一下,对拓宽我的编程思路很有好处。
我个人觉得,在这个问题上,要应用【开-闭原则】。不管是好是坏,我们的思想一定要开放。
   最近一年,我又把中文用在了购物车上。因为程序中的注释,region等的说明,都是用
   中文写的,他们从来没有乱过。程序中的中文注释的重要性,对程序员来说已经超过了文档,
   而且,项目的最新的技术文档,也是从程序的注释中自动提取出来的。
  
   当然,在使用中,有一些事项是要注意的。这对于任何事情来说,都是如此。连咱们说话,
   不都是要注意什么该说,什么不该说吗?只有几岁的小孩,说话才无所顾忌。
   下面是一些购物车的片段:   
    #region 购物车中的变量声明
    protected float c1_购物车中_非换购商品总额 = 0;
    protected float c1_购物车中_已换购商品总额 = 0;
    protected float c1_购物车中_剩余非换购商品总额 = 0;
    protected float c1_购物车中_商品总额 = 0;
    protected float c1_购物车中_商品总数量 = 0;
    protected float c1_购物车中_商品总重量 = 0;
    #endregion 
      /// <summary>
    /// 换购商品:订单金额达到一定数量,才能购买的商品
    /// </summary>
    private void C2_换购商品()
    {
        b2cCityDAL.b2cCityProducts.mycity_ProductDataTable  c3_全部已上架的换购商品 = new b2cCityBLL.ProductBLL().GetProductsByChangsaleAndPublicate();
        this.changesalesDatalist1.DataSource =  c3_全部已上架的换购商品;
        this.changesalesDatalist1.DataBind();
        ......
    }    
     private void C2_购物车()
    {
        string c3_购物车编号 = WebUtils.GetShoppingCartId();
        b2cCityDAL.b2cCityCart.CartItemsDataTable c3_购物车中_全部商品 = new b2cCityBLL.CartBLL().GetAllCartItems(c3_购物车编号.Trim());
        this.dlShoppingCart.DataSource = c3_购物车中_全部商品;
        this.dlShoppingCart.DataBind();      ......
        c1_购物车中_商品总额 = c1_购物车中_非换购商品总额 + c1_购物车中_已换购商品总额 ;
        c1_购物车中_剩余非换购商品总额 = c1_购物车中_非换购商品总额 - c1_购物车中_已换购商品总额 ;
        ......
    }    

注:比如上面购物车的功能,一般会交给新来的程序员维护。 首先给他半个小时熟悉公司的代码规范(与她相关的部分),在用半个小时熟悉一下网络环境及相关业务。 一个小时后,她就可以自己维护程序了。并且能够直接与市场部解决业务上的问题。这是最大的好处。
因为,业务员与新来的程序员都能够看得懂这个程序,并把这些中文代码作为一个文档来交流,减少了沟通环节。并且,程序中不专业的中文名称,会按照业务员的建议进行修改,统一了业务员与程序员之间对业务名称的理解。
------------------------------新添加的-------

我没有想到有这么多的评论,谢谢大家!不能一一回复了。
其实大家在页面中大量的使用中文,如:css
/*Textbox Watermark,水印样式*/
.unwatermarked
{
 height: 18px;
 width: 148px;
 font-weight: bold; 
}
javascript:
<script language="javascript" type="text/javascript" >
    function MyOpenWindow() {//弹出购物车
     temp = window.open('<%#ConfigurationManager.AppSettings["VirtualDir"] %>/ShowShoppingCart.aspx', 'shopcat', '');
//     temp.focus();
 }

 //更改ImageButton的图片
 //obj为ImageButton的ClientID-->ID(非UniqueID-->name,注意),否则ie正确,Firefox无动作, src1图片路径
 function changeImageButton11(obj, src1)
{
    document.getElementById(obj).src=src1;     
}
</script>
中文aspx页面:<asp:Label ID="Label1" runat="server" Text="会员注册表"></asp:Label>
其实现在的世界性的语言就是混合搭配,日文中有大量的中文,英文中也混合着法文、希腊文,发音也有taikongren太空人;
中文中也含有大量的新加坡、香港、台湾、日本的中文,像我们的专家,台湾叫达人,其实也是从日本传过来的,
如:“人气”, “写真” ,职场,新人类,完胜,点滴,量贩,健康、
卫生、衬衣、宠儿、乘客、储蓄、反感、化妆品、接吻、紧张、批评、
企业、气氛、人格、肉弹、升华、生产、体育、通货膨胀、通货收缩、
同情、统计、文化、文明、文学、时间、劳动、服务、白血病、鼻翼、剥离、
大气污染、关节炎、抗体、麻醉药、牵引、弱视、色盲、糖尿病、听力、血压

这些都是从日本传到台湾,在传到中国大陆。
很多涉及到法律、社会学、哲学、政治学、历史学,大量的概念话语,
都是日本汉语构造的,比如,我们熟知的“文化”这个词。
我们使用的这些日本汉语有将近100年的历史了。
是日本发扬了中文,这正像美国人发扬光大了英语一样。
所以,日本是汉语文化圈,而美国、英国属于英语文化圈。
可以参考新加坡联合早报的这篇文章:
http://www.zaobao.com/forum/pages/forum_jp090209.shtml

扯远了,
下面贴张含有部分中文编码的项目的网站的效果图,
但这个项目是纯英文的,全部由中国人完成。
只看表面, 谁又能知道这个项目里面的编码有中文的存在呢?
这个项目正在集成测试中,11月份会上线,主要针对美国市场。


posted on 2009-08-19 12:50  DotLee  阅读(4809)  评论(81编辑  收藏  举报