Роль объектного мышления в объектно-ориентированном программировании | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Авторы: , ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №4 (294) январь 2020 г.

Дата публикации: 25.01.2020

Статья просмотрена: 590 раз

Библиографическое описание:

Улыбин, В. С. Роль объектного мышления в объектно-ориентированном программировании / В. С. Улыбин, М. Е. Сидоров, О. В. Улыбина. — Текст : непосредственный // Молодой ученый. — 2020. — № 4 (294). — С. 33-34. — URL: https://moluch.ru/archive/294/66519/ (дата обращения: 16.11.2024).



В статье рассматривается роль и специфика объектного мышления на современном этапе объектно-ориентированного программирования.

Ключевые слова: программирование, объектное мышление, объектно-ориентированное программирование.

Введение объектов и переход к объектно-ориентированной методологии в разработке языков высокого уровня программирования можно считать самым радикальным изменением в области IT-технологий. Объектно-ориентированное программирование — основное направление развития технологии программирования в инженерно-технологической сфере.

Следует отметить, что объектно-ориентированное программирование является способом программирования и во многом аналогично процессу человеческого мышления. Так, объектный подход был известен еще древнегреческим философам. Они рассматривали мир в терминах как объектов, так и событий. В XVII в. Р. Декарт отмечал, что люди обычно имеют объектно-ориентированный взгляд на мир. В XX в. данная тема нашла свое отражение в философии объективистской эпистемологии А. Рэнда [3]. Модель человеческого мышления, в которой разум человека рассматривается как общность мыслящих агентов, предложил М. Мински. Он доказывал, что только совместное действие таких агентов приводит к осмысленному поведению человека [2].

Основатель когнитивной теории личности, исходящей из постулата «любой человек — исследователь», Дж. Келли указывает, что люди мыслят конструктами. Под конструктами понимается некая абстракция объектов реального мира в форме понятия.

Анализируя работы Дж. Келли, можно утверждать, что базовыми для человека являются рассуждения с абстрагированными понятиями (объектное мышление), чем рассуждения о последовательностях действий (алгоритмическое мышление). Следует отметить, что Дж. Келли указывает, что любая абстрактная модель относительна и в силу своей относительности ограничена [1]. Таким образом, можно прийти к выводу, что объектное мышление — это мышление, направленное на создание простых моделей мира.

Основное понятие объектно-ориентированного программирования –объект — совокупность кода и данных, которые воспринимаются как одно целое. Для объектного мышления основным понятием также является объект — некая образная структурированная единица реального физического мира.

В свою очередь объектно-ориентированное программирование — это подход, благодаря которому мы думаем и оперируем в приложении конкретными сущностями, в частности объектами. Это не только способ написания кода и использования определенных инструментов, а еще и способ мышления и совсем другой подход к организации логики будущего проекта. При этом по сути код, который необходим для обработки определенного общего функционала — то есть некоторой конкретной сущности, — как бы группируется в рамках соответствующего класса, а значит конкретный функционал описан четко в одном едином месте.

Проблема процедурного подхода ориентирована на то, что программист не «думает» реальными объектами или же ситуациями — он просто прописывает определенный код, исходя из логики работы приложения. Объектно-ориентированный подход, используя классы и их объекты, позволяет сместить приоритеты в процессе написания кода от функциональности скрипта к структурам данных, что в итоге приводит к моделированию в создаваемых приложениях реальных объектов и ситуаций.

Отметим, что положительным критерием объектно-ориентированного программирования является, во-первых, доступный подход, позволяющий мыслить в рамках реальных объектов, для которых пишется приложение. Приложения, написанные на нём, при правильном проектировании обеспечивают простоту расширения и модификации объектно-ориентированных программ. Во- вторых, объектно-ориентированный подход ускоряет разработку за счёт повторного использования кода классов, а значит, его можно использовать в других разрабатываемых приложениях.

Объектное мышление также опирается и на логику, поскольку направлено на логичное описание образов объектов. Например, объектно-ориентированное программирование в основу ставит информационные объекты, а все процессы рассматриваются только как порожденные информационными объектами.

Объединение объектов в некоторые группы (классы) происходит путем введения абстрагированных понятий, определяющих значимые для объектов свойства, их внутренние процессы или явления, в которых они могут принимать участие. Уточняя или, наоборот, абстрагируя вводимые понятия, объектное мышление выстраивает структуры иерархических связей между объектами или их группами. Для объектного мышления характерно уточнять старые и создавать новые понятия, применять классификации понятий.

Объектное мышление исследует поведение объектов как набор разных состояний. В каждом из возможных состояний объект подчиняется различным правилам функционирования, т. е. существует возможность качественного изменения любого объекта. Это прослеживается и в объектно-ориентированном программировании, где любой объект может в корне изменить свое поведение, перейдя в другое состояние.

Объектное мышление рассматривает взаимодействие объектов как происходящие между ними события. Причем в качестве причины для смены состояний объектов также объявляется событие, возникшее внутри объекта или со стороны другого объекта. Если рассматривать поведение объектов реального мира в терминах сигналов и состояний, то объектное мышление опирается на условно-рефлекторную природу человеческого мышления. Модель мышления человека может рассматриваться как набор состояний, которые сменяются в результате внешнего или внутреннего события.

Объектное мышление интересуется логическим содержанием действий, происходящих с объектами или внутри них, но после изучения их структуры и по-другому. С информационной точки зрения объект рассматривается как «черный ящик», для которого известны только входные и выходные данные. Таким образом, осуществляется механизм, известный в объектно-ориентированном программировании как «инкапсуляции». Такой принцип сокрытия причин и структуры часто полезен при построении моделей. Однако основная эвристическая сила объектного подхода — в методе моделирования взаимодействия объектов. Объектный подход в отличие от алгоритмического аналога никогда не предписывает изначально, каково должно быть поведение системы в целом. Он только описывает поведение отдельных объектов и их взаимодействие.

