如果我要制造机器人,您会推荐我哪种语言?在我们的大学中,我们可以选择几种语言。大多数学生之所以选择Ada,是因为我们的老师正在使用它。
经过一番研究,我发现ada很老。你怎么看?值得学习吗?
是。我认为非常非常。
Ada在两点上非常好,这在其他编程语言中常常被忽略:
Don't Repeat Yourself
]原理特别有效。是的,您可以过度使用泛型,但是我在(其他语言)项目中看到的是剪切粘贴式编程似乎更常见。[如果错误需要在该代码点修复,那么这只会引入多个故障点。]也就是说,还有其他充分的理由学习/使用Ada。一种是挑剔的编译器,因为挑剔的特性使您不得不以自然减少编程错误的方式开始思考。(如禁止and
并or
在同一条件。)
另一个是子类型的概念。子类型与OOP中的对象相反,而不是分支出更多的派生对象,而是将类型(它是可接受的值)缩小到越远离基本类型。{从适当的角度考虑它;Integer是您的基本类型,Natural是您的非负整数,Positive是您的正整数...并且在Ada 2012中,您可以对子类型进行有趣的排除,比如说Primes是Positives的子类型(很抱歉,关于最后一点有点含糊;我仍在学习2012年的内容)。}
使用Ada 2012,您还可以在子程序上拥有前置条件和前置条件。仅此一项就可以使您的库更稳定。(排除空指针也可以。)