абстракция программирование



Абстракция в программировании

Автор Алексей толков задал вопрос в разделе Другие языки и технологии

Что такое абстракции в информатике ? и получил лучший ответ

Ответ от Nikolai Chuvakhin[гуру]
Нет никакой "информатики" -- это советские выдумки.
В системном программировании применяется абстракция аппаратуры (hardware abstraction) -- создается некоторое программное обеспечение (hardware abstraction layer -- "слой абстракции аппаратуры"), которое взаимодействует с аппаратурой прямо, а другие программы взаимодействуют с аппаратурой только через слой абстракции. Причем другим программам даже не обязательно знать, какая именно это аппаратура -- слой абстракции берет на себя все сложности, связанные с разницей в устройстве различных аппаратных средств.
В программировании баз данных абстракция (database abstraction [layer]) -- это создание программного обеспечения, которое работает в качестве "посредника" (middleware) между базой данных и прикладной программой. Прикладная программа при таком раскладе может запрашивать данные или посылать их на запись, а в какой именно базе данных эти данные хранятся (MySQL, Oracle, черт в ступе) -- ей все равно.
В объектно-ориентированном программировании абстракция -- это создание сущностей, которые не могут быть инстанциированы. Например, можно определить некоторый класс, но создать экземпляр этого класса нельзя -- это называется "абстрактный класс". Абстрактный класс можно использовать для эмуляции процедурной библиотеки (то есть методы класс просто вызываются статически, как простые функции) или как базовый класс: другие классы наследуют его структуру, но сами абстрактными могут уже и не быть -- их можно инстанциировать.

Ответ от Оля[эксперт]
Объекты и операции любой операционной среды - это абстракции.

Ответ от Капитан Гугл[гуру]
То же, что и вне нее.

Ответ от Алекс Красс[гуру]
Да тоже самое, что и везде. Выделение только существенных признаков, отвлекаясь от несущественных.

Ответ от Евгений Бубнов[эксперт]
т. к. ты задал этот вопрос в рубрике "программирование", попытаюсь тебе ответить что в нем значит этот термин. я бы сказал абстракция в программировании - это написание функции, пригодной для многих задач. Шаблон, который при очень хорошем опыте можно использовать во многих сферах. Например пишешь функцию, получающую три параметра и делаешь ее такой, чтобы она работала, подставь ты в эти параметры два числа и числовую операцию. то есть 2,3,- или же 6,8,+. При этом абстракция дает тебе возможность, в эту же самую функцию подставить какие-нибудь два наследственных признака человека и выявить третий. (Такие функции писать сложно, но возможно. Нужно иметь зоркий взгляд, богатый опыт программирования и хотя бы немного неординарное мышление. На лекции в университете, на которой присутствовало порядка 600 человек, когда показывается пара примеров и спрашивается что у них общего, никто ничего не видит) . В языках программирования (ЯП) есть же еще абстрактные классы abstract. Это пустые классы содержащие шаблоны функций. При работе в команде, человеку пишущему свой класс и наследующему твой абстрактный, придется прописать в своем классе абсолютно все функции, что и в твоем абстрактном. (во всяком случае в ЯП java). ПС- по поводу информатики. она есть. не верь никому. лучше всего это понятие звучит на английском и называется computer science. На русский сложно полноценно перевести, поэтому назвали просто информатикой.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Что такое абстракции в информатике ?
Абстракция данных на Википедии
Посмотрите статью на википедии про Абстракция данных
Уровень абстракции программирование на Википедии
Посмотрите статью на википедии про Уровень абстракции программирование
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*