Что такое абстрагирование? Метод абстрагирования и его цели. Абстракция — что это такое и как абстрактное мышление (абстрагирование) помогает увидеть суть Какое место в познании играет абстрагирование

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

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

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

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

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

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


Исходя из различия целевых характеристик, в современной нау­ке наиболее широкое применение находят абстракции следующих основных типов:

1. Изолирующая абстракция. Предполагает выделение свойств и отношений, присущих тому или иному предмету, мысленное отделение этих свойств и отношений от самого предмета, придание им ста­туса самостоятельного существования. Примерами таких абстрактных предметов могут служить понятия: растворимость, устойчивость надежность, красота, простота, белизна и т.д.

2. Обобщающая абстракция. Здесь отвлекаются от индивидуальных особенностей и черт предметов с выделением таких их общих признаков, которые позволяют вводить в рассмотрение классы предметов. Так, используемые в металлообработке резцы, сверла, фрез протяжки, напильники, ножовки и т.п. с помощью обобщающей абстракции образуют понятие класса «металлорежущий инструмент».

3. Абстракция потенциальной осуществимости, при которой отвлекаются от реальных границ конструктивных возможностей человеческого сознания, связанных с ограниченностью жизни человека в пространстве и времени. С этой точки зрения бесконечность выступает уже не как непосредственно данная, актуальная, а как потенциально осуществимая. Эта абстракция лежит в основе конструктивной математики, теории алгоритмов, абстрактных автоматов и других теорий.

4. Абстракция как продукт идеализации, образованная посредством предельного абстрагирования от свойств реальных предметов. Полученные абстракции (идеализированные объекты) широко рас­пространены в науке: точка, прямая, инерция, точечный электриче­ский заряд, абсолютно черное тело, несжимаемая жидкость, сплош­ная среда, идеальный газ. Идеализированные объекты составляют важный арсенал понятий научного знания, без которого оно функцио­нировать не может.

Система абстракций образует научный язык, посредством кото­рого формируются и формулируются понятия: научный факт, научная проблема, научная идея, научная гипотеза, научный закон, научная теория.

Абстрагирование (этот термин произошел от латинского слова abstractio, что обозначает отвлечение) определяет взгляд на ситуацию, человека или предмет с отстраненной точки восприятия. Таким образом, происходит отвлечение от конкретики и способность оценить ситуацию вообще. Понятие абстрагирования сыграло важнейшую роль в развитии множества наук.

Абстрагирование - пример

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

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

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

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

У каждого понятия есть и своя противоположность. Абстрагирование и конкретизация – это как взгляд вблизи и издали. Стоя близко, вы рассмотрите все в мелочах (конкретизация), а стоя далеко, вы сможете оценить понятие в целом, не отвлекаясь на мелочи (абстрагирование). Таким образом, это два противоположных понятия.

Это легко проиллюстрировать примером. Если вы говорите «я буду худеть» - это абстракция. А если вы говорите «Я откажусь от сладкого и буду делать утренние пробежки» - это уже конкретика.

Метод абстрагирования и его цели

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

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

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

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

Результат абстрагирования называется .

Понятийный ряд

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

Например: Буду вести здоровый образ жизни - общие слова и абстракция.

Буду делать зарядку 15 минут в день и обливаться каждый день холодной водой - это конкретика.

