Основы объектно-ориентированного проектирования


Немного контекста - часть 2


Этот подход использовался при создании компиляторов для языков C++ и Objective-C. За ними последовали компиляторы для других языков. Преимущества для создателей компиляторов и их пользователей очевидны: переносимость (компиляторы С есть почти для любой компьютерной архитектуры), эффективность (оптимизация, реализуемая хорошим компилятором), и простота интеграции с универсальными инструментами и компонентами, основанными на С.

Стандарт ANSI для С впервые был опубликован в 1990 году. Более ранняя версия языка известна как K&R (по инициалам авторов первой книги по С - Кернигана и Ритчи). Со временем противоречие между двумя взглядами на С - как на язык программирования высокого уровня и переносимый язык ассемблера - стало более явным. Эволюция стандарта сделала язык более типизированным и, следовательно, менее удобным для использования в качестве целевого кода компилятора. Было даже объявлено, что следующие версии будут иметь понятие класса, сглаживая отличие от C++ и Java.

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




Начало  Назад  Вперед



Книжный магазин