中文编程是否可行之验证——(一)

之前看到有这样的一个观点,一个好的程序员可以编写出自解释的代码,也就是说,如果变量、函数名等等名称都能够起的非常准确,并且结构上充分重构,没有过长的函数和过程,所有的功能都有很小的函数和过程组成,那么,即使不写注释,仅仅是代码也能够充分说明程序的功能是什么。

然而,对于我们这些母语并非是英语的程序员来说,想要达到那一点非常之困难,如何确定变量、函数、类等等的名称,使其能够准确表达业务上的意义,还是有很大难度的。如果用英文的话,很可能就会在字典中查出一个词,然后就使用,但是对于专业的术语来说,很可能是不准确的。也有人说可以使用汉语拼音来起名字,而中文的一音多字和一字多音的问题会让人丈二和尚摸不着头脑。

由此,我想到了很多人曾经讨论过的问题——中文编程,也就说,对于程序中的类、变量、过程、函数等等的名称使用中文,这样的程序对于本国的程序员来说,理解起来再容易不过了,也就可以省去很多的注释,甚至于能够写出不少自解释的代码。

然而,当前的各种语言是否能够对中文有良好的支持呢?我们使用中文编写的代码是否会出现各种问题呢?实践是检验真理的唯一标准,不做不知道。

针对对中文的支持问题,我想在以下三个环境中测试:

1、Oracle,使用工具:pl/sql developer

2、C#,使用工具VS 2005

3、Java,使用工具myEclipse

这样不仅测试到语言是否支持中文,而且可以看出我们经常使用的开发环境对中文的支持如何。毕竟是“工欲善其事必先利其器”。

首先是针对Oracle的测试:

1、建立表名、字段名均为中文的表:

 

 
  
create table
(
编号
NUMBER ( 4 ) not null ,
姓名
VARCHAR2 ( 50 ),
出生日期 DATE
);

 

2、向其中插入几条数据

 

    编号 姓名 出生日期

1 1 张三 2010-2-1

2 2 李四 2019-3-4

 

3、编写了一个函数:

 

 
  
create or replace function 取得姓(姓名 in varchar2 ) return varchar2 is
Result
varchar2 ( 50 );
begin

select substr(姓名 , 1 , 1 )
into result
from dual;

return (Result);
end 取得姓;

 

4、执行带有函数的查询:

 

 
  
select 人的别名.编号
,人的别名.姓名
,取得姓(人的别名.姓名)
as
from 人 人的别名

 

查询结果为:

 

     编号  姓名  姓
1  1  张三  张
2  2  李四  李

    编号 姓名 姓

1 1 张三 张

2 2 李四 李

 

从上面看来,对于数据库开发,使用中文名没有太大的问题。

其实之前在做对日项目的时候,就有这样的一个大型的项目,其中所有的数据库相关内容的名称都是用的是日文字,而系统的运行也没有什么问题。

……待续。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值