Любой человек, который интересуется как устроена работа компьютеров рано или поздно встречается с такими понятиями. Очень много сухих и "мокрых" (то есть с примерами) объяснений этих понятий в интернете и мы решили внести свою лепту, но сделать это по особенному, очень абстрактивно. Итак, мы сейчас займемся абстракцией через интерфейс :).
Эти два понятия в компьютерных технологиях очень тесно связаны между собой, в данной статье мы постараемся показать эту связь.
АБСТРАКЦИЯ.
Абстракция это УПРОЩЕНИЕ. И на самом деле это так. Если вы посмотрите на небо вряд ли вы задумаетесь о его химическом составе, правда ( не, ну бывают конечно исключения, но сейчас не об этом)? Вы упростили точные научные представление о небе, чтобы сосредоточится на том, что является главным для вас. То же самое и в отношении денег. Получив деньги, например в виде зарплаты, или используя это слово в обиходе, вряд ли вы будете задумываться о всех значенях этого слова в соотвествии с научной и технической их природе. Используя это слово вы упростите его смысловое значение до уровня важности лично для вас в данный момент. То есть абстракция это не просто упрощение, а упрощение с определенной целью. Итак если полностью, то:
абстракция это упрощение (или отвлечение от ненужных подробностей) понятия с целью выделения того, что является главным в этом понятии на данный момент времени
Сочиняя определение этого понятия мы абстрагировались (упрощали) как могли.
Как это связано с компьютерами? Говоря кому-либо создай папку на рабочем столе (если вы разбирали системный блок, то заметили, что там нет никакого стола, если нет можете поверить на слово) вы вряд ли будете представлять как потоки электронов кодируются в двоичный код с помощью которого происходит обращение к ячейки памяти жесткого диска... Не, дальше продолжать не будем. Тем более, что и в этом описании не обошлось без кучи абстракций. Думается суть понятна, разработчики операционных систем и программного обеспечения позаботились о том, что создавая папку на рабочем столе нам не нужно задумываться о том, как работает командная строка (а ведь все команды проходят через нее, хотя от нас это и скрыто) и уж тем более понимать как работает процессор и память на уровне схем, архитектур и законов электроники.
ИНТЕРФЕЙС.
Интерфейс это взаимодействие. И сейчас мы разберем это на примере.
Если вы сейчас читаете эту статью с мобильного устройства, то ведя пальцем вверх вы видите как опускается текст вниз (но это не точно, всякое бывает :)). Таким образом ВЗАИМОДЕЙСТВУЮТ две системы, первая это ваш палец, вторая дисплей смартфона/планшета/фаблета. Реализуется это взаимодействие на физическом уровне (законы физики используемые в электроннике) и логическом (написание алгоритмов описывающих правила работы между физическим и абстрактным уровнями, их общее признание, то есть стандартизация, а также создание кода работающего по этим алгоритмам). Да без абстракций здесь тоже не обошлось. На самом деле и то и другое очень сильно упрощают жизнь.
Еще один пример для закрепления. Нажимая на значок приложения вы знаете, что оно сейчас запустится в любой операционной системе. То есть закрепленный порядок действий, которые включают в себя: отображение значка, на значок нужно нажать, после нажатие открывается приложение это и есть интерфейс. Вы двигаете мышью и курсор перемещается тоже является интефейсом, так как взаимодействуют две системы, манипулятор мышь (очевидно, что слово "мышь" в данном случае абстракция) и операционная система, которая отображает курсор. А сам курсор, как и рабочий стол, это всего лишь абстракции. Потому, как в операционных системах нет ни рабочего стола, ни курсора, ни папок с файлами. А все это лишь абстракции выраженные в виде графических изображений. А работоспособность этих абстракций (то есть нажав на кнопочку вы видите, что что-то происходит, а это ничто иное как упрощенное, переосознаное и по сути выдуманое отображение истиных процессов и процедур) и других систем (монитор, клавиатура, колонки, мышь, сам человек) происходит за счет интерфейсов.
Ну что же объяснили, как смогли. Искренне надеемся, что было понятно.