Введение

Грегор Кицалес — американский учёный в области компьютерных наук. В настоящее время он является профессором информатики в Университете Британской Колумбии в Ванкувере, провинция Британская Колумбия, Канада. Он наиболее известен разработкой концепции аспектоориентированного программирования и расширения AspectJ для языка программирования Java, оба из которых он разработал, работая в Xerox PARC. Он также является одним из соавторов спецификации Common Lisp Object System и соавтором книги «Искусство протокола метаобъектов» вместе с Джимом Де Ривьером и Дэниелом Г. Боброу. Большая часть работы Кицалеса на протяжении многих лет была посвящена тому, чтобы предоставить разработчикам программного обеспечения возможность создавать программы, максимально соответствующие их проектной документации, снижая сложность и упрощая поддержку кода, что в конечном итоге повышает качество программного обеспечения.

Карьера

После окончания бакалавриата в MIT, Кицалес начал свою исследовательскую карьеру в 1980 году в Лаборатории компьютерных наук MIT, где он проработал до 1983 года. В 1984 году он присоединился к исследовательской лаборатории программного обеспечения Xerox Palo Alto Research Center в качестве научного сотрудника, а в 1996 году стал главным научным сотрудником. На протяжении всего времени работы в PARC Кицалес разработал одни из своих важнейших исследований, включая аспектоориентированное программирование и AspectJ. Он покинул PARC в 1999 году, чтобы сосредоточиться на образовании в области компьютерных наук. В 2000 году он переехал в Канаду и присоединился к Департаменту компьютерных наук Университета Британской Колумбии в качестве профессора с пожизненным назначением. В UBC Кицалес основал Лабораторию программных практик и разработал ряд курсов, связанных с разработкой программного обеспечения и языками программирования. Наиболее значимым его достижением стало создание CPSC 110 – вводного курса программирования в учебной программе UBC, который студенты проходят на первом курсе бакалавриата. Курс посвящен систематическому проектированию программ с использованием методологии разработки по рецептам. В 2002 году он совместно с Чарльзом Симоньи основал компанию Intentional Software, но покинул её в 2003 году, чтобы вернуться в UBC. В 2012 году он был удостоен старшей премии AITO Дала-Нигарда за работу над Common Lisp Object System и был избран членом ACM за вклад в аспектоориентированное программирование. В июле 2017 года он был назначен исполнительным директором UBC Extended Learning.