Как выделить память для данных в Паскале
Использование системных команд в С++
Как создать каталог в Паскале с помощью процедуры MkDir
Практическое руководство по адаптивной вёрстке с помощью новой технологии CSS Grid
Как в Паскале преобразовать текст в строку с маленькими буквами

Как стать успешным фрилансером
Раздел: Как стать программистом / Языки программирования
Язык Си плюс плюс: история развития
![]() |
Все способы изучить Python
Каждый раз, изучая какую-то новую науку, мы задаёмся вопросом - где взять обучающие материалы. Конечно, сегодня нам помогает в этом Интернет. Но иногда на поиски уходит очень много времени, а нужного результата мы не получаем... Собрал для вас кучу полезных ссылок для изучения Python. не благодарите ))) Подробнее... |
Не знаю как вам, но мне всегда интересно, как происходит развитие каких-либо систем, например, цивилизаций, языков и т.п.
Вот и история развития языка С++ - это тоже довольно занятная вещь. Вот краткая хронология - от языка программирования, который давно уже никто не помнит, до С++14. Ну а чтобы читать было немного интереснее, я также рассказал о некоторых моментах своей жизни.
Язык BCPL. 1966 год (я ещё не родился и даже не планирую))).
BCPL (Basic Combined Programming Language) - язык программирования, разработанный
Мартином Ричардсом в 1966 году в Кембриджском университете. Изначально он
предназначался для написания компиляторов для других языков.
Язык Би. 1969 год (а вот здесь я уже родился - как раз в этом году))). Язык Би (вторая
буква английского алфавита — B) — интерпретируемый язык программирования, разработанный
в AT&T Bell Telephone Laboratories. Является потомком языка BCPL и непосредственным
предшественником языка Си. Язык Би был в основном произведением Кена Томпсона при содействии Денниса Ритчи и был опубликован в 1969 году.
Язык Си. 1972 год (мне уже три года, я хожу в деревянный детский сад с печным отоплением))). C (по русски Си) - компилируемый статически
типизированный язык программирования общего назначения, разработанный в 1969...1973
годах сотрудником Bell Labs Деннисом Ритчи как развитие языка Би. Первоначально был
разработан для реализации операционной системы UNIX, но, впоследствии, был перенесён
на множество других платформ.
Си с классами. 1980 год (мне уже 11 лет. В Москве проходит Олимпиада, в магазинах появилась жвачка, наш частный дом снесли и мы переехали в
благоустроенную квартиру). Классы - это не школьные классы ))) Это первый шаг на
пути к объектно-ориентированному языку, то есть к С++.
С++. 1983 год (я в седьмом классе. Самое яркое событие - это беременность одноклассницы (не от меня))), но мы долго все это обсуждали))). Первое появление языка С++ на мировой арене.
C84. 1984 год (я закончил 8 классов и поступил в СПТУ - да, с этого я начинал). Очередная реализация языка Си.
Cfront (выпуск E). 1984 год. Специальная программа для преобразования языка С++ в язык С. Дело в том, что язык С++ был уже создан, но компиляторов для него ещё не было. Поэтому исходные коды программ, написанные на языке С++ сначала преобразовывали в язык С, а потом уже компилировали существующими компиляторами С.
Cfront (выпуск 1.0). 1985 год. Дальнейшее развитие программы.
1988 год (я уже год как служу в Советской Армии). А язык С++ развивается, и теперь в нём есть множественное виртуальное наследование.
1991 год (год назад я вернулся из армии, начались лихие 90-е), а язык С++ продолжает развиваться и теперь в нём есть обобщённое программирование (шаблоны).
1996 год (лихие 90-е продолжаются, хотя этот год был не самым плохим - намечаются какие-то улучшения, а я всё-ещё даже не думаю об изучении программирования). А между тем язык С++ продолжает развиваться и стандартизируется в ANSI C++ и ISO-C++.
1998 год (кризис, “киндер-сюрприз” Кириенко, обвал рубля и ваще полная ж…). А язык С++ развивается и стандартизируется по ISO/IEC 14882:1998.
2003 год (я поступаю в университет - наконец то, и уже примерно пару лет увлекаюсь программированием - даже закончил курсы программистов, где впервые на практике попробовал создавать программы на С++, и получил там красный диплом). А язык С++ стандартизируется по ISO/IEC 14882:2003.
C++/CLI. 2005 год (я увольняюсь из налоговой и устраиваюсь
начальником ИТ-отдела на одном из машиностроительных предприятий нашего города,
где начинаю разрабатывать систему управления производством на базе
1С, кстати,
1С написана на
С++). C++/CLI - язык для среды программирования Microsoft .NET. Он интегрирует С++ стандарта ISO с Объединённой Системой Типов (Unified Type System, UTS), рассматриваемой как часть общеязыковой инфраструктуры (Common Language Infrastructure, CLI). Он поддерживает и исходный уровень, и функциональную совместимость исполняемых файлов, скомпилированных с родного и управляемого C++. C++/CLI представляет собой дальнейшее развитие Managed C++. C++/CLI стандартизирован в ECMA как ECMA-372.
TR1. 2005 год. C++ Technical Report 1 (TR1) является общим названием для стандарта ISO/IEC TR 19768, библиотеки расширений C++ - это документ с предложением дополнений в стандарт библиотеки С++. Дополнения включают регулярные выражения, умные указатели, хэш-таблицы, и генераторы случайных чисел. TR1 не стандарт, а скорее проект документа. Однако, большинство его предложений, стали частью следующего официального стандарта, C++11.
C++11. 2011 год (я два года назад закончил универ, и уже три года как работаю на новой должности - инженера по автоматизации - по своей вузовской специальности, освоил программирование ПЛК и SCADA-системы). C++11 или ISO/IEC 14882:2011 (в процессе работы над стандартом носил условное наименование C++0x) - новая версия стандарта языка C++, вместо ранее действовавшего ISO/IEC 14882:2003. Новый стандарт включает дополнения в ядре языка и расширение стандартной библиотеки, в том числе большую часть TR1.
C++14. 2014 год (я уже пару лет как начальник отдела автоматизации, хотя из-за нехватки специалистов приходится много заниматься инженерной работой и программированием). С++14 - это последний утверждённый на текущий момент стандарт языка С++. C++14 - неофициальное название стандарта C++ ISO/IEC JTC1 (полное название: «International Standard ISO/IEC 14882:2014(E) Programming Language C++»). C++14 можно рассматривать как небольшое расширение над C++11, содержащее в основном исправления ошибок и небольшие улучшения. Комитет разработки нового стандарта опубликовал черновик N3690 15 мая 2013. Рабочая версия черновика N3936 была опубликована 2 марта 2014 года, заключительный период голосования закрыт 15 августа 2014 года, а результат (единогласное одобрение) был объявлен 18 августа 2014 года.
P.S. Не знаю, понравилось ли вам это небольшое путешествие во времени. Надеюсь, что да. Мне, во всяком случае, понравилось. А если итог работы интересен хотя бы одному человеку, то работа сделана не зря ))))
Подписаться на канал в RuTube
Вступить в группу "Основы программирования" Подписаться на рассылки по программированию |
![]() |
Директивы компилятора
Как это ни странно, но даже многие опытные программисты не используют директивы компилятора, считая их чем-то ненужным и бесполезным. А между тем, директивы компилятора - это очень классная штука. Если их умело применять в своих программах, то можно существенно сократить время на разработку и уменьшить количество рутинных операций. Подробнее... |