如果我要制造机器人,您会推荐我哪种语言?在我们的大学中,我们可以选择几种语言。大多数学生之所以选择Ada,是因为我们的老师正在使用它。
经过一番研究,我发现ada很老。你怎么看?值得学习吗?
是。我认为非常非常。
Ada在两点上非常好,这在其他编程语言中常常被忽略:
Don't Repeat Yourself
]原理特别有效。是的,您可以[]泛泛使用泛型,但是我在(其他语言)项目中看到的是剪切粘贴式编程似乎更常见。 [如果错误需要在该代码点修复,那么这只会引入多个故障点。]本机多任务处理。语言级任务处理功能的一大优点是,多线程不会让人感到“棘手”,它不是笨拙的扩展,而是集成到了语言中。and
和or
的禁止一样。)另一个是子类型的概念;子类型与OOP中的对象相反,而不是分支出更多的派生对象,而是将类型(它是可接受的值)缩小到越远离基本类型。 {从适当的角度考虑它; Integer是您的基本类型,Natural是您的非负整数,Positive是您的正整数...并且在Ada 2012中,您可以对子类型进行有趣的排除,比如说Primes是Positives的子类型(很抱歉,关于最后一点有点含糊;我仍在学习2012年的知识)。}
使用Ada 2012,您还可以在子程序上设置前置条件和后置条件;仅此一项就可以使您的库更稳定。 (排除空指针也可以。)
Ada比大多数其他语言更注重工程设计。与普通的编程语言不同,Ada为数据工程提供了强大的功能。就是说,在Ada开发人员甚至没有开始开发算法之前,他(她)就设计(设计)数据。
基本原理是,当对数据进行精确的工程设计时,相关的算法将不再那么复杂。此功能很少在其他语言中找到。在Ada中,这是常见的做法。
通过支持将数据工程这一概念作为整个软件工程过程的一部分,我们可以大大降低整个软件设计的圈复杂度。
我的示例只是对Ada中所有数据工程功能的了解。但是,正是数据工程能力使其成为安全性至关重要的软件的理想选择,而安全性关键的软件正是21世纪软件环境中目前最常用的利基市场。