September 8th, 2008

2019

Роли

Новинка, написанная на Smalltalk: http://heim.ifi.uio.no/%7Etrygver/themes/babyide/babyide-index.html -- попытка сделать систему объектного программирования, код которой был бы понятней, чем в существующих подходах. Забавно, что при этом звучат очень знакомые слова: роли, взаимодействие, контекст, вью. Ага, это опять скандинавы (и, кстати, это как раз тот самый мужик, который придумал Model-View-Controller design pattern, когда работал вXxerox PARC).

Что двигало автором? А вот что (http://heim.ifi.uio.no/%7Etrygver/themes/roles/roles-index.html): Roles are about objects and how they interact to achieve some purpose. For thirty years I have tried to get them into the into the main stream, but haven't succeeded. I believe the reason is that our programming languages are class oriented rather than object oriented. So why model in terms of objects when you cannot program them?

Ну да: мы окружены конкретными вещами, которые участвуют в различных явлениях, занимая там какие-то роли. А описываем окружающий мир в терминах типов -- и получается удивительно плохо. Нужно учиться описывать мир в терминах ролей, чтобы переходить к процессным описаниям. Разборка с ролями, похоже, сейчас самое главное.

Вот фрагмент документации к одной весьма продвинутой программе: "The Guru jumps up and shouts: "Instead of you trying to guess whether it is animal, vegetable, or mineral, the object just tells you!" Yipes!! You have to admit that that's a real powerful idea. ... Microsoft has been a leading proponent of the "role-based" view of objects, and they implement this by using an artifact called an "interface." That is, in fact, one of the most important ideas of what is called COM. The use of interfaces is also common in Microsoft .NET technology. Just remember this: An interface = a role". ... Interfaces are just convenient "places" to group the tightly-bound properties of a role".

Ох, нахлебаемся мы еще этой онтологии-на-ролях по самое не балуйся. И 3D, и 4D онтологии (напомню ссылку на роли в 4D-онтологии -- http://www.matthew-west.org.uk/Documents/RolesFOMI2008.pdf).
2019

Понедельник вечер

Оно зовется system family engineering (как всегда, более распространено product family engineering, но это больше про серийное производство и конструкторов, а нужно -- в общем виде, в том числе и для проектировщиков. Кто не понимает, в чем разница -- сравните ЕСКД и СПДС).
* * *
С интересом прочитал о новом дедлайне "полного вывода российских войск". Я помню, что все предыдущие подобные дедлайны российская сторона честно выполняла. Но оказалось, что российские войска обладают чудесными свойствами неразменного пятака: полностью и честно выводятся, но остаются в достаточном количестве для назначения новой даты полного честного вывода. Поэтому запасся попкорном: вполне возможно появление нескольких новых "полных выводов", которые будут обещаны и честно выполнены еще до нового года.