Роберт К. Мартин: Слово "ISA" вошло в наш словарь, и, кстати, это одно слово ISA, оно проникло в наш словарь по окольному пути и стало очень важным в объектно-ориентированных кругах, но оно не началось таким образом. В 80-х годах она проникла сквозь толпу искусственного интеллекта, которая создала эти замечательные сети знаний, вы, возможно, помните это, всю шумиху по поводу искусственного интеллекта в конце 80-х, начале 90-х, а затем создала эти структуры, которые будут обходить сети знаний этими механизмами вывода и отношения между сущностями и сетями знаний с такими вещами, как, как a, на вкус как, пахнет как ISA, все эти - отношения имеют a, как a, имеют и когда толпа ИИ потеряла свое финансирование, и все эти источники финансирования, они вроде как посмотрели и сказали: «О, есть еще кое-что, это круто. Посмотрите, есть эти отношения, которые уже есть и продолжаются, они действительно похожи, мы должны просто переехать». " И они вроде как сделали, и словарный запас изменился. Это интересно, это также немного прискорбно, потому что наследование не является ISA. Наследование, если вы посмотрите на него с очень тупым взглядом, наследование - это объявление методов и переменных в подобласти, и оно не имеет никакого отношения к ISA, и понятие ISA может быть очень запутанным. Простой пример: целое число - это действительное число, а действительное число - это комплексное число. Вы могли бы нарисовать это в своем UML, это было бы очень просто со всем наследованием там и так далее, но подумайте о попытке скомпилировать его. Целое число, которое, как мы надеемся, будет 16 или, может быть, 64 битами, но если оно должно быть производным от действительного числа, в действительном числе есть два целых числа: мантисса и характеристика, показатель степени и, как они использовали, они подразумевают двоичные точки внутри них. сделать эти числа с плавающей точкой. Число с плавающей точкой, действительное число, происходит от сложного, но в комплексе есть два действительных числа: мнимая и действительная части. Если бы вы думали о том, чтобы написать это на C ++ или на Java, вы бы написали структуру, которая не может быть скомпилирована, потому что у нее бесконечные мысли. Имеет смысл в английском, не имеет никакого смысла в программном обеспечении.