转一个
最近在看CLR via C#里面好些单词似懂非懂的,看到有一个术语的介绍就拿过来了,方便查看:
1. assembler和compiler
assembler 汇编器,一般用于汇编语言
原书中,作者对这两个词是有所区分的。
很多人常常会与module(模块)混淆,以至于分不清哪一个才是真实存在的。没办法,Visual Studio默认生成单模块程序集,而多模块程序集则需要命令行工具手动配置。
3. property和attribute
一切都是MSDN的错,以至于所有关于.NET的翻译书籍都要额外强调这两个词。property,属性;attribute,特性。不再敷述。
4. argument和parameter
argument,指的是函数定义中括号里面的变量,即“形参”。
parameter,指的是调用函数时传进去的数值,即“实参”。
5.instruction和directive
在汇编语言中,有以下三类指令:
指令(即instruction):机器码的助记符,有对应的机器码。
伪指令(即directive):没有对应的机器码,由编译器执行,计算机并不执行。
其它符号:如+、-、*等,由编译器识别,没有对应的机器码。
6.flag、tag、token、identity、label、notation和mark
话说,这几个词很搞,在中文里翻译都差不多。这里,统一翻译如下:
flag 标志
tag 标签
token 标记
identity 标识
label标号
notation 符号
此外,mark这个动词,统一翻译为mark。
7. schema和scheme
schema 架构
scheme 方案
在翻译本书时,我还以为是作者笔误,误将scheme敲成了schema。在与作者的邮件中,他刻意强调要将scheme翻译为“方案”。
8.emit和emission
这个词,在MSDN中翻译为流出、发射、发出。本书统一翻译为“流出”,因为译者认为这个词比较形象。emission是emit的名词形式,也翻译为“流出”。
9.关于汇编语言中的几个术语:
slot 槽
word 字(一个字由两个字节组成)
register 寄存器(CPU中可以存储数据的地方)
image 映像
overflow和underflow 上溢和下溢
segment 段
section 节
align对齐
branch 跳转(注意,不是分支)
allocation分配
10. export和import
为了不与input和output(即输入和输出)混淆,本书将export和import统一翻译为“导入”和“导出”。
11.关于forward
这个词有两种翻译:
forward class declaration类的预先声明(这里翻译为“预先”)
type forwarder类型转发(这里翻译为“转发”)
12.关于entry
这个词有很多种用法:
最显着的是entry point,翻译为“入口点”,如Main这样的入口点函数。
还表示集合中的一个元素,常出现在PE头的结构中,翻译为“项”。
还表示二维表中的列,常出现在元数据的结构中。翻译为“字段”。
13. edit-and-continue
翻译为“编辑-继续”,表示 用户可以在调试过程中根据调试结果立即修改代码,继续执行程序而无需停止调试。
14. nested和embedded
二者都翻译为“内嵌的”。其中,nested用于内嵌类,embedded用于内嵌本地代码。
15. 关于dereference
这个词,说白了,就是取消引用,并得到该引用,有点像Stack中的出栈操作,不是直接就出栈,还要返回出栈的对象(Push方法返回值类型为Object而不是void)。纵观各种翻译书籍,只有侯捷的译文最贴切:“提领”。本书采取侯先生的版本,并在出现的地方加以注释,以免读者产生疑惑。
16.关于encloser和sealed
Encloser 外包,与nested(内嵌)类相对。
Sealed 密闭,表示不可继承。
17.关于版本号的几个术语:
MajorVersion 主版本
MinorVersion 次版本
BuildNumber 内部版本号
RevisionNumber 修订版本号
18.关于内存布局的几个术语:
Explicit Layout 显示布局
Sequential Layout 顺序布局
Union Layout 联合布局
19. validation和verification
validation,有效性检查,用于元数据;verification,验证,用于IL代码。详细内容参见本书5.4章节。
此外,与这两个术语相关的衍生物:
validity 有效性
verifiable 可验证的
unverifiable 不可验证的
verifiability 可验证性
verifier 验证器
20. retrieve和get
get 就是获取,直接就能拿到
21. .NET术语缩写:
CLR Common Language Runtime公共语言运行时。
CLS Common Language Specification,公共语言规范
CLI Common Language Infrastructure,公共语言基础结构
CTS Common Type System,通用类型系统
JIT just-in-time,即时
EH Managed Exception Handler,托管异常处理
TLS Thread Local Storage,线程局部存储
22.几个不作翻译的术语,保持原汁原味:
stub,有的地方翻译为“占位程序”。
wrapper,有的地方翻译为“包装器”。
Thunk,出现在互操作中。
sentinel,有的地方翻译为“分隔标记”。
以下是一些固定翻译,无须进一步解释。
|
|
|
|
permission |
权限 |
|
virtual table(V-table) |
虚表(V表) |
|
fixup |
定位(用于V表) |
|
marshal |
封送 |
|
reside |
驻留 |
|
literal field |
文本字段 |
|
underlying platform |
底层平台 |
|
conTR align="center"avariant |
逆变 |
|
covariant |
协变 |
|
isolated storage |
独立存储 |
|
bitfield |
位域 |
|
opcode |
操作码 |
|
operand |
操作数 |
|
cyclic dependency |
循环依赖性 |
|
Linker |
链接器 |
|
finalizer |
终结器 |
|
sink |
接收器(Remoting忠的术语) |
|
component |
组件 |
|
mask |
掩码 |
|
data on data |
数据上的数据 |
|
startup |
启动,主要用于startup stub |
|
verbal description |
逐字描述 |
|
scope |
作用域 |
|
convention |
约定 |
|
consTR align="center"uctor |
构造函数 |
|
desTR align="center"uctor |
析构函数 |
|
specification |
说明、规范 |
|
instance |
实例 |
|
instantiation |
实例化 |
|
instantiatiate |
对……进行实例化(动词) |
|
The most/least significant bit |
最高/低权重位 |
|
lower bound |
(数组)下界 |
|
terminator |
终结符 |
|
unsigned |
无符号的 |
|
signed |
有符号的 |
|
ordinal |
序号 |
|
neuTR align="center"al |
中立的,无关的 |
|
engage |
使用(用于异常程序块) |
|
bitwise operation |
位操作 |
|
mangle |
粉碎(用于泛型) |
|
deploy |
部署 |
|
overload |
重载 |
|
overrideing |
覆写 |
|
overriden |
被覆写 |
|
filter |
筛选(对于托管异常处理) |
|
local variable |
局部(本地)变量 |
|
native |
本地的 |
|
culture |
文化 |
|
locale |
区域设置 |
|
location |
位置 |
|
localization/ localize |
本地化 |
|
region |
区域 |
|
manifest |
清单 |
|
underlying type |
基础类型 |
|
evaluation stack |
计算堆栈 |
|
dispose |
释放 |
|
interop assembly |
互操作程序集 |
浙公网安备 33010602011771号