Цели абстрагирования:

  • Отождествление, поиск общих черт . В этом случае из фокуса внимания выпадают те признаки, которые отличают один предмет (ситуацию, человека) от другого, а внимание сосредотачивается на том, что есть общего между ними.
  • Обобщение и систематизация . В этом случае наоборот, в фокус внимания попадают ключевые отличия, по которым можно разделить предметы на независимые и легко отличимые друг от друга группы. Например, у меня есть конкретная цель на день, но в месяце 30 дней и если обощить цель на каждый день - я получаю цель на месяц. Из месяцев складывается год - обобщим цели на месяц получаем цели на год и так далее.
  • Четкость и конкретика формулировок. В этом случае в фокусе внимания определенное понятие - и только то, что оно обозначает. Все остальное - оказывается за пределами внимания. Например, если я говорю слово «рост» - я имею ввиду только процесс количественных изменений, когда я говорю «развитие» - строго процесс качественных изменений. В этом случае задача абстрагирования разделить понятия: что обозначает что и где границы одного понятия, где - другого.
  • Создание образца. Если меня интересует определенное качество предмета, которое я беру за отправную точку, я сознательно выделяю его и довожу, утрируя, до «чистоты эквивалента». То есть я заведомо знаю, что в реальном мире такое качество существовать в чистом виде не может - но я сознательно ввожу его для того, чтобы был образец (или отправная точка, от чего исходим). Например, Евклид положил в основу своей геометрии первичные термины «точка», «прямая» и «плоскость», которых, в том смысле как их понимал Евклид, нет в реальном мире.

Зачем нужно абстрагирование

Определение целей на жизнь

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

Формирование эмоциональных состояний

Например абстрагироваться от сказки и жить реальностью , когда это необходимо или наоборот.

Наименование параметра Значение
Тема статьи: Абстрагирование
Рубрика (тематическая категория) Программирование

ОБЪЕКТНАЯ МОДЕЛЬ

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

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

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

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

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

Абстракция – совокупность существенных характеристик некоторого объекта͵ которые отличают его от всœех других видов объектов и, таким образом, четко определяют особенности данного объекта с точки зрения дальнейшего рассмотрения и анализа.

Абстрагирование – процесс выделœения абстракций в предметной области задачи.

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

Для примера рассмотрим системный блок компьютера. Пользователю, использующему компьютер для набора текста͵ не важно, из каких частей состоит данный блок. Стоит сказать, что для него это – коробка с кнопками и возможностью подсоединœения внешних запоминающих устройств. Он абстрагируется от таких понятий, как ʼʼпроцессорʼʼ или ʼʼоперативная памятьʼʼ. С другой стороны, у программиста͵ пишущего программы на языках низкого уровня, барьер абстракции лежит намного ниже. Ему крайне важно знать устройство процессора и команды, понимаемые им.

Является полезным еще один дополнительный принцип, называемый принципом наименьшего удивления . Согласно ему абстракция должна охватывать всœе поведение объекта͵ но не больше и не меньше, и не привносить сюрпризов или побочных эффектов, лежащих вне ее сферы применимости.

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

Будем называть клиентом любой объект, использующий ресурсы другого объекта͵ называемого сервером . Мы будем характеризовать поведение объекта услугами, которые он оказывает другим объектам, и операциями, которые он выполняет над другими объектами. Этот подход концентрирует внимание на внешних проявлениях объекта и реализует так называемую контрактную модель программирования . Эта модель состоит в следующем: внешнее проявление объекта рассматривается с точки зрения его контракта с другими объектами, в соответствии с этим должно быть выполнено и его внутреннее устройство (часто – во взаимодействии с другими объектами). Контракт фиксирует всœе обязательства, которые объект-сервер имеет перед объектом-клиентом. Другими словами, данный контракт определяет ответственность объекта – то поведение, за ĸᴏᴛᴏᴩᴏᴇ он отвечает.

Каждая операция, предусмотренная контрактом, однозначно определяется ее сигнатурой – списком типов формальных параметров и типом возвращаемого значения (в языке С++ тип возвращаемого значения не является частью сигнатуры). Полный набор операций, которые клиент может осуществлять над другим объектом, вместе с правильным порядком, в котором эти операции вызываются, принято называть протоколом . Протокол отражает всœе возможные способы, которыми объект может действовать или подвергаться воздействию. Тем самым протокол полностью определяет внешнее поведение абстракции.

