Объекты и системный подход

Если программистом для разработки избирается объектно-ориентированный подход, то скорее всего будет ошибкой подгонять решаемую задачу под какую-нибудь заранее известную математическую модель. Возможно, значительно лучше будет поискать нестандартное решение, которое в точности охватывает специфические особенности, связанные с самой природой прикладной области. В computer science для этого избирается метатеория, в рамках которой проводится исследование и которая “настраивается” на специфику прикладной области. Один из способов настройки – это погружение прикладной теории (“меньшей” теории) в чистую метатеорию (“большую теорию”). Кроме того, с математической точки зрения в рамках комбинаторной логики удобно строить подтеории – специальные математические модули, которые в готовом виде задают механизмы вычислений, имеющие самостоятельное значение (см. [2], [10]). Такие рассуждения легко найдут отклик у программиста, вынужденного заниматься большим программным проектом, когда преимущества рассуждений в терминах объектов и их свойств становятся особенно очевидными. Комбинаторная логика позволяет на математически идеализированных объектах предварительно “проиграть” все наиболее сложные и тонкие моменты взаимодействия механизмов большого программного проекта (см. [11]).