12、程序员必知的高效编程技巧与职业素养

程序员必知的高效编程技巧与职业素养

1. 优先使用领域特定类型而非原始类型

1999 年 9 月 23 日,价值 3.276 亿美元的火星气候轨道器在进入火星轨道时失踪,原因是地球上的软件错误,即公制单位混淆。地面站软件使用磅为单位,而航天器期望的是牛顿,导致地面站低估了航天器推进器的功率 4.45 倍。

如果应用更强、更特定于领域的类型,这类软件故障本可以避免。这也是 Ada 语言许多特性背后的原理,Ada 语言的主要设计目标之一是实现嵌入式安全关键软件。它对原始类型和用户定义类型都有强大的静态类型检查,例如:

type Velocity_In_Knots is new Float range 0.0 .. 500.00;
type Distance_In_Nautical_Miles is new Float range 0.0 .. 3000.00;
Velocity: Velocity_In_Knots;
Distance: Distance_In_Nautical_Miles;
Some_Number: Float;
Some_Number:= Distance + Velocity; -- 编译器会捕获此类型错误

即使在要求不那么高的领域,开发者也能从使用领域特定类型中受益。在 Java、C++、Python 等现代语言中,抽象数据类型就是类。使用像 Velocity_In_Knots Distance_In_Nautical_Miles 这样的类对代码质量有诸多提升:
- 代码更易读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值