Пример.
Размещено на реф.рф
В тепличном хозяйстве, использующем гидропонику, растения выращиваются на питательном растворе без песка, гравия и другой почвы. Управление режимом работы парниковой установки – очень ответственное дело. Оно зависит как от вида выращиваемых культур, так и от стадии выращивания. Нужно контролировать целый ряд факторов: температуру, влажность, освещение, кислотность и концентрацию питательных веществ. В больших хозяйствах для решения этой задачи часто используют автоматические системы, которые контролируют и регулируют указанные факторы. Цель автоматизации состоит здесь в том, чтобы при минимальном вмешательстве человека добиться соблюдения режима выращивания.

Одна из ключевых абстракций в данной задаче – датчик . Известно несколько разновидностей датчиков. Все, что влияет на урожай, должно быть измерено. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, нужны датчики температуры воды, температуры воздуха, влажности, кислотности, освещения и концентрации питательных веществ.

С внешней точки зрения датчик температуры - ϶ᴛᴏ объект, который способен измерять температуру там, где он расположен. Температура - ϶ᴛᴏ числовой параметр, имеющий ограниченный диапазон значений и определœенную точность и означающий число градусов по Цельсию.

Местоположение датчика - ϶ᴛᴏ неĸᴏᴛᴏᴩᴏᴇ однозначно определœенное место в теплице, температуру в котором крайне важно знать. Таких мест, вероятно, немного. Для датчика температуры при этом существенно не само местоположение, а только то, что данный датчик расположен именно в данном месте.

Рассмотрим элементы реализации нашей абстракции на языке С++.

typedef float Temperature; // Температура по Цельсию

typedef unsigned int Location; // Число, однозначно определяющее

// положение датчика

Здесь два оператора определœения типов Temperature и Location вводят удобные псевдонимы для простейших типов, и это позволяет нам выражать свои абстракции на языке предметной области. Temperature - ϶ᴛᴏ числовой тип данных в формате с плавающей точкой для записи температур.
Размещено на реф.рф
Значения типа Location нумеруют места͵ где могут располагаться температурные датчики.

Рассмотрим обязанности датчика температуры. Датчик должен знать значение температуры в своем местонахождении и сообщать ее по запросу. Клиент по отношению к датчику может выполнить такие действия: калибровать датчик и получать от него значение текущей температуры. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, объект ʼʼДатчик температурыʼʼ имеет две операции: ʼʼКалиброватьʼʼ и ʼʼТекущая температураʼʼ.

