Сайт о холестерине. Болезни. Атеросклероз. Ожирение. Препараты. Питание

Знаменитые русские судебные ораторы Ораторы 19 века

Понятие «премия» и основания для ее выплаты Премия есть одной из самых

Волшебные ритуалы и обряды в полнолуние

Как распознать ведьму — признаки, предупреждающие зло Сумеречная ведьма какая она магия

Из чего производят инсулин

Эстрада ссср Советские эстрадные певцы 60х 70х годов

Государственный комитет по чрезвычайному положению Мнение бывших участников гкчп

Жареная треска на сковороде

Салат из кольраби: рецепт с яйцом и с майонезом (фото)

Готовим заливное из говядины: рецепт с фото

Сыр осетинский - описание пищевой ценности этого продукта с фото, его калорийность Сыр осетинский рецепт приготовления в домашних условиях

Пикантный салат украсьте

Рецепт с курагой Овсяные хлопья с изюмом рецепт

Международная номенклатура алканов

Обеспечение клеток энергией

Что значит абстрагирование. Что такое абстрагирование – метод, приём или мышление

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

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

Виды абстракции

Некоторые типы абстракции:

  • примитивная чувственная абстракция - отвлекается от одних свойств предмета или явления, выделяя другие его свойства или качества (выделение формы предмета, отвлекшись от его цвета или наоборот). В силу бесконечного многообразия действительности никакое восприятие не в состоянии охватить все её стороны, поэтому примитивная чувственная абстракция совершается в каждом процессе восприятия и неизбежно связана с ним.
  • обобщающая абстракция - даёт обобщённую картину явления , отвлечённую от частных отклонений. В результате такой абстракции выделяется общее свойство исследуемых объектов или явлений. Данный вид абстракции считается основным в математике и математической логике .
  • идеализация - замещение реального эмпирического явления идеализированной схемой, отвлечённой от несущественных для данного исследования реальных атрибутов. В результате образуются понятия идеализированных (идеальных) объектов («идеальный газ », «абсолютно чёрное тело », «прямая » и др.
  • изолирующая абстракция - тесным образом связана с непроизвольным вниманием, поскольку при этом выделяется то содержание, на котором сосредоточивается внимание.
  • абстракция актуальной бесконечности - отвлечение от принципиальной невозможности зафиксировать каждый элемент бесконечного множества [ ] , то есть бесконечные множества рассматриваются как конечные [ ] .
  • конструктивизация - отвлечение от неопределённости границ реальных объектов, их «огрубление».

По целям:

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

Абстрактное и конкретное

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

Определение через абстракцию

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

Что такое абстракция? Зачем она нужна? И как она связана с другими сложными понятиями: абстрагированием, абстрактным мышлением? В этой статье мы разберём все вопросы по полочкам. Поехали!

Абстракция и абстрагирование - это упрощение реальности

Абстракция – это мысль, которая родилась в процессе абстрагирования (процесса исключения и отделения несущественного в данный момент, чтобы увидеть главное). Разочарованный читатель, наверное, подумал: «Ну вот, опять нет чёткого определения, а только размытая фраза». Наберитесь терпения, осталось совсем чуть-чуть.

У слова «abstractio» три варианта перевода с латыни:

  1. отвлечение;
  2. исключение;
  3. отделение.

Это мыслительные операции, которые проводит мозг над объектами реального мира в процессе абстрагирования. И появляются абстракции.

Вот несколько примеров для понимания .

  1. Вы вышли на улицу и посмотрели вверх. О чём подумали? «Газовая оболочка из пяти слоёв с водяным паром, содержит 78% азота, 21% кислорода и так далее». Да так и с ума сойти можно!

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

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

  2. В конце месяца вы сняли с банковской карты зарплату. Теперь ваша общая мысль – «деньги». Это тоже абстракция. В процессе абстрагирования вы мысленно исключили (отделили) несущественные связи объекта.

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

Таким образом, вы постоянно занимаетесь абстрагированием и порождаете абстракции. Без этого процесса голова бы просто лопнула от мыслей.

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

Абстрактные понятия - это высшая форма абстракции

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

Рассмотрим упрощённый пример того, как рождается абстрактное понятие.

На землю выпали атмосферные осадки из кристалликов льда. Это снег. Небо полностью закрыто облаками. Небо и снег белые. На улице белизна.

«Белизна» — это абстрактное понятие. Попробуйте его обобщить. Не получится. Другие примеры абстрактных понятий: истина, справедливость, время, вещество, информация.

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

Поэтому так трудно слушать теоретические лекции преподавателя.

Виды абстракций

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

В зависимости от цели абстрагирования выделяют три вида абстракций.

  1. Изолирующая.
    Цель – выделить существенный признак объекта и сосредоточить на нём внимание. На столе лежит апельсин. Вы замечаете, что фрукт оранжевый или сладко-кислый.
  2. Обобщающая.

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

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

  3. Идеализация.

    Цель – выработать идеализированную схему объекта, отбросив несущественные реальные атрибуты. Идеализация – это метод познания, без которого не обходятся точные и естественные науки. Вспомните пресловутого «сферического коня в вакууме».

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

Если абстрагирование – это процесс выработки абстракций, то абстрактное мышление – это оперирование ими.

Строгий экзаменатор критикует молодого человека, отвечающего слишком пространно: «Давайте ближе к предмету билета».

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

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

Если бы не было понятия времени, то как бы люди договаривались о встречах? Как бы учёные описывали новые галактики, не имея представления о форме, расстоянии, скорости, веществах? А как бы без общих понятий взаимодействовали науки?

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

Вы стали свидетелем семейной ссоры. Вашему другу на телефон звонит жена, плачет, кричит, ругается. Какие выводы делает мозг?

  1. Конкретное мышление: жена друга – истеричка;
  2. Абстрактное мышление: возможно, друг обижал жену, она долго терпела, но теперь не может сдерживать эмоции.

Краткое резюме

Итак, если говорить совсем уж простым языком, то термин, вынесенный в заголовок этой статьи, представляет из себя общую мысль, которая приближает нас к сути объекта (явления).

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

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

Удачи вам! До скорых встреч на страницах блога сайт

Вам может быть интересно

Что такое истина - ищем истинное трактование, определяем ее критерии и изучаем виды (абсолютная и относительная истины) Что такое дедукция - зачем она нужна, чем отличается от индукции и как развить в себе дедуктивные способности Что такое звезда Абсурд - это оценочное суждение или философская категория Что такое генезис Что такое договор - основные понятия, виды и классификация договоров Что такое синтез и чем он отличается от анализа Что такое познание - виды, формы, методы и уровни познания Договор купли-продажи – назначение, виды, правила заполнения, образцы ОКАТО – расшифровка, назначение, поиск ОКАТО по ИНН и по адресу Что такое миф и мифология

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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.

Исследования

Методы эмпирического и теоретического

¨ абстрагирование

¨ анализ и синтез

¨ индукция и дедукция

¨ моделирование и использование приборов

¨ исторический и логический методы научного познания

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

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

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

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

Примеры абстракции: шар, дом, море, дерево, дорога, воздух, газ, жидкость и т.п.

Процесс абстрагирования имеет сложный, двухступенчатый характер.

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

а) установление того, что является общим для многих предметов определенного класса;

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

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

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

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



мужчина ® человек ® живое существо ® материальный объект.

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

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

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

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

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

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

Однако разница между ними существенная, и состоит она в том, что первом случае "изолируется" комплекс свойств объекта, а во втором - единственное его свойство.

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

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

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

Вам также будет интересно:

Маточные трубы, они же фаллопиевы
Женский организм полон тайн. Он подвергается ежемесячным циклическим изменениям. Этого...
Прокуратура Башкортостана: «Преподавание башкирского языка вопреки согласию родителей не допускается Из истории вопроса
Прокуратура Башкирии в результате многочисленных проверок признала вопрос обязательного...
Что мы знаем о Дагестанской кухне?
Любые орехи — один из лучших ингредиентов вкусных десертов. Предлагаем начать с грецких и...
Монгольское завоевание и его влияние на историю России
Рождение Монгольской империи . В начале XIII в. на Русь стали доходить смутные слухи о...