Таким образом, объектно-ориентированный подход значительно повышает эффективность труда программиста и позволяет создавать более мощные и расширяемые приложения. Несмотря на «эргономичность» объектного мышления, отметим, что обучение объектно-ориентированному программированию становится значительно более трудной задачей, чем другие аналоги.

Литература:

  1. Джонстон Г. Учись программировать. — М.: Финансы и статистика, 2005. — 367 с.
  2. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на C++. — М.: Вильямс, 2008. — 720 с.
  3. http://www.refsru.com/referat-29539–5.html
Основные термины (генерируются автоматически): объектное мышление, объектно-ориентированное программирование, объектно-ориентированный подход, объектный подход, человеческое мышление, приложение, реальный мир.


Похожие статьи

Объектно-ориентированное программирование. Общие возможности контейнеров С++

Статья посвящена вопросам программирования. Здесь дано понятие свойств объектно-ориентированного программирования, а также рассмотрены требования к контейнерам стандартной библиотеки шаблонов С++. Приводятся понятия некоторых шаблонов контейнерных кл...

Обучение студентов основам объектно-ориентированного программирования

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

Основные современные языки программирования

Данная статья посвящена рассмотрению языков программирования, которые являются наиболее распространенными в современное время, а также их сравнительному анализу и изучению перспектив их использования в дальнейшем.

Современные методы оптимизации программного кода

В статье рассмотрены основные методы оптимизации программного кода. Приведена классификация методов оптимизации. Приведены главные принципы написания эффективного кода.

Методологии проектирования мультиагентных систем

В данной статье рассмотрены методологии проектирования мультиагентных систем, в том числе, применительно к созданию искусственного интеллекта. Приведен анализ популярных подходов к разработке информационных систем на всех этапах создания.

Теория концептуальной интеграции и лингвистические средства ее выражения

В статье рассматриваются основные положения теории концептуальной интеграции, включая структуру, этапы и свойства процесса концептуальной интеграции; также представлены лингвистические средства выражения теории концептуальной интеграции.

Формальное описание объектного и реляционного представлений предметной области

В данной статье производится построение формального описания объектного и реляционного представлений произвольной предметной области для реализации инструменты объектно-реляционного преобразования

Построение онтологической модели «Астрономия» средствами программного обеспечения Protege

В данной статье рассмотрено использование программного обеспечения Protégé для построения онтологической модели на тему «Астрономия» для дальнейшего использования с целью формализации информации. Определены возможности данных моделей, а также их преи...

Искусственный интеллект и машинное обучение в дизайне продуктов питания

В данной статье затрагиваются применяемые при оформлении дизайна продуктов методов, основанных на искусственном интеллекте, охватывающих концепции обратного проектирования, и средств, а именно приложений искусственного интеллекта, генеративных сетей ...

Теоретические подходы к определению понятия «локальное сообщество»

В статье рассмотрено, как зарубежные и отечественные авторы рассматривают понятие «локальное сообщество» в своих исследованиях, а также определены теоретические подходы и что лежит в их основе.

Похожие статьи

Объектно-ориентированное программирование. Общие возможности контейнеров С++

Статья посвящена вопросам программирования. Здесь дано понятие свойств объектно-ориентированного программирования, а также рассмотрены требования к контейнерам стандартной библиотеки шаблонов С++. Приводятся понятия некоторых шаблонов контейнерных кл...

Обучение студентов основам объектно-ориентированного программирования

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

Основные современные языки программирования

Данная статья посвящена рассмотрению языков программирования, которые являются наиболее распространенными в современное время, а также их сравнительному анализу и изучению перспектив их использования в дальнейшем.

Современные методы оптимизации программного кода

В статье рассмотрены основные методы оптимизации программного кода. Приведена классификация методов оптимизации. Приведены главные принципы написания эффективного кода.

Методологии проектирования мультиагентных систем

В данной статье рассмотрены методологии проектирования мультиагентных систем, в том числе, применительно к созданию искусственного интеллекта. Приведен анализ популярных подходов к разработке информационных систем на всех этапах создания.

Теория концептуальной интеграции и лингвистические средства ее выражения

В статье рассматриваются основные положения теории концептуальной интеграции, включая структуру, этапы и свойства процесса концептуальной интеграции; также представлены лингвистические средства выражения теории концептуальной интеграции.

Формальное описание объектного и реляционного представлений предметной области

В данной статье производится построение формального описания объектного и реляционного представлений произвольной предметной области для реализации инструменты объектно-реляционного преобразования

Построение онтологической модели «Астрономия» средствами программного обеспечения Protege

В данной статье рассмотрено использование программного обеспечения Protégé для построения онтологической модели на тему «Астрономия» для дальнейшего использования с целью формализации информации. Определены возможности данных моделей, а также их преи...

Искусственный интеллект и машинное обучение в дизайне продуктов питания

В данной статье затрагиваются применяемые при оформлении дизайна продуктов методов, основанных на искусственном интеллекте, охватывающих концепции обратного проектирования, и средств, а именно приложений искусственного интеллекта, генеративных сетей ...

Теоретические подходы к определению понятия «локальное сообщество»

В статье рассмотрено, как зарубежные и отечественные авторы рассматривают понятие «локальное сообщество» в своих исследованиях, а также определены теоретические подходы и что лежит в их основе.

Задать вопрос