struct TemperatureSensor { // Датчик температуры

Temperature curTemperature; // текущая температура в

// местонахождении датчика

Location loc; // местонахождение датчика

void calibrate(Temperature actualTemperature); // калибровать

Temperature currentTemperature(); // текущая температура

Данным описанием вводится новый тип TemperatureSensor. Важным здесь является то, что, во-первых, данные и функции, изменяющие их, объединœены вместе в одном описании, и, во-вторых, мы не работаем непосредственно с данными, а только посредством соответствующих функций. В частности, здесь мы использовали так называемые set- и get-функции , соответственно устанавливающие и возвращающие значения переменных (calibrate – set-функция, currentTemperature – get-функция).

Объекты данного типа вводятся аналогично тому, как и переменные стандартных типов:

TemperatureSensor TSensors; // массив из ста объектов типа

// TemperatureSensor

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

TSensors.calibrate(20.); // калибруется датчик номер 3

Поскольку имя объекта͵ для которого вызывается функция-член, неявно ей передается, в списках аргументов функций отсутствует аргумент типа TemperatureSensor, задающий конкретный датчик, над которым производятся действия. К этому объекту внутри функции можно явно обратиться по указателю this. К примеру, в телœе функции calibrate можно написать один из двух эквивалентных операторов

this -> curTemperature = actualTemperature;

Центральной идеей абстракции является понятие инварианта. Инвариант - ϶ᴛᴏ неĸᴏᴛᴏᴩᴏᴇ логическое условие, значение которого (истина или ложь) должно сохраняться. Для каждой операции объекта можно задать предусловия (ᴛ.ᴇ. инварианты, предполагаемые операцией) и постусловия (ᴛ.ᴇ. инварианты, которым удовлетворяет операция).

Рассмотрим инварианты, связанные с операцией currentTemperature. Предусловие включает предположение, что датчик установлен в правильном месте в теплице, а постусловие – что датчик возвращает значение температуры в градусах Цельсия.

Изменение инварианта нарушает контракт, связанный с абстракцией. В случае если нарушено предусловие, то клиент не соблюдает свои обязательства и сервер не может выполнить задачу правильно. В случае если нарушено постусловие, то свои обязательства нарушил сервер, и клиент не может ему больше доверять.

Для проверки условий язык С++ предоставляет ряд специальных средств.

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

С++ имеет специальный механизм обработки исключений, чувствительный к контексту. Контекстом для генерации исключения является блок try (пробный блок). В случае если при выполнении операторов, находящихся внутри блока try, происходит исключительная ситуация, то управление передается обработчикам исключений, которые задаются ключевым словом catch и находятся ниже блока try. Синтаксически обработчик catch выглядит подобно функции с одним аргументом без указания типа возвращаемого значения. Для одного блока try должна быть задано несколько обработчиков, отличающихся типом аргумента.

try{ // пробный блок

catch(char * error){. . .} // имя аргумента используется в обработчике

catch(int){. . .} // имя аргумента не используется в обработчике

catch(…){. . .} // обрабатываются всœе исключения

Исключение генерируется посредством указания ключевого слова throw с необязательным аргументом-выражением.

Исключение будет обработано посредством вызова того обработчика catch, тип параметра которого будет соответствовать типу аргумента throw. При поиске подходящего обработчика всœе обработчики просматриваются в порядке их записи.

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

Пример.
Размещено на реф.рф
Рассмотрим стек, реализованный с использованием массива фиксированной длины.

int stack ; // не более ста элементов в стеке

int top=0; // номер доступного места для помещения элемента

void push(int el) {

if(top = = 100) throw 1; // проверить на переполнение

// (предусловие top < 100)

else stack = el; // поместить элемент в стек

if(top = = 0) throw 0; // проверить на пустоту

// (предусловие top > 0)

else return stack[--top]; // извлечь элемент из стека

try{ // пробный блок

if(i!=k) throw 2; // нарушено постусловие

catch(int error){. . .} // если error = 0, то стек пуст;

// если error = 1, то стек полон; если error = 2, то стек неработоспособен

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

Абстрагирование - понятие и виды. Классификация и особенности категории "Абстрагирование" 2017, 2018.

Познание – важная составляющая жизни человека. Человек познает мир вокруг, чувства, саму жизнь. Издревле люди стремились познать природу, космос, любые явления жизни на Земле.

Человека интересует все – лепестки цветка, птица, порхающая на небе, волны океана, другие планеты. Стремление к познанию – это естественное качество человека.

Стремление познавать мир подвигло человечество к созданию все новых и новых орудий труда и предметов быта. Стремление к познанию привело к созданию и развитию цивилизации.

Процесс познания не был бы столь интересным без абстрагирования. С помощью абстрагирования древние люди стремились увидеть со стороны Землю и космос, а также роль человечества в этом мире.

Абстрагирование в повседневной жизни

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

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

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

Например, возникла трудная ситуация, которую срочно нужно разрешить. Человек, вовлеченный в проблему, не видит возможные пути решения. Он думает, что находится в тупике. Абстрагировавшись от проблемы, человек поймет, как надо поступить в этой ситуации.

Роль абстрагирования

Абстрагирование помогает человеку в полном объеме познать себя, мир, и все, что ему интересно. И главное – абстрагирование позволяет познать суть жизни на Земле, тайну мироздания, познать собственную роль в этой жизни.

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

Таким образом, абстрагирование для человека – ключевое свойство познания мира и жизни. Оно позволяет наиболее полно познать реальность. И это свойство заложено в человеке самой природой.