Барбара Лісков

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
Барбара Лісков і ООП

Liskov 1.gif


Коротка біографія

Життя

Барбара Х'юберман Лісков народилася в Каліфорнії, де оселилися її бабуся і дідусь по батьківській лінії - іммігранти з Російської імперії Лео Х'юберман і Роуз Марголіс. Закінчила Каліфорнійський університет в Берклі, після чого поступила в Стенфордський університет. Там вона в 1968 році стала першою жінкою в США, що отримала ступінь доктора з інформатики. Дисертація Лісков носила заголовок A program to play chess endgames. З 1972 року працює і викладає в Массачусетському технологічному інституті.

Робота

Барбара Лісков керувала розробкою таких мов програмування як CLU і Argus в 1970-х і 80-х роках, а також об'єктно-орієнтованої системи управління базами даних Thor. Разом з Дженнет Уінг, Лісков розробила в 1987 році принцип підстановки - концепцію визначення підтипу.

Лісков бере участь в таких організаціях як Американська академія наук і мистецтв, Національної академії інженерних наук, а також Асоціація обчислювальної техніки.

Чоловік Барбари Лісков Натан Лісков і її син Мозес Лісков - також вчені в галузі інформатики та обчислювальної техніки.

Досягнення

2004 - медаль Джона фон Неймана(нагорода в області інформаційних технологій. Вручається за видатні теоретичні, технологічні та ділові досягнення)

2005 - почесний докторський титул від Швейцарської вищої технічної школи Цюріха

2008 - Премія Тюрінга за внесок в практичні і теоретичні основи мов програмування і системного дизайну, зокрема в галузі досліджень стійкості до помилок, абстракції даних і розподілених обчислень. Нагорода присуджена за допомогу в розробці більш надійних, безпечних і простих комп'ютерних програм. Лісков стала всього лише другою жінкою, що отримала цю нагороду

2013 - Премія Гарольда Пендера

2018 - Піонер комп'ютерної техніки

Барбара була нагороджена премією Тьюрінга за створення одного з принципів проектування програмного забезпечення, що йменується SOLID.

В абревіатурі концепція, що належить жінці, позначена літерою Л, про що не важко здогадатися

Принцип Лісков

Принцип підстановки Барбари Лісков

А тепер коротко про сам принцип: Концепція принципу підстановки була запропонована Барбарою Лісков в її доповіді на конференції 1987 року, а через 7 років - опублікована у співавторстві з Джаннет Він. Оригінальне визначення принципу, запропоноване Барбарою, наступне: «У тому випадку, якщо q (x) - властивість, правильна по відношенню до об'єктів х деякого типу T, то властивість q (y) теж буде правильною щодо ряду об'єктів y, які відносяться до типу S, при цьому S - підтип деякого типу T. »

Даний принцип говорить, що «ви повинні мати можливість використовувати будь-який похідний клас замість батьківського класу і вести себе з ним таким же чином без внесення змін». Цей принцип простий, але дуже важливий для розуміння. Клас Child не повинен порушувати визначення типу батьківського класу і його поведінку.

Трохи спрощено - Якщо у нас є клас A (не віртуальний, а цілком реально використовуваний в коді) і його нащадок клас B, то якщо ми замінимо всі використання класу A на B, нічого не повинно змінитися в роботі програми. Адже клас B всього лише розширює функціонал класу A. Якщо ця перевірка працює, то вітаю: ваша програма відповідає принципу підстановки Лісков.

Посилання