埃菲尔有牵连
实际上,它还有更多。它既有严格的半严格运算符。
程序员不使用此类事物的原因是,他们从未受过培训,以致他们无法准确地知道它们是什么,如何使用它们,何时使用它们以及如何使用它们进行设计。因为他们从未接受过培训,所以他们从不向编译器编写者提出要求,这就是为什么编译器人员不会费心将此类机制放入编译器中的原因。当计算机科学专业的学生和Shade-tree程序员开始接受更全面的教育时,编译器将开始追赶。
事实证明,一旦您拥有具有此类布尔运算符的语言,并且知道如何使用它们进行设计和使用,便可以使用它们。
在Eiffel中,“隐含”关键字的使用由于基于合同的设计而非常突出,这是由于合同断言的布尔重性质。有些合同只能使用“隐含”运算符正确且有效地编写。然后,这引起了这样的评论:没有合同的语言会进一步发展,而无需考虑,训练和实施暗示的使用。
除此之外,大多数程序员对数学和逻辑的理解都是“软弱的”。即使您在数学和逻辑方面的工作量很大,但是当人们选择一种语言时,并没有实现诸如暗示之类的结构,那么人们往往会认为这样的事情是不必要的或无用的。很少有人问这门语言,并进入一个回声室:“好吧编译器人员看不到需求”和“好吧程序员看不到需求”-无休止的恶性循环。
取而代之的是,编译人员需要支持该理论,编写一种由该理论提出或暗示的语言表示法(例如,面向对象的理论),而不管程序员的想法或要求如何。从那里,教授,老师和其他专业人员需要根据原始理论而不是“通过语言的透镜理论”来专业地训练年轻的思想家。当这种情况发生时,人们会突然醒来,意识到自己所缺少的和所施加的。
现在-那里有太多的理论伪装成面向对象的,但仅仅是一种“玻璃”(通过您选择的语言)的面向对象。人们无法阅读有关OO的大多数“理论”书,因为他们想通过某种语言来解释理论。完全错误和不正确。这就像教我基于计算器的数学运算或我的计算尺一样。否-人们可以让现实教给自己一个关于自己的东西,然后使用一种符号来描述人们所观察到的东西-这就是所谓的“科学”。另一个称为OO-based-on-language-X的混搭太偏斜以至于几乎不能代表现实。
因此,远离语言,看一下原始理论,然后重新开始。不要让语言的局限性,局限性和绘画技巧告诉您理论是什么。只需让理论的实际情况决定其本身的符号,然后从那里转移到制定一种语言即可。
从那里,您将开始领会暗示和“暗示”不仅有用,而且优雅而又非常酷!
有一个很棒的!