суббота, июня 09, 2007

Статья Evolving a language in and for the real world: C++ 1991-2006

Evolving a language in and for the real world: C++ 1991-2006 - статья Бьярна Страуструпа про развитие языка С++. Статья эта написана специально для выступления на конференции HOPL III. На нее дали ссылку на Lambda the Ultimate, после чего ее стали активно обсуждать разработчики, я уже видела много ссылок на нее. Практически все сравнивают ее с книгой D&E, Страуструп эту свою книгу тоже в статье часто вспоминает.
А сама статья очень интересная. В небольшой объем Страуструп уместил кучу самой разной информации. Например, рассказывает про STL, как он долго мучался, пытаясь придумать что-либо подобное. Про проблемы, которые возникают при попытке прикрутить к С++ автоматическую сборку мусора. Рассказывает что такое generic programming (хороший перевод на русский не знаю, увы) и метапрограммирование шаблонов (template metaprogramming). Упоминает ABI и интересный термин - "bug compatibility". Рассказывает о Java и .NET, дает примеры из C++0x и высказывает свое мнение о причинах успеха С++.
Написано хорошо, читается легко, мне очень понравилось.

5 коммент.:

vokinneberg комментирует...

generic programming - обобщенное программирование?

Alena комментирует...

generic programming - обобщенное программирование?

Угу, можно так... Но все же немного не то. Вот если сказать "дженерики" понимание у людей наступает мгновенно.

Unknown комментирует...

Спасибо, за ссылку на статью. А на счет generic programming - мне лично нравится определение "обобщенное программирование", но некоторые мои коллеги, Алён, склоняются к варианту "дженериков". Не знаю, по-моему, обобщения довольно хороший перевод понятия generics. До этого я использовал только название "дженерики", но после прочтения "CLR via C#", в мой обиход вошло и слово "обобщения", так что думаю использовать повсеместно будут и ту, и другую интерпретацию понятия.

Анонимный комментирует...

generic в советских книгах, в частности в книгах по Ада, переводится как родовой. Я бы перевёл как "родовое программирование".

Алексей Барило комментирует...


Alexander пишет..
generic в советских книгах, в частности в книгах по Ада, переводится как родовой. Я бы перевёл как "родовое программирование".

Действительно, я тоже в советской литературе, когда еще учился в начале 90х видел "родовые классы", "родовое программирование", потом все чаще встречал "обобщенное" - так сам называл и в книгах по C++ и журналах так же называлось.
Транслитерацию "дженерик" - только последнее время стал встречать,
IMHO: когда микрософт стал рекламировать C# 2.0 и его возможности. Судя по всему из ейных курсов и доков пошла традиция.