Разное

Язык программирования с страуструп б: Бьерн Страуструп. Язык программирования С++. Специальное издание

Содержание

Персона. Создатель С++ Бьярне Страуструп, который «никогда не любил» языки программирования

У создателя С++ было очень мало шансов «выйти в люди»: бедная семья, худшая школа в городе, отсутствие якро выраженных склонностей к чему-либо. Он даже не был «гениален».

Это человек, которого можно назвать self-made. Его главной целью было добиться настоящего успеха в чем бы то ни было.

Возможно, всем нам повезло, что его «занесло» в программирование. Потому что сейчас очень трудно представить современную ИТ-индустрию без наследия С++.

Бьярне Страуструп родился 30 декабря 1950 года в датском городе Орхус. Это второй по величине (250 тысяч жителей) город Дании, расположенный на восточном побережье Ютландии.

Несмотря на то, что его родители не были «академиками», он отлично учился в школе. Хотя, как потом выяснил Бьярне, это была одна из худших школ в городе.

В детстве будущий инженер любил играть в футбол, кататься на велосипеде. Кроме того, он был бойскаутом. Как большинство мальчиков в то время, Страуструп подрабатывал доставкой газет и молока.

После окончания школы он все-таки поступил в местный Университет на отделение компьютерных технологий. Бьярне допускал, что мог бы стать и архитектором, и историком, и социологом. Но в конце концов он остановился на математике и компьютерных науках. На его решение повлиял школьный учитель математики, который привил мальчику любовь к этой науке.

Университет

Он впервые познакомился с компьютером уже в стенах ВУЗа. Algol-60 был первым языком программирования, который выучил Бьярне.

Орхусский университет входил в ТОП-100 высших учебных заведений мира. Страуструп со страхом думал о том, что ему придется работать учителем математики, если не найдется работа в сфере программирования. Он был убежден, что математика должна иметь практическое приложение.

Однако на втором курсе он понял, что программирование, и компьютерные технологии в целом, – это не только и не столько математика. Кроме того, оказалось, что Бьярне был не так хорош в математике, как он думал.

В одном из интервью Страуструп обозначил свою позицию по поводу обучения программированию:

Я оцениваю образование выше обучающих курсов. Я в большинстве случаев выберу специалиста с широким кругозором и глубокими базовыми знаниями, чем кого-то с сертификатом о прохождении узкоспециализированных курсов. Вообще мои идеал – это сочетание академических знаний и практических навыков.

В университетские годы Страуструп подрабатывал тем, что писал небольшие программы для подразделения компании Burroughs в Орхусе. Тогда он понял, что коммерческая разработка имеет мало общего с написанием программ для себя или друзей, и тем более, с выполнением лабораторных работ в ВУЗе. Бьярне получил опыт общения с пользователями, опыт поддержки и сопровождения кода.

Часть вырученных денег студент тратил на оплату собственного обучения. Помимо того, что он принес пользу себе, его разработки помогли вывести компанию на новый уровень: Burroughs в дальнейшем объединилась с Sperry, в результате чего образовалась компания Unisys – мировой производитель комплексных программно-аппаратных решений.

Кроме того, студент разрабатывал ПО и для нужд университета. В 1975 году Страуструп окончил его и получил степень магистра.

Кембридж

Ближе к концу обучения Бьярне заинтересовался микропрограммированием. Интерес усилился после стажировки в Кембридже. Поэтому Страуструп переехал в Англию, чтобы продолжить свое образование в Кембриджском университете. Там было все необходимое оборудование для изысканий в области микропрограммирования.

Кроме того, новый университет помог ему повысить требования к себе. В этом ВУЗе уровень студентов и педагогов был намного выше, чем в орхусском университете. Это мотивировало Страуструпа развиваться активнее.

В Кембридже, в Вычислительной лаборатории, он занимался проектированием распределенных систем. В 1979 году Бьярне получил докторскую степень.

В этом же году Страуструп вместе с женой Мэриэн переехал в Нью-Джерси (США), где стал работать в Центре компьютерных исследований фирмы Bell Labs. В то время фирма была в «дружеских» отношениях с Кембриджским университетом.

С++

Когда Страуструп занимался исследованиями в фирме, ему потребовалось написать несколько имитационных программ для моделирования распределенных вычислений. SIMULA-67 — объектно-ориентированный язык – мог бы стать идеальным инструментом для решения подобных задач, если бы не его сравнительно низкая скорость выполнения программ. К слову, этот язык Бьярне использовал еще во время написания своей диссертации в Кембридже – там он разрабатывал симулятор распределенных систем.

До этого в сферу интересов Страуструпа не входила разработка языков программирования. Его интересовало микропрограммирование, операционные системы, архитектура вычислительных машин, разработка виртуальных машин. Правда, еще до окончания университета он успел изучить двадцать языков программирования. Но несмотря на это, Бьярне утверждает, что большого интереса к языкам он все-таки не испытывал.

Тем не менее, Страуструп принял решение начать работу над новым языком программирования.

Если вам приходится выбирать между написанием «хорошего» и «быстрого» кода, значит, здесь что-то не так. Потому что «хороший» код должен быть «быстрым», – объясняет Страуструп свою позицию в интервью.

Так был создан язык программирования С++, первоначально получивший название «Си с классами» (С with classes). Название «С++» придумал Рик Мэсчитти. «++» — это оператор инкремента в С, который как бы намекает на то, что язык С++, нечто больше, чем просто С.

В 1983 году язык подвергся значительным изменениям. Страуструп разработал свой язык таким образом, чтобы код не компилировался в машинный язык, а преобразовывался в набор команд препроцессора языка С. Это открывало к нему доступ сотням тысяч С-программистов, имевших соответствующий компилятор.

В 1984 году Bell Labs была реорганизована и получила название AT&Т Bell Labs. Первыми, кому фирма предложила С++, причем практически бесплатно, стали университеты.

В 1985 году Страуструп опубликовал одну из самых широко известных книг «Язык программирования С++», которая выдержала четыре издания (1985, 1991, 1997, 2000), и была переведена на 19 языков.

Как пишет Том Даффи: «Множество открытий обязаны своим происхождением случаю. Но есть и немало других, которые стали возможны благодаря кропотливой работе и предвидению. Язык программирования С++, впервые предложенный лабораторией Bell Labs университетам в 1985 году, безусловно относится ко второй категории».

Формирование сообщества

Язык быстро нашел свою аудиторию. В 1987 году на конференции по С++ собралось 200 человек. На следующий год число участников возросло до 600, а в начале 90-х годов число разработчиков на С++ приближалось к 500 тысячам. Это сделало данный язык мировым лидером по скорости распространения.

В 1990 году вышла очередная книга Страуструпа – «Справочное руководство по языку программирования С++ с комментариями» (The Annotated C++ Reference Manual), которая в дальнейшем была удостоена награды за непревзойдённое мастерство в области технической документации по мнению журнала Dr. Dobb’s Journal.

Кроме того, по версии журнала Fortune magazine Страуструп был признан одним из «двенадцати лучших молодых американских учёных».

Страуструп тем временем продолжал работать в AT&Т Bell Labs, где возглавлял подразделение широкомасштабных программных исследований, активно занимался совершенствованием своего языка и созданием его стандарта. Стандарт ANSI/ISO С++ был выпущен в 1999 году.

Страуструп был главой отдела исследований программирования в Bell Labs с 1995 по 2002 год.

Бьярне Страуструп – о C/С++

«Я придумал C++, записал его первоначальное определение и выполнил первую реализацию. Я выбрал и сформулировал критерии проектирования C++, разработал его основные возможности и отвечал за судьбу предложений по расширению языка в комитете по стандартизации C++, – писал его автор. – Язык C++ многим обязан языку C, и язык C остается подмножеством языка C++ (но в C++ устранены несколько серьезных брешей системы типов C). Я также сохранил средства C, которые являются достаточно низкоуровневыми, чтобы справляться с самыми критическими системными задачами. Язык C, в свою очередь многим обязан своему предшественнику – BCPL».

В 2003 году в интервью Страуструп рассказал о своем отношении к проблемам совместимости С и С++:

Я думаю, что существующие проблемы несовместимости С и С++ – самое ужасное, что могло произойти в истории этих языков. В идеале эти языки нужно объединить. И мне кажется, это технически реализуемо только при условии внесения изменений в оба языка. Однако из-за нежелания вносить эти изменения языки продолжают отдаляться друг от друга, отравляя жизнь практически каждому C- и С++-разработчику.

Я пытаюсь заставить людей увидеть положительные стороны в объединении. Я написал серию статей на эту тему. Но кто-то заинтересован в том, чтобы этого не произошло. Кроме того, я не вижу большого интереса и со стороны сообщества. Наверное, большинство, как обычно, надеется на то, что все «само рассосется».

После AT&Т Bell Labs


С 2002 года Бьярне является профессором техасского университета A&M (Texas A&M University). Он проработал в индустрии почти в четверть века, поэтому ему есть, что сказать студентам.

Кроме того, он сотрудничает с Колумбийским университетом как приглашенный педагог-профессор компьютерных наук.

В 2014 году Бьярне предложил работу один из крупнейших финансовых конгломератов мира – Morgan Stanley.

Страуструп начал сотрудничать с этой фирмой, так как решил вернутся из сферы чистой педагогики к решению реальных проблем. Его огромный опыт оказался полезен банку Morgan Stanley при решении вопросов, связанных с производительностью, надежностью и безопасностью.

Кроме того, он хотел переехать в Нью-Йорк, чтобы быть ближе к детям и внукам.

Бьярне Страуструп был избран членом Национальной Академии Инженерии в США («National Academy of Engineering») в 2004 году с формулировкой «за создание языка С++». Как первый компьютерный учёный, он получил награду («William Procter Prize for Scientific Achievement from Sigma Xi») американского научно-исследовательского сообщества в 2005 году. Он также получил награду компьютерного сообщества IEEE «за начало разработки и коммерциализации объектно-ориентированной технологии создания программ и за большие изменения, внесённые в бизнес и индустрию».

Проблема с программированием / Блог компании Проектная школа программирования GoTo / Хабр

Статья 2006 года.

Бьёрн Страуструп, изобретатель языка программирования C++, защищает свое наследие и рассказывает, что не так с большей частью программного кода.

В 1980-х и 90-х годах Бьёрн Страуструп разработал и внедрил язык программирования C++, который популяризировал объектно-ориентированное программирование и повлиял на многие другие языки программирования, включая Java.

C++ остается архетипическим «высокоуровневым» компьютерным языком (то есть языком, который сохраняет особенности естественного, человеческого языка), и он по-прежнему используется миллионами программистов. Многие из систем и приложений эры ПК и интернета были написаны на C++. Несмотря на это, язык остается спорным, во многом потому что его, как известно, трудно изучать и использовать, а также потому, что дизайн Страуструпа позволяет разработчикам допускать серьезные ошибки программирования в интересах сохранения их свободы.

Страуструп, на протяжении многих лет работающий в AT&T Bell Labs, теперь является профессором компьютерных наук на факультете инженерии в Техасском университете A&M, недалеко от Хьюстона.

Технологический обзор: почему большая часть программного обеспечения настолько плоха?

Бьёрн Страуструп: Некоторые программы на самом деле довольно хороши по любым стандартам. Подумайте о Mars Rovers, Google и проекте “Геном человека”. Это качественное программное обеспечение! Пятнадцать лет назад большинство людей, и в частности большинство экспертов, сказали бы, что каждый из этих примеров невозможен. Наша технологическая цивилизация зависит от программного обеспечения, поэтому, если бы программное обеспечение было бы в действительности таким же плохим, как и его наихудшая репутация, большинство из нас уже были бы мертвы.


С другой стороны, просмотр «типичных» фрагментов кода может заставить меня плакать. Структура ужасающая, и программисты явно не задумывались над правильностью, алгоритмами, структурами данных или ремонтопригодностью. Большинство людей на самом деле не читают код; они просто видят, что Internet Explorer «тормозит».

Я думаю, что реальная проблема заключается в том, что «мы» (то есть разработчики программного обеспечения) находимся в постоянном чрезвычайном положении, хватаясь за соломинку, чтобы выполнить нашу работу. Мы выполняем много маленьких чудес посредством проб и ошибок, чрезмерного использования грубой силы и многих испытаний, но зачастую этого недостаточно.

Разработчики программного обеспечения стали мастерами в сложном искусстве создания достаточно надежных систем из ненадежных частей. Проблема в том, что часто мы не знаем точно, как мы это сделали: система просто «превратилась» в нечто минимально приемлемое. Лично я предпочитаю знать, когда система будет работать, и почему она будет это делать.

Технологический обзор: Как мы можем исправить беспорядок, в котором мы находимся?

Бьёрн Страуструп: Теоретически ответ прост: получше обучите наших разработчиков программного обеспечения, используйте более подходящие методы проектирования и используйте гибкий дизайн, мысля в долгосрочной перспективе. Вознаграждайте правильные, надежные и безопасные системы. Наказывайте за неряшливость.

На самом деле это невозможно. Люди вознаграждают разработчиков, чье программное обеспечение дешево, имеет баги и выпущено первым. Все потому что людям нужны новые гаджеты. Им не нужны неудобства, они не хотят изучать новые способы взаимодействия со своими компьютерами, не хотят задержек в доставке и не хотят платить за качество (если только это не очевидно, хотя чаще всего даже тогда не хотят). И без реальных изменений в поведении пользователей поставщики программного обеспечения вряд ли изменятся.

Мы не можем просто остановить мир на десятилетие, пока мы перепрограммируем все, начиная от наших кофе-машин и заканчивая нашими финансовыми системами. С другой стороны, продолжать действовать наобум дорого, опасно и удручающе. Необходимы значительные улучшения, и они могут появиться только постепенно. Они должны прийти на широкий фронт; лишь одного изменения недостаточно.

Одна из проблем заключается в том, что «академические дымовые трубы» мешают: слишком много людей продвигают какую-то область как панацею. Более эффективные методы проектирования могут помочь, лучшие методы спецификации могут помочь, лучшие языки программирования могут помочь, лучшие технологии тестирования могут помочь, лучшие операционные системы могут помочь, улучшение инфраструктуры среднего уровня, лучшее понимание областей приложений может помочь, лучшее понимание структур данных и алгоритмов могут помочь — и так далее. Например, теория типов, модельная разработка и формальные методы могут, несомненно, оказать значительную помощь в некоторых областях, но продвигаются они лишь как решение для исключения других подходов, каждый из которых гарантирует отказ в крупномасштабных проектах. Люди продвигают то, что знают, и то, что они видели; как иначе? Но только некоторые люди обладают технической зрелостью, чтобы сбалансировать требования и ресурсы.

Технологический обзор: Идея, лежащая в основе C++, заключалась в том, что программисты будут работать более активно в обмен на более эффективный код. Bell Labs захотели использовать язык, который несколько действительно умных людей будут использовать для написания кода, работающего на таких компьютерах, как Electronic Switching Systems (ESS), которые были не очень быстрыми. Сегодня очень много быстрых компьютеров и много разработчиков программного обеспечения. Означает ли это, что это сводит на нет всю суть C++?

Бьёрн Страуструп: C++ не был разработан специально для больших коммутационных аппаратов, он был разработан для огромного спектра приложений. Bell Labs была домом для невероятного спектра интересных проектов, охватывающих все масштабы и использующих практически все виды компьютеров и операционных систем. Но да, среднестатистический программист Bell Labs был значительно более способным в сравнении с мнением большинства людей о «среднестатистическом программисте», а надежность и производительность (в этом порядке) считались значительно более важными, чем в большинстве других мест.

Производительность по-прежнему остается проблемой во многих приложениях, которые меня интересуют: быстрота реагирования интерфейсов, время запуска и закрытия приложений. Разработчики программного обеспечения нейтрализуют поразительную производительность современного компьютерного оборудования, добавляя избыточные (программные) абстракции слой за слоем. Похоже, что мы столкнулись с ограничениями линейного ускорения для аппаратного обеспечения, но во многих случаях мы могли выиграть пару порядков величин у программного обеспечения.

Тем не менее, C++ действительно стал слишком «дружелюбным по отношению к экспертам» в то время как уровень эффективного формального образования среднестатистического разработчика программного обеспечения снизился. Тем не менее, решение заключается не в том, чтобы упростить до абсурда языки программирования, а в том, чтобы использовать различные языки программирования и обучать больше экспертов. Этим экспертам нужно использовать какие-то языки, а C++ — один из этих языков.

Технологический обзор: В ретроспективе, при проектировании C++, не было ли ваше решение обменять эффективность программного обеспечения, его безопасность и надежность на производительность кода во время выполнения, фундаментальной ошибкой?

Бьёрн Страуструп: Ну, я не думаю, что я сделал такой обмен. Я хочу элегантный и эффективный код. Иногда я это понимаю. Эти дихотомии (между эффективностью и правильностью, эффективностью и временем программиста, эффективностью по сравнению с высоким уровнем и т. д.) являются фиктивными.

То, что я действительно делал, — это разработал C++, как прежде всего язык системного программирования: я хотел иметь возможность писать драйверы устройств, встроенные системы и другой код, который должен был использовать непосредственно. Затем я хотел, чтобы C++ был хорошим языком для разработки инструментов. Это требовало гибкости и производительности, а также способности выразить элегантные интерфейсы. Мое мнение заключалось в том, что для создания более высокого уровня, для создания полных приложений вам сначала нужно было покупать, строить или заимствовать библиотеки, предоставляющие соответствующие абстракции. Часто, когда у людей возникают проблемы с C++, реальная проблема заключается в том, что у них нет соответствующих библиотек или они не могут найти доступные библиотеки.

Другие языки пытались более непосредственно поддерживать приложения высокого уровня.

Это работает, но часто эта поддержка стоит за счет специализации. Лично я не стал бы разрабатывать инструмент, который мог бы делать только то, что я хотел — я стремлюсь к общности.

Технологический обзор: Как вы объясняете тот факт, что C++ широко критикуется и многими программистами, но в то же время очень широко используется? Почему этот язык настолько успешен?

Бьёрн Страуструп: Ответ прост: есть только два вида языков: те, на которые жалуются все, и те, которые никто не использует.

Есть более полезные системы, разработанные на языках, которые считаются ужасными, чем на языках, которые хвалили за то, что они красивы — и многое другое. Цель языка программирования — помочь создать хорошие системы, где «хорошее» можно определить разными способами. Мое краткое определение: что-то правильное, поддерживаемое и достаточно быстрое. Эстетика имеет значение, но в первую очередь язык должен быть полезен; он должен позволить программистам этого мира выражать реалистичные идеи лаконично и недорого.

Основная причина успеха C++ заключается в том, что он отвечает ограниченным целям дизайна: он может эффективно выражать огромный спектр идей напрямую.

C++ не был предназначен для того, чтобы делать только одну вещь действительно хорошо или не позволять людям делать вещи, которые считаются «плохими». Вместо этого я сосредоточился на общности и производительности.

Я уверен, что на каждого программиста, который не любит C++, найдется тот, кому этот язык нравится. Однако мой друг отправился на конференцию, где основной докладчик попросил аудиторию продемонстрировать, поднимая руки: первое, сколько людей не любили C++, и второе, сколько людей написали программу на C++. В первой группе было вдвое больше людей, чем во второй. Выражение неприязни к чему-то, чего вы не знаете, обычно называют предрассудками. Кроме того, те, кто жалуются, всегда громче и увереннее, чем сторонники — разумные люди признают недостатки. Я думаю, что я знаю больше о проблемах с C++, чем о ком-либо вообще, но я также знаю, как их избежать и как использовать сильные стороны этого языка.

И, конечно, вы не ожидаете, что сторонники языков, которые проиграли в соревновании с C++, будут вежливы по отношению к этому факту. Разработка программного обеспечения не имеет такой степени профессионализма, хотя я надеюсь, что в конечном итоге это произойдет. В этом отношении наука отличается: когда выигрывает новый инструмент, техника или теория, люди видят это как прогресс. В программном обеспечении вклад конкурентов и предшественников не получил широкого признания, оценки или даже понимания.

Технологический обзор: В “Дизайне и эволюции C++” вы утверждаете, что Кьеркегор оказал влияние на вашу концепцию языка. Это шутка?

Бьёрн Страуструп: Возможно немного претенциозное заявление, но не шутка. Многие размышления о разработке программного обеспечения сосредоточены на группе, команде, компании. Это часто делается до такой степени, что человек полностью погружен в корпоративную «культуру» без выхода для уникальных талантов и навыков. Корпоративная практика может быть враждебной по отношению к людям с исключительными навыками и инициативой по техническим вопросам. Я считаю такое управление технарями жестоким и расточительным. Кьеркегор был сильным сторонником индивидуума против «толпы» и серьезно поднял вопрос важности эстетики и этического поведения. Я не мог указать на конкретную особенность языка и сказать: «Видите, есть влияние философа девятнадцатого века», но он является одним из корней моего нежелания устранять «уровень экспертного уровня», отменять «злоупотребление» и ограничивать возможности поддержки только тех приложений, которые, как я знаю, будут полезными. Тем не менее, я не особенно люблю религиозную философию Кьеркегора.

Технологический обзор: О чем вы жалеете больше всего?

Бьёрн Страуструп: Ни о чем не жалею! Ну, конечно, я мечтаю о том, что я мог бы сделать по-другому и лучше, но серьезно, кто я такой, чтобы переоткрыть, скажем, винтаж Бьёрна 1984 года? Возможно, он был менее опытным, чем я, но он был не менее умным, вероятно, умнее, и он лучше понимал слова 1984 года, чем я. C++ используется для создания многих систем, которые улучшают нашу жизнь, и это оказало значительное положительное влияние на более поздние языки и системы. Это то, чем можно гордиться.

Книга «Программирование. Принципы и практика использования C++»

Добавить

  • Читаю
  • Хочу прочитать
  • Прочитал

Бьярне Страуструп

Оцените книгу

Скачать книгу

2061 скачивание

Читать онлайн

3 планируют прочитать

О книге «Программирование. Принципы и практика использования C++»

Вводный курс программирования, написанный автором языка C++. Подготовка к созданию реальных программ. Автор книги полагает, что читатели в конце концов начнут писать нетривиальные программы либо в качестве профессиональных разработчиков программного обеспечения, либо в качестве программистов, работающих в разных областях науки и техники. Упор на основные концепции и методы. Основные концепции и методы программирования в книге излагаются глубже, чем это принято в традиционных вводных курсах. Это позволит читателям разрабатывать полезные, правильные, понятные и эффективные программы. Программирование на современном языке C++. Книга представляет собой введение в программирование вообще, включая объектно-ориентированное и обобщенное программирование. Она также представляет собой прекрасное введение в язык C++, один из наиболее популярных языков программирования в современном мире. В книге описаны современные методы программирования на C++, включая стандартную библиотеку, позволяющую упростить программирование. Для начинающих программистов и всех, кто хочет научиться программировать. Книга предназначена в основном для людей, никогда ранее не программировавших. Она опробована более чем тысячей студентов университета. Однако опытные программисты и студенты, уже изучившие основы программирования, также найдут в книге много полезной информации, которая позволит им перейти на более высокий уровень мастерства. Широкий охват тем. Первая половина книги охватывает широкий спектр основных понятий, методов проектирования и программирования, свойств языка C++ и его библиотек. Это позволит читателям писать программы, выполняющие ввод и вывод данных, вычисления и построение простых графических изображений. Во второй половине рассматриваются более специализированные темы, такие как обработка текста и тестирование. В ней содержится много справочного материала. Исходные коды и другие приложения читатели могут найти на веб-сайте автора.

На нашем сайте вы можете скачать книгу «Программирование. Принципы и практика использования C++» Бьярне Страуструп бесплатно и без регистрации в формате pdf, читать книгу онлайн или купить книгу в интернет-магазине.

Отзывы читателей

Подборки книг

Похожие книги

Популярные книги жанра «Программирование»

Информация обновлена:

Программирование. Принципы и практика с использованием C++, 2-е издание

Автор: Бьерн Страуструп
Год: 2015
ISBN: 978-5-8459- 1 949-6
Издательство: Вильямс
Страниц: 1328
Язык: Русский
Формат: PDF
Размер: 72 Mb

Описание: Эта книга не является учебником по языку C++, это учебник по программированию. Несмотря на то что ее автор — автор языка С++, книга не посвящена этому языку программирования; он играет в книге сугубо иллюстративную роль. Автор задумал данную книгу как вводный курс по программированию. Поскольку теория без практики совершенно бессмысленна, такой учебник должен изобиловать примерами программных решений, и неудивительно, что автор языка C++ использовал в книге свое детище.
В книге в первую очередь описан широкий круг понятий и приемов программирования, необходимых для того, чтобы стать профессиональным программистом, и в гораздо меньшей степени — возможности языка программирования C++.
В первую очередь, книга адресована начинающим программистам и студентам компьютерных специальностей, которые найдут в ней много новой информации, и смогут узнать точку зрения создателя языка С++ на современные методы программирования.
Если вы решили стать программистом, и уже знакомы с азами C++ — эта книга для вас, в первую очередь потому, что программирование — это не только, и не столько знание инструмента (языка программирования C++), сколько понимание самого процесса. Автор недаром не ограничился своим первоклассным (но ни в коей мере не являющимся учебником для программистов без большого практического опыта) трудом Язык программирования C++.
Проводя грубую аналогию — виртуозное владение топором никого не делало настоящим плотником. Бьярне Страуструп в очередной раз приходит на помощь программистам — создав уникальный язык программирования, он не ограничивается им и рассказывает о том, как правильно им воспользоваться, даже не зная все его тонкости и возможности.
Основные темы книги:

  • Подготовка к созданию реальных программ. Автор книги предполагает, что читатели в конце концов начнут писать нетривиальные программы либо в качестве профессиональных разработчиков программного обеспечения, либо в качестве программистов, работающих в других областях науки и техники.
  • Упор на основные концепции и методы. Основные концепции и методы программирования в книге излагаются глубже, чем это принято в традиционных вводных курсах. Этот подход дает основательный фундамент для разработки полезных, правильных, понятных и эффективных программ.
  • Программирование на современном языке С++ (C++11 и C++14). Книга представляет собой введение в программирование, включая объектно-ориентированное и обобщенное программирование. Одновременно она представляет собой введение в язык С++, один из широко применяющихся языков программирования в современном мире. В книге описаны современные методы программирования на С++, включая стандартную библиотеку и возможности C++11 и C++14, позволяющие упростить программирование.

Для начинающих программистов и всех, кто хочет научиться программировать. Книга предназначена в основном для людей, никогда ранее не программировавших, и опробована на более чем тысяче студентов университета. Однако и опытные программисты, и студенты, уже изучившие основы программирования, найдут в книге много полезной информации, которая позволит им перейти на еще более высокий уровень мастерства.
Широкий охват тем. Первая половина книги охватывает широкий спектр основных понятий, методов проектирования и программирования, свойств языка С++ и его библиотек. Это позволит читателям писать программы, выполняющие ввод и вывод данных, вычисления и построение простых графических изображений. Во второй половине рассматриваются более специализированные темы (такие как обработка текста, тестирование и язык C). В книге содержится много справочного материала. Исходные тексты программ и иные материалы читатели могут найти на веб-сайте автора.

Домашняя страница Бьярна Страуструпа

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

Я технический сотрудник и управляющий директор технологического отдела
Морган Стенли
в Нью-Йорке
и приглашенный профессор компьютерных наук в
Колумбийский университет.

Я разработал и реализовал
язык программирования C ++.
Чтобы сделать C ++ стабильной и современной базой для разработки реального программного обеспечения, я придерживался его стандартов ISO почти 30 лет (пока).

  • Знакомство с C ++ (2-е издание) (краткое — 240 страниц — экскурсия по языку программирования C ++ и его стандартной библиотеке для опытных программистов)
  • Язык программирования C ++ (4-е издание) (исчерпывающее описание языка программирования C ++, его стандартной библиотеки и основных методов для опытных программистов)
  • Программирование: принципы и практика с использованием C ++ (2-е издание) (учебник по программированию, предназначенный для начинающих, которые хотят со временем стать профессионалами)
  • Дизайн и эволюция C ++ (книга, в которой представлены обоснование и критерии разработки C ++ и его эволюция до 1994 года).
  • Исследования и популярные статьи
  • Технические отчеты и предложения по стандарту ISO C ++
  • Видео
  • Интервью
  • Биографические материалы,

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

.

Программирование — Принципы и практика использования C ++ (второе издание)

Страуструп: Программирование — принципы и практика использования C ++ (второе издание)

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

Аддисон-Уэсли ISBN 978-0321-992789.Май 2014.

Заказывайте прямо у издателя!

Изменено 5 августа 2020 г.

Эстонский перевод этой страницы.

Это введение в программирование для людей, которые никогда раньше не программировали.
Также будет полезно людям, которые немного запрограммировали и хотят улучшить
их стиль и технику — или просто изучите современный C ++.
Он разработан для использования в классе, но написан с прицелом на самостоятельное изучение.Более ранние версии этой книги
были использованы в качестве основы для первых классов программирования по электротехнике,
студенты компьютерной инженерии и информатики в Техасском университете A&M
уже почти десять лет и во многих других местах.

Вот несколько образцов

PPP2 получил редкую награду Jolt Productivity. от доктора Добса.


Вы можете найти
подставка для книги.
Этот сайт в первую очередь ориентирован на педагогов (это ведь учебник).


Это второе издание переведено на японский и китайский языки.
Если вам известны другие переводы, пожалуйста, отправьте мне информацию о них.

Переводы
первая редакция ГЧП:
Польский,
Китайский упрощенный),
Китайское издание на английском языке,
Французский язык,
Русский,
Корейский,
Японский,
Португальский,
Китайский (традиционный),
Казахский.


Введение в программирование изобретателя C ++

  • Подготовка к программированию в реальном мире
    Книга предполагает, что вы в конечном итоге стремитесь писать нетривиальные программы, будь то для работы в разработке программного обеспечения или в какой-либо другой технической области.
  • Акцент на фундаментальные концепции и методы
    Книга объясняет фундаментальные концепции и методы более глубоко, чем традиционные введения. Такой подход даст вам прочную основу для написания полезного, правильного, поддерживаемого и эффективного кода.

  • Программирование с использованием современного C ++ (C ++ 11 и C ++ 14)
    Книга представляет собой введение в программирование в целом, включая объектно-ориентированное программирование и универсальное программирование.Это также хорошее введение в язык программирования C ++, один из наиболее широко используемых языков для реального программного обеспечения. В книге с самого начала представлены современные методы программирования на C ++, представлена ​​стандартная библиотека C ++ и функции C ++ 11 и C ++ 14 для упрощения задач программирования.

  • Для начинающих и всех, кто хочет узнать что-то новое
    Книга предназначена в первую очередь для людей, которые никогда раньше не программировали, и она была протестирована на многих тысячах студентов первого курса университетов.Он также широко использовался для самообучения. Кроме того, практикующие и продвинутые студенты получили новое понимание и руководство, увидев, как мастер подходит к элементам своего искусства.

  • Широкий обзор
    Первая половина книги охватывает широкий спектр основных концепций, методов проектирования и программирования, языковых функций и библиотек. Это позволит вам писать программы, включающие ввод, вывод, вычисления и простую графику. Вторая половина исследует более специализированные темы (такие как обработка текста, тестирование и язык программирования C) и предоставляет обширный справочный материал.Исходный код и вспомогательные приложения доступны на сайте автора.

ОБ АВТОРЕ
Бьярн Страуструп — разработчик и первоначальный разработчик C ++ и автор языка программирования C ++ (Addison-Wesley). Он является управляющим директором технологического подразделения Morgan Stanley, приглашенным профессором Колумбийского университета, заслуженным профессором-исследователем Техасского университета A&M и членом Национальной инженерной академии США.Прежде чем перейти в академическую среду, он несколько десятилетий работал в AT&T Bell Labs. Он является одним из основателей комитета стандартов ISO C ++.

informit.com/aw
www.stroustrup.com/Programming

Информация о
первая редакция ГЧП
включает информацию о переводах.

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

.

Страуструп: публикации

Страуструп: публикации

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

Изменено 18 июня 2020 г.

Вот достаточно полный список моих публикаций в обратном хронологическом порядке.Если вам известны переводы, интервью и т. Д., Которые я пропустил, пожалуйста
напишите мне ссылку (Bjarne at Stroustrup dot com).

Помимо традиционных бумаг у меня есть:

  • Интервью.
    Многие из этих интервью написаны и обширны;
    многие из них публикуются в журналах или в виде глав в книгах.
    Раньше я перечислял их как публикации, но поддерживал по две записи для каждого
    и решать, какие публикации являются «качественными», стало утомительно.
  • Книги
    (включая обзоры, образцы глав, исправления и другую вспомогательную информацию).
    Каждая книга также указана в соответствующем хронологическом месте в этом списке.
    У меня есть коллекция обложек.
  • Технические отчеты
    что я являюсь автором или соавтором комитета стандартов ISO C ++.

Обратный хронологический список публикаций:

  • Бьярне Страуструп:
    Процветание в многолюдном и меняющемся мире: C ++ 2006-2020.ACM / SIGPLAN Конференция по истории языков программирования, HOPL-IV.
    Лондон.
    Июнь 2020.
    Все статьи HOPL-4 размещены как
    Труды ACM по языкам программирования Vol. 4.

  • Бьярне Страуструп:
    О значении C ++ 20.
    isocpp.com
    Февраль 2020.

  • Б. Страуструп:
    Экскурсия по C ++ (второе издание).
    ISBN 978-0134997834.
    Эддисон-Уэсли.
    Июль 2018 г.

    Корейский перевод. AcornPub.co.kr. ISBN 978-89-6077-566-4.

  • Б. Страуструп: Речь о вручении премии Чарльза Старка Дрейпера.
    Журнал НАЭ
    Мост.
    Лето 2018.
    Видео с мероприятия.
    Моя благодарственная речь начинается в 14:30.
  • Б. Страуструп: Концепции: будущее универсального программирования (или «Как разрабатывать хорошие концепции и правильно их использовать)».
    Январь 2017 г.
  • Б. Страуструп, Х. Саттер и Г. Дос Рейс: Краткое введение в модель C ++ для обеспечения безопасности типов и ресурсов.Isocpp.org.
    Октябрь 2015 г. Исправлено в декабре 2015 г.
  • Дж. Даниэль Гарсия и Б. Страуструп: Повышение производительности и ремонтопригодности за счет рефакторинга в
    С ++ 11.
    Isocpp.org.
    Август 2015 г.
  • Б. Страуструп: Пять популярных мифов о C ++
    Французский перевод.
    Isocpp.org.
    Декабрь 2014 г.
  • Б. Страуструп:
    Программирование — принципы и практика использования C ++ (второе издание).
    Май 2014.
    Эддисон-Уэсли. ISBN 978-0321992789.PPP2 получил редкую награду Jolt Productivity. от доктора Добса.
    Русский перевод в процессе. Издательство Уильямс.
    Японский перевод ASCII Dwango. ISBN 1923004070000.

  • Юрий Солодкий, Габриэль дос Рейс и Бьярне Страуструп:
    Открытое сопоставление шаблонов для C ++.
    ACM GPCE’13.
  • Бьярне Страуструп:
    Знакомство с C ++.
    Эддисон Уэсли. ISBN 978-0321958310.
    Сентябрь 2013.

    Доступен как электронная книга, так и в бумажном виде от издателя
    .Итальянский перевод. Пирсон Италия. ISBN 9799965-184493. 2014 г.
    Немецкий перевод. Hanser Fachbuch. 9783446-439627. 2015 г.
    Китайский перевод (упрощенный). Машинный пресс Китая. ISBN 9-787111-498124. 2015 г.
    Японский перевод. SBCreative. ISBN 1920055022002.

  • Бьярне Страуструп:
    Язык программирования C ++ (4-е издание).
    Эддисон-Уэсли. ISBN 978-0321563842.
    Май 2013.

    Доступен как электронная книга, так и в бумажном виде от издателя
    Немецкий перевод.Hanser Fachbuch. 2015. ISBN 978-3-446-43981-8.
    Японский перевод. SB Creative. 2015 г.
    Корейский перевод. AcornPub. ISBN 978-89-6077-2.

  • Ю. Солодкий, Г. Дос Рейс, Б. Страуструп:
    Открытый и эффективный переключатель типов для C ++.
    Proc. ОПСЛА’12.

  • А. Кумар, А. Саттон и Б. Страуструп:
    Омолаживающие макросы как объявления C ++ 11.
    Proc. 28-я Международная конференция IEEE по
    Сопровождение программного обеспечения.
    Сентябрь 2012 г.

  • Бьярне Страуструп:
    Основы C ++.Proc. 22-й Европейский симпозиум по программированию (ESOP).
    Спрингер LNCS 7211.
    Апрель 2012 г.

  • Бьярне Страуструп:
    Разработка программного обеспечения для инфраструктуры.
    Компьютер, т. 45, нет. 1, стр. 47-58, январь 2012 г., DOI: 10.1109 / MC.2011.353.
    Видеоинтервью об этой газете и
    видео беседы на очень похожую тему (это 90-минутная беседа с вопросами и ответами).
  • Габриэль дос Рейс и Бьярн Страуструп:
    Принципиальное, полное и эффективное представление C ++.Журнал математики в компьютерных науках, том 5, выпуск 3 (2011), стр. 335-356
    DOI: 10.1007 / s11786-011-0094-1.
    Специальный выпуск по решению полиномиальных систем, системам и управлению и программному обеспечению.

  • Эндрю Саттон и Бьярн Страуструп:
    Дизайн концептуальных библиотек для C ++.
    Proc. SLE 2011 (Международная конференция по разработке языков программного обеспечения). Июль 2011 г.

  • Питер Пиркельбауэр, Дамиан Дечев и Бьярн Страуструп:
    Поддержка развития универсальных функций C ++.3-я Международная конференция по разработке языков программного обеспечения.
    Октябрь 2010 г.

  • Дамиан Дечев, Питер Пиркельбауэр и Бьярн Страуструп:
    Понимание и эффективное предотвращение проблемы ABA в проектах без блокировки на основе дескрипторов.
    13-й симпозиум IEEE Computer Society ISORC 2010.
    Май 2010 г.

  • Габриэль дос Рейс и Бьярн Страуструп:
    Общие константные выражения для языков системного программирования.
    САК-2010. 25-й симпозиум ACM по прикладным вычислениям.Март 2010 г.

  • Питер Перкельбауэр, Дамиан Дечев и Бьярн Страуструп:
    Обновление исходного кода — это не рефакторинг.
    SofSem 2010. 36-я международная конференция, посвященная современным тенденциям в теории и практике информатики.
    Январь 2010 г.

  • Бьярне Страуструп:
    Чему мы должны учить разработчиков программного обеспечения? Почему?
    CACM.
    Январь 2010 г.
    Японский перевод Казутоши Сатоды.
    Испанский перевод Эдуардо Дас.
    Китайский перевод.
  • Габриэль дос Рейс и Бьярн Страуструп:
    Принципиальное, полное и эффективное представление C ++.
    Proc. Совместная конференция ASCM 2009 и MACIS 2009.
    Лекционная записка Совета Европы, том. 22, pp. 407-421;
    Декабрь 2009 г.

  • Дэн Цафрир, Роберт В. Вишневски, Дэвид Ф. Бэкон и Бьярн Страуструп:
    Минимизация зависимостей в общих классах для более быстрых и небольших программ.
    ACM OOPSLA’09.
    Октябрь 2009 г.

  • Дамиан Дечев и Бьярн Страуструп:
    Масштабируемые неблокирующие параллельные объекты для критически важного кода.ACM OOPSLA’09.
    Октябрь 2009 г.

  • Бьярне Страуструп:
    Что такое C ++ 0x ?.
    CVu.
    Том 21, выпуски 4 и 5.
    2009 г.

  • Бьярне Страуструп:
    Решение C ++ 0x «Удалить концепции».
    Журнал доктора Добба.
    Июль 2009 г.
    Переиздано с разрешения в Overload Journal, Vol 92. Август 2009 г.

  • Дамиан Дечев и Бьярн Страуструп:
    Надежная и эффективная одновременная синхронизация для встроенного программного обеспечения реального времени.Proc. 3-я Международная конференция IEEE по проблемам космических полетов для информации
    Технология (IEEE SMC-IT).
    Июль 2009 г.

  • Петер Пиркельбауэр, Юрий Солодкий, Бьярне Страуструп:
    Разработка и оценка открытых мульти-методов C ++.
    В области компьютерного программирования (2009 г.).
    Elsevier Journal.
    Июнь 2009 г.
    DOI: 10.1016 / j.scico.2009.06.002.

  • Питер Пиркельбауэр, Шон Родитель, Мэт Маркус, Бьярн Страуструп:
    Выбор динамического алгоритма для концепций среды выполнения .В области компьютерного программирования (2009 г.).
    Elsevier Journal.
    Июнь 2009 г.
    DOI: 10.1016 / j.scico.2009.04.002.

  • Шон Родитель и Бьярн Страуструп:
    Приложение B: Язык программирования.
    У Александра Степанова и Пола МакДжонса:
    Элементы программирования.
    Эддисон-Уэсли.
    ISBN 978-0321635372.
    Июнь 2009 г.

  • Бьярне Страуструп:
    Программирование в программе бакалавриата CS.
    WCCCE’09.
    Май 2009 г.

  • Дамиан Дечев, Николя Рукетт, Питер Пиркельбауэр и Бьярн Страуструп:
    Методы программирования и проверки надежного автономного программного обеспечения, ориентированного на достижение целей.Глава книги в автономной коммуникации,
    Василакос, А .; Parashar, M .; Karnouskos, S .; Pedrycz, W. (Ред.),
    ISBN: 978-0-387-09752-7, Springer.
    Май 2009 г.

  • Дамиан Дечев, Питер Пиркельбауэр, Николя Рукетт и Бьярн Страуструп:
    Семантически улучшенные контейнеры для параллельных систем реального времени.
    Proc. 16-я ежегодная международная конференция и семинар IEEE
    по проектированию компьютерных систем (IEEE ECBS).
    Апрель 2009 г.

  • Дамиан Дечев и Бьярн Страуструп:
    Сертификация на основе модели, ориентированная на продукт.Proc. 16-й ежегодной международной конференции и семинара IEEE по
    Инженерия компьютерных систем (IEEE ECBS).
    Апрель 2009 г.

  • Бьярне Страуструп:
    Программирование — принципы и практика использования C ++.
    Эддисон-Уэсли. ISBN 978-0321543721. Декабрь 2008 г.
    Сайт поддержки педагогов.
    Польский перевод. Helion.pl. 2010. ISBN 978-83-246-2233-7.
    Немецкий перевод. Pearson Studium. 2010. ISBN 978-3-86894-005-3.
    Китайский перевод: China Machine Press.2010. ISBN: 9787111303220.
    Китайское издание на английском языке: China Machine Press 2010. ISBN 978-7-111-28248-8.
    Французский перевод. Pearson Educational France. 2010. ISBN 978-2-7440-7442-4.
    Русский перевод. Издательство Уильямс. 2010. ISBN 978-5-8459-1621-1.
    Корейский перевод. Pearson Education Korea Ltd и Dae Woong Publishing Co. 2010. ISBN 978-8-98604-480-5.
    Японский перевод. Shoeisha Company Ltd. 2011. ISBN 978-4798119595.
    Перевод на португальский. Книжник Издательство.2012. ISBN 987-85-7780-958-5.
    Китайский перевод (традиционный). GrandTech Information Co. 2012. ISBN 978-986-2571-85-9.
    Казахский перевод. 2013. ISBN 978-601-217-406-9.
    Греческий перевод в стадии реализации.

  • Дамиан Дечев, Раби Махапатра и Бьярн Страуструп:
    Практичный и проверяемый C ++ Dynamic Cast для систем жесткого реального времени.
    Журнал вычислительной науки и техники (JCSE), Vol. 2, No. 4, Спецвыпуск по
    Распределенные вычисления в реальном времени и повсеместные вычисления в памяти
    Профессор Мун Хэ Ким.Декабрь 2008 г.
  • Дамиан Дечев, Николя Рукетт, Питер Пиркельбауэр и Бьярн Страуструп:
    Проверка и семантическое распараллеливание автономного программного обеспечения, ориентированного на достижение целей.
    Proc. ACM Autonomics 2008. Сентябрь 2008 г.
  • Дамиан Дечев, Раби Махарапатра, Бьярне Страуструп и Дэвид Вагнер:
    Динамическое приведение C ++ в автономных космических системах.
    IEEE ISORC 2008. Май 2008 г.

  • Ховард Э. Хиннант, Бьярн Страуструп и Бронек Козицки:
    Краткое введение в ссылки на Rvalue
    The C ++ Source (веб-публикация).10 марта 2008 г.
  • Питер Пиркельбауэр, Шон Родитель, Мэт Маркус и Бьярн Страуструп:
    Основные понятия среды выполнения для стандартной библиотеки шаблонов C ++.
    Proc. SAC’08, март 2008 г.

  • Петер Пиркельбауэр, Юрий Солодкий и Бьярне Страуструп:
    Открытые мульти-методы для C ++.
    Proc. 6-я Международная конференция ACM
    по генеративному программированию и компонентной инженерии (GPCE). Октябрь 2007 г.
  • Стив Кук, Скотт Пайк и Бьярн Страуструп:
    Инфраструктура, основанная на раннем ответе: надежный проверяемый параллелизм .IEEE HASE’07. Ноябрь 2007 г.
  • Люк Вагнер, Яакко Ярви и Бьярне Страуструп:
    Использование типов владения для поддержки сглаживания границ.
    IWACO’07 (семинар ECOOP: Международный семинар по алиасингу,
    Конфайнмент и владение в объектно-ориентированном программировании). Июль 2007 г.
  • Бьярне Страуструп:
    Развитие языка в реальном мире и для него: C ++ 1991-2006.
    ACM HOPL-III.
    Июнь 2007 г.
    (включая слайды и видео).

  • Дамиан Детчеф, Питер Перкельбауэр и Бьярн Страуструп:
    Безблокирующие массивы с динамически изменяемым размером.Материалы OPODIS’06. Декабрь 2006 г.

  • Дуглас Грегор, Яакко Ярви, Джереми Сик, Бьярн Страуструп, Габриэль дос Рейс, Эндрю Ламсдейн:
    Концепции: лингвистическая поддержка общего программирования на C ++.
    OOPSLA’06, октябрь 2006 г.
  • Габриэль дос Рейс и Бьярн Страуструп:
    Определение концепций C ++.
    POPL06. Январь 2006 г.
  • Бьярне Страуструп:
    Краткий обзор C ++ 0x.
    Конференция «Современный дизайн и программирование на C ++». Шанхай, ноябрь 2005 г.Также Артима, январь 2006 г.
  • Бьярне Страуструп и Габриэль дос Рейс:
    Поддержка ПРОДАЖИ для высокопроизводительных вычислений.
    LCPC05. Октябрь 2005 г.
  • Бьярне Страуструп:
    Обоснование семантически расширенных библиотечных языков.
    LCSD05. Октябрь 2005 г.
  • Майкл Гиббс и Бьярн Страуструп:
    Быстрый динамический кастинг.
    Программное обеспечение — практика и опыт.
    Том 35, Выпуск 12. 2005 г.
  • Б. Страуструп:
    Дизайн C ++ 0x.Журнал пользователей C / C ++. Май 2005 г.
  • Б. Страуструп:
    C ++ в 2005 году.
    Расширенное предисловие к японскому переводу книги «Дизайн и эволюция C ++». Январь 2005 г.
  • Б. Страуструп:
    Абстракция и машинная модель C ++.
    Proc. ICESS’04. Декабрь 2004 г.
    Также в Springer LNCS 3605. Встроенное программное обеспечение и системы. 2005 г.
  • Мэтт Остерн, Бьярн Страуструп, Миккель Торуп и Джон Уилкинсон:
    Распутывание балансировки и поиск сбалансированных двоичных деревьев поиска.Программное обеспечение — практика и опыт.
    Том 33, выпуск 13. Ноябрь 2003 г., стр. 1273–1298.
    Приложение с кодом.
  • Б. Страуструп:
    На службе у сообщества C ++.
    Предисловие к опубликованной версии стандарта C ++ (ISO / IEC 14882: 2002).
    Wiley 2003. ISBN 0 470 84674-7.
  • Б. Страуструп:
    Абстракция, библиотеки и эффективность в C ++.
    Журнал доктора Добба, Китай. Том 1, № 1. Август 2003 г.
  • Б. Страуструп:
    C и C ++: примеры совместимости.Журнал пользователей C / C ++.
    Сентябрь 2002 г.
    Версия в формате PDF.
  • Б. Страуструп:
    C и C ++: аргументы в пользу совместимости.
    Журнал пользователей C / C ++.
    Август 2002 г.
    Версия в формате PDF.
  • Б. Страуструп:
    C и C ++: братья и сестры.
    Журнал пользователей C / C ++.
    Июль 2002 г.
    Версия в формате PDF.
  • Б. Страуструп:
    Соперничество братьев и сестер: C и C ++.
    AT&T Labs — Технический отчет об исследованиях. TD-54MQZY.
    Январь 2002 г.
  • Б.Страуструп: Стили и библиотеки программирования C ++.
    pdf версия.
    InformIt.com. Январь 2002 г.
  • Б. Страуструп, А. Кениг и Б. Му:
    Язык программирования C ++.
    Энциклопедия программной инженерии. Второе издание. Вайли.
    2001 г.
  • Б. Страуструп: Говорить на C ++ как на родном.
    Proc. ACAT 2000.
    Также в разделе «Передовые вычисления и методы анализа в физических исследованиях»,
    редакторы: П. К. Бхат и М. Касеманн.
    Американский институт физики.Труды конференции AIP, том 583.
    ISBN 0-7354-0023-7.
    Август 2001 г.
    Конференция сделала

    доступны мои слайды и видео моего выступления.

  • Б. Страуструп: Программирование с исключениями.
    pdf версия.
    InformIt.com. Апрель 2001 г.

  • Б. Страуструп:
    Безопасность исключений: концепции и методы.
    В «Достижения в методах обработки исключений» редакторы:
    Кристоф Дони,
    Йорген Линдсков Кнудсен,
    Александр Романовский и
    Ананд Трипати.Конспект лекций Springer Verlag по информатике, LNCS-2022.
    ISSN 0302-9743. ISBN 3-540-41952-7.
    Апрель 2001 г.

  • Б. Страуструп:
    C ++: Краткая история.
    Энциклопедия компьютерных наук, 4-е изд.
    (Энтони Ральстон, Эдвин Д.
    Рейли, Дэвид Хеммендингер, редакторы)
    Словари Grove’s Dictionaries Inc.
    Нью-Йорк.
    2000 г.
    ISBN 1-561-59248-X.
  • Б. Страуструп:
    Обертка вызовов функций-членов C ++.
    Отчет C ++.Июнь 2000 г., Том 12 / № 6.
    Код, используемый для сравнения эффективности.
  • Б. Страуструп:
    Язык программирования C ++ (специальный выпуск).
    Эддисон Уэсли.
    Ридинг, Массачусетс, США.
    Февраль 2000 г.
    ISBN 0-201-70073-5. 1029 страниц. Твердая обложка.
    Немецкий перевод. 2000; ISBN 3-8273-1660-X.
    Венгерский перевод. Кишкапу Киадо, Будапешт. 2001 г.
    ISBN 9639301183 (1-й том)
    ISBN 9639301191 (2-й том)
    ISBN 9639301175ö (оба тома).
    Русский перевод.Издательство Binom, 2001. ISBN 5-7940-0031-7 и 2005 (в твердом переплете) ISBN 5-7989-0223-4.
    КНР английское издание. Pierson Education North Asia Ltd. и пресса для высшего образования. Пекин. 2001. ISBN 7-04-010095-9.
    Болгарский перевод. Информация Дар. www.infodar.com. 2001. ISBN 954-761-035-X.
    Голландский перевод. 2002. ISBN 90-430-0231-3.
    Китайский перевод (традиционный). Пирсон Образовательный Тайвань. 2002. ISBN 957-2054-43-0.
    Испанский перевод. 2002. Pearson Educacion S.A. ISBN 84-7829-046-X.Китайский перевод. 2002. China Machine Press. ISBN 7-111-10202-9.
    Румынский перевод. 2003. Теора. www.teora.ro. ISBN 9-789732-008942.
    Корейский перевод. 2005. Pearson Education Korea. www.pearson.edu.kr. ISBN 89-450-7204-7.

  • Б. Страуструп:
    Переход из прошлого в будущее.
    Отчет C ++.
    С. 22-23.
    Том 11 / № 10.
    Ноябрь-декабрь 1999 г.
    Также в
    «More C ++ Gems» (редактор: Роберт К. Мартин). 2000. ISBN 0-521-78618-5.
  • Б.Страуструп:
    Изучение стандартного C ++ как нового языка.
    Журнал пользователей C / C ++.
    С. 43-54.
    Май 1999 г.
    Код, используемый для сравнения эффективности.
    Также в CVU Vol 12 № 1. Январь 2000 г.
    Также турецкий перевод, февраль 2002 г.
    Также китайский перевод. Журнал Программист ??? 2001 г.
    А также японский перевод Синтаро Дзингу. Июль 2009 г.
  • Б. Страуструп:
    Почему ни один язык программирования не может удовлетворить все потребности.
    Журнал Red Herring.Апрель 1999 г.
  • Б. Страуструп:
    Обзор языка программирования C ++.
    Справочник по объектной технологии
    (Редактор: Саба Замир).
    CRC Press LLC, Бока-Ратон, Флорида.
    1999 г.
    ISBN 0-8493-3135-8.
  • Б. Страуструп:
    История C ++.
    В «Справочнике по языкам программирования»
    (Редактор: Питер Салус).
    Macmillan Technical Publishing.
    Индианаполис. ISBN 1-57870-008-6.
    1998 г.
  • Б. Страуструп:
    Стандартный C ++ для программирования встроенных систем.Разработка встроенных систем.
    Март 1998 г.

  • Б. Страуструп:
    Обобщение перегрузки для C ++ 2000.
    Перегрузка, выпуск 25.
    1 апреля 1998 г.
    Также китайский перевод. Журнал «Программист». 1 апреля 2002 г.

  • Б. Страуструп:
    Язык программирования C ++ (3-е издание).
    Эддисон-Уэсли Лонгман.
    Ридинг, Массачусетс, США.
    1997 г.
    ISBN 0-201-88954-4.
    Международное студенческое издание 1998 г. Эддисон Уэсли Лонгман.ISBN 0-201-43569-1.
    Немецкий перевод 1998 г .; ISBN 3-8273-1296-5.
    Испанский перевод 1998 г .; ISBN 84-7829-019-2.
    Японский перевод 1998 г .; ISBN 4-7561-1895-X.
    Русский перевод 1999 г .; Издательство Binom Publshers; ISBN 5-7940-0031-7.
    Французский перевод 1999; CampusPress; ISBN 2-7440-0609-2.
    Китайский перевод 1999 г .; Эддисон-Уэсли Лонгман и книги ученых, Тайвань; ISBN 957-981524-0.
    Шведский перевод 2000 г .; Bonnier Ekerlid Data, Стокгольм; ISBN 0-201-67504-8.
    Финский перевод 2000 г .; Текнолит; ISBN 951-846-026-4.Польский перевод 2000 г .; ISBN 83-204-2375-9.
    Португальский перевод 2000 г .; Книжник, Порту-Алегри, Бразилия. ISBN 85-7307-699-29.
    Итальянский перевод. Эддисон Уэсли Лонгман Италия. Милан. 2000. ISBN 88-7192-078-3.
    Греческий перевод. Компьютерные книги Клидаритмос. 2001. ISBN 960-332-142-7.

  • Б. Страуструп:
    Взгляд на параллелизм и C ++.
    в Wilson & Lu (Редакторы): Параллельное программирование с использованием C ++.
    MIT Press.
    1996 г.
    ISBN 0-262-73118-5.
  • Б. Страуструп:
    Языко-технические аспекты повторного использования.
    Proc. 4-я Международная конференция по повторному использованию программного обеспечения,
    С. 11-19.
    Апрель 1996 г.
  • Б. Страуструп:
    Краткий обзор C ++.
    IEEE AI Expert, Интеллектуальные системы и их приложения,
    С. 13-15.
    Февраль 1996 г.
  • А. Р. Кениг и Б. Страуструп:
    Основы собственных стилей C ++.
    Практика и опыт работы с программным обеспечением. Том 25, спецвыпуск S4.Декабрь 1995 г.
  • Б. Страуструп:
    Взгляд на ISO C ++.
    Отчет C ++. Том 7 / № 8,
    С. 22-28.
    Октябрь 1995 г.
    Также в «C ++ Gems» (редактор: Стэн Липпман) SIGS Publications, 1996. ISBN 1-884842-37-2.
  • Б. Страуструп:
    Почему C ++ — это не просто язык объектно-ориентированного программирования.
    Приложение к материалам OOPSLA’95. OOPS Messenger, том 6, № 4,
    С. 1-13.
    Октябрь 1995 г.
  • Б. Страуструп:
    Делаем вектор подходящим для стандарта.Отчет C ++.
    Октябрь 1994 г.
    Также в «C ++ Gems» (редактор: Стэн Липпман) SIGS Publications, 1996. ISBN 1-884842-37-2.
  • Б. Страуструп:
    Дизайн и развитие C ++.
    Эддисон Уэсли, ISBN 0-201-54330-3.
    Март 1994 г.
    Немецкий перевод, Аддисон-Уэсли, Германия, Бонн. 1994. ISBN 3-89319-755-9.
    Польский перевод, Wydawnictwa Naukowo-Techniczne, Варшава, 1996.
    Русский перевод. ДМК Пресс, Москва. 2000. ISBN 5-94074-005-7.
    Китайский перевод.Машинный пресс Китая. 2001. ISBN 7-111-09098-5.
    Китайское издание на английском языке. Машинный пресс Китая. 2002. ISBN 7-111-09592-8.
    Японский перевод. Издательство Softbank. 2005. ISBN 4-7973-2854-1.

  • Б. Страуструп, А. Кениг и Б. Му:
    Язык программирования C ++.
    Энциклопедия программной инженерии. Вайли. ISBN 0-471-54004-8.
    Февраль 1994 г.
  • Б. Страуструп:
    Язык программирования Simula.
    Энциклопедия программной инженерии.Вайли. ISBN 0-471-54004-8.
    Февраль 1994 г.
  • Б. Страуструп:
    Об изучении C ++.
    Мартин Хеллер: Расширенное программирование на Win32. Вайли.
    Июль 1993 г.
  • Б. Страуструп:
    Зачем нужны языковые расширения ?.
    Proc. Собрание европейской группы пользователей C ++, Мюнхен.
    Июль 1993 г.
    Также отчет C ++. Том 5 №7.
  • Б. Страуструп:
    Дизайн библиотеки с использованием C ++.
    Отчет C ++. Том 5 № 5,
    С. 14-22.
    Июнь 1993 г.Также в «C ++ Gems» (редактор: Стэн Липпман) SIGS Publications, 1996. ISBN 1-884842-37-2.
  • Б. Страуструп:
    История C ++: 1979–1991.
    Материалы конференции ACM по истории языков программирования (HOPL-2).
    Уведомления ACM Sigplan. Том 28 № 3,
    pp 271-298.
    Март 1993 г.
    А также История языков программирования (редакторы Т.Дж. Бегин и Р.Г. Гибсон)
    Аддисон-Уэсли, ISBN 1-201-89502-1. 1996 г.
  • Б. Страуструп:
    Мы больше не в Канзасе.Приложение к отчету C ++ « Переход от C к C ++ ». Публикации SIGS.
    Август 1992 г.
  • Б. Страуструп:
    Поиск корней C ++.
    Дополнение к серебряной годовщине. Публикации SIGS.
    Август 1992 г.
  • Б. Страуструп
    Д. Ленков:
    Идентификация типа во время выполнения для C ++ (пересмотренная).
    Материалы конференции USENIX C ++.
    Август 1992 г.
  • Б. Страуструп и др .:
    Как написать предложение по расширению языка C ++.
    Отчет C ++,
    С. 40-47.Май 1992 г.
    Также, ACM Sigplan Notices, Vol 27 No 6 June 1992 pp 64-71.
  • Б. Ставтруп:
    Перегрузка пробелов C ++.
    Журнал объектно-ориентированного программирования.
    1 апреля 1992 г.
  • Б. Страуструп:
    C ++ 3.0, стандартизация и год.
    PC World (Дания).
    Март 1992 г. (на датском языке).
  • Б. Страуструп и Д. Ленков:
    Идентификация типа во время выполнения для C ++.
    Отчет C ++, Том 4 № 3,
    С. 32-42.Март / апрель 1992 г.
  • Б. Страуструп:
    Язык программирования C ++ (2-е издание).
    Эддисон Уэсли, ISBN 0-201-53992-6.
    Июнь 1991 г.
    Французский перевод, Addison-Wesley France, 1992. ISBN 2-87908-013-4.
    Vuibert Informatique. 1998. ISBN 2-7117-8617-X.
    Немецкий перевод, Аддисон-Уэсли, Германия, 1992. ISBN 3-89319-386-3.
    Китайский перевод, публикация ученых, Тайбэй, RC, октябрь 1992 г. ISBN 957-652-396-6.
    Японский перевод, Топпан, июль 1993 г.ISBN 4-8101-8047-6.
    Испанский перевод, Addison-Wesley Iberoamericana, Мехико и Мадрид, 1993. ISBN 0-201-60104-4.
    Итальянский перевод, Аддисон-Уэсли, Италия, Милан, 1993. ISBN 88-7192-053-8.
    Русский перевод, Диасофт, Киев, 1993. ISBN 5-87554-079.
    Польский перевод, Wydawnictwa Naukowa-Techniczne, Warszawa, 1994. ISBN 83-204-1697-3.
    Чешский перевод, Прага, 1997. ISBN 80-

  • 7-2-1 и 80-86056-20-1.
    Греческий перевод, Klidarithmos, 19 ??. ISBN 960 — ??? — ??? — ?.
  • Б. Страуструп:
    Что такое объектно-ориентированное программирование? (Исправленная версия 1991 г.).
    Proc. 1-й Европейский фестиваль программного обеспечения.
    Февраль 1991 г.
  • Б. Страуструп:
    Шестнадцать способов сложить кошку.
    Отчет C ++.
    Октябрь 1990 г.
    (несколько странная бумага, предоставленная по многочисленным просьбам).
  • М. А. Эллис и Б. Страуструп:
    Справочное руководство по C ++ с аннотациями.
    Эддисон Уэсли, ISBN 0-201-51459-1.
    Май 1990 г.
    Русский перевод, Мир, Москва, 1992.Японский перевод, Топпан 1992.
    Перевод на португальский, Editoria Campus Ltda, Рио-де-Жанейро, 1993.
  • А. Р. Кениг и Б. Страуструп:
    Обработка исключений для C ++ (пересмотренная).
    Материалы конференции USENIX C ++.
    Апрель 1990 г.
    Также, Журнал объектно-ориентированного программирования, версия 3 №2, июль / август 1990 г., стр. 16-33.
    Также в «Эволюции C ++» (редактор Джим Уолдо). MIT Press. 1993. ISBN 0-262-73107.
  • Б. Страуструп:
    О языковых войнах.Горячая линия по объектно-ориентированным технологиям.
    Том 1, № 3. Январь 1990 г.

  • А. Р. Кениг и Б. Страуструп:
    Обработка исключений для C ++.
    Материалы конференции « C ++ в работе ».
    Ноябрь 1989 г.
  • Б. Страуструп:
    C ++ er blevet voksen: Версия 2.0.
    PC World (Дания).
    № 13 ноября 1989 г., стр. 24–28 (на датском языке).
  • А. Р. Кениг и Б. Страуструп:
    Как можно ближе к C — но не ближе.
    Отчет C ++.Том 1 No 7 июля 1989 г.
    Также, AT&T C ++ Translator Release Notes, февраль 1990 г.
  • К. Симонсен и Б. Страуструп:
    Европейское представительство ISO C.
    Информационный бюллетень EUUG.
    Том 9 № 2 Лето 1989 г., стр. 15-18.
  • Б. Страуструп:
    Стандартизация C ++.
    Отчет C ++.
    Том 1 № 1 января 1989 г.
    Также в «C ++ Gems» (редактор: Стэн Липпман) SIGS Publications, 1996. ISBN 1-884842-37-2.
  • Б. Страуструп:
    Эволюция C ++: 1985–1989.Вычислительные системы USENIX, V2 № 3,
    С. 191-250.
    Лето 1989 года.
    Также примечания к выпуску переводчика AT&T C ++, июнь 1989 г.
    Также в «Эволюции C ++» (редактор Джим Уолдо). MIT Press. 1993. ISBN 0-262-73107.
  • Б. Страуструп:
    Справочное руководство по C ++.
    Примечания к выпуску переводчика AT&T C ++.
    Июнь 1989 г.
  • Б. Страуструп и С. Липпман:
    Указатели на члены класса в C ++.
    Proc. Конференция USENIX C ++, Денвер,
    С. 305-326.Октябрь 1988 г.
  • Б. Страуструп:
    Типобезопасное связывание для C ++.
    Proc. Конференция USENIX C ++, Денвер,
    С. 193-210.
    Октябрь 1988 г.
    Также, USENIX Computing Systems, V1 № 4, Fall 1988, pp 371-404.
    Также примечания к выпуску переводчика AT&T C ++, июнь 1989 г.
  • Б. Страуструп:
    Параметризованные типы для C ++.
    Proc. Конференция USENIX C ++, Денвер,
    С. 1-18.
    Октябрь 1988 г.
    Также, Computing Systems, V2 no 1, Winter 1989.Также, Журнал объектно-ориентированного программирования, V1, №5, январь / февраль 1989 г., стр. 5-17.
    Также примечания к выпуску переводчика AT&T C ++, июнь 1989 г.
  • Б. Страуструп:
    Программыпраакет C ++.
    Индистриэлл Дататекник,
    С. 28-33.
    Август 1988 г.
    (на шведском языке).
  • Б. Страуструп:
    Лучше C?
    Журнал BYTE,
    pp 215-218.
    Август 1988 г.
  • Б. Страуструп:
    Проблемы проектирования в C ++.
    Уведомления ACM Sigplan,
    С. 33-37.Январь 1988 г.
  • Б. Страуструп и Дж. Э. Шопиро:
    Набор классов для программирования стиля совместной работы.
    Proc. Мастерская USENIX C ++.
    Ноябрь 1987 г.
  • Б. Страуструп:
    Эволюция C ++: 1985-1987.
    Proc. Мастерская USENIX C ++.
    Ноябрь 1987 г.
  • Б. Страуструп:
    Возможные направления для C ++.
    Proc. Мастерская USENIX C ++.
    Ноябрь 1987 г.
    Также в «Эволюции C ++» (редактор Джим Уолдо).MIT Press. 1993. ISBN 0-262-73107.
  • Б. Страуструп:
    Множественное наследование для C ++.
    Proc. Весенняя конференция EUUG.
    Май 1987 г.
    Исправленная версия в примечаниях к выпуску переводчика AT&T C ++, июнь 1989 г.
    Также, USENIX Computing Systems, V2, № 4, Fall 1989, pp 367-396.
  • Б. Страуструп:
    Анонс HICOOPS’87.
    Уведомления ACM Sigplan,
    стр.2.
    1 апреля 1987 г.
  • Б. Страуструп:
    Обзор C ++.
    Уведомления ACM Sigplan, специальный выпуск,
    С. 7-18.Октябрь 1986 г.
    Также Nikkei Electronic, февраль 1987 г., стр. 239–250 (на японском языке).
    Также, AUUGN vol 7, no 4-5 pp 39-55 (аннотировано Майком Мобреем).
    Также Proc. USENIX C ++ Workshop, ноябрь 1987 г.
    Также, The Lifeboat PERSPECTIVE, октябрь 1988 г., стр. 76-83 (на японском языке).
    Также, AT&T C ++ Translator Release Notes, июнь 1989 г.
  • Б. Страуструп:
    Что такое объектно-ориентированное программирование?
    Proc. 14-я конференция АГУ,
    стр 69-84
    Август 1986 г.
    Доработанная версия в Proc.ECOOP’87, май 1987 г., конспект лекций Springer Verlag.
    in Computer Science Vol 276, pp 51-70.
    Также Proc. USENIX C ++ Workshop, ноябрь 1987 г.
    Также ИНФОРМАТИКА, май 1988 г. (на польском языке).
    Также, исправленная версия в журнале IEEE Software Magazine, май 1988 г., стр. 10-20.
    Также примечания к выпуску переводчика AT&T C ++, июнь 1989 г.
  • Б. Страуструп:
    Язык программирования C ++.
    Программное обеспечение IEEE.
    Январь 1986 г.
    Также, Simula Newsletter, Vol. 13, No. 4, ноябрь 1985 г.
  • Б. Страуструп:
    Набор классов C ++ для программирования в стиле совместной рутины.
    Примечания к выпуску переводчика AT&T C ++.
    Ноябрь 1985 г.
  • Леони В. Роуз и Б. Страуструп:
    Сложная арифметика в C ++.
    Примечания к выпуску переводчика AT&T C ++.
    Ноябрь 1985 г.
  • Б. Страуструп:
    Язык программирования C ++.
    Эддисон Уэсли, ISBN 0-201-12078-X.
    Октябрь 1985 г.
    Немецкий перевод, Addison Wesley, 1987.Японский перевод, Аддисон Уэсли и Топпан, 1988.
    Французский перевод, Addison Wesley and InterEditions, 1989.
    Итальянский перевод, Addison Wesley Italia, Милан, 1990.
    Сербско-хорватский перевод, издательство Dragon Publishing, Белград, 1990.
    Русский перевод, Радио и связь, Москва, 1991.
    Китайский перевод (неавторизованный), Бюро публикаций (разрешение № 3321-90321) города Пекина.
  • Б. Страуструп:
    Учебник по C ++.
    Proc. Лето 1985 г. Конференция EUUG.Сентябрь 1985 г.
    Также Proc. Ежегодная конференция ACM 1985, стр. 56-64, октябрь 1985 г.
  • Б. Страуструп:
    Расширяемое средство ввода-вывода для C ++.
    Proc. Летняя конференция USENIX 1985 г.,
    С. 57-70.
    Июнь 1985 г.
  • Б. Страуструп:
    Абстракция данных в C.
    Технический журнал Bell Labs.
    Том 63.
    № 8 (Часть 2),
    С. 1701-1732.
    Октябрь 1984 г.
    Также в UNIX System Reading and Applications, pp. 119-150, Prentice-Hall, 1987.
  • Б. Страуструп:
    Учебник по C ++.
    Proc. 1984 Национальный коммуникационный форум.
    Сентябрь 1984 г.
  • Б. Страуструп:
    Перегрузка оператора в C ++
    Proc. Конференция IFIP WG2.4 по языкам внедрения систем:
    Опыт и оценка.
    Сентябрь 1984 г.
  • Б. Страуструп:
    Добавление классов в язык C: упражнение по эволюции языка
    Практика и опыт работы с программным обеспечением,
    pp 139-161.
    Февраль 1983 г.
  • Б. Страуструп:
    Эксперимент с взаимозаменяемостью процессов и мониторов.
    Практика и опыт работы с программным обеспечением,
    пп 1011-1025,
    Декабрь 1982 г.
  • Б. Страуструп:
    Классы: средство абстрактного типа данных для языка C.
    Уведомления Sigplan,
    Январь 1982 г.
  • Б. Страуструп:
    Долгое возвращение: метод повышения эффективности
    Межмодульное взаимодействие.
    Практика и опыт работы с программным обеспечением,
    С. 131-143.Январь 1981 г.
  • Б. Страуструп:
    Спецификация программных систем для ряда сред исполнения.
    Proc. семинара по фундаментальным вопросам распределенных вычислений.
    Фоллбрук, Калифорния.
    Декабрь 1980 г.
  • Б. Страуструп:
    Система межмодульной связи для распределенного
    Компьютерная система.
    Proc. 1-й Международной конф. по распределенным вычислительным системам,
    С. 412-418.
    Октябрь 1979 г.
    Перепечатано в прагматическом взгляде на системы распределенной обработки,
    Учебник, редактор: Кеннет Дж.Thurber, № по каталогу IEE EHO-160-2,
    С. 296-302 (1980).
    Также в Журнале цифровых систем.
    Март 1981 г.
  • Б. Страуструп:
    Об унификации интерфейсов модулей.
    Обзор операционных систем ACM,
    том 12.
    нет 1,
    С. 90-98.
    Январь 1978 г.

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

.

Программирование — Принципы и практика использования C ++

Страуструп: Программирование — Принципы и практика использования C ++

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

Аддисон-Уэсли ISBN 978-0321543721.Декабрь 2008 г.

Заказ напрямую у издателя!

Изменено 28 октября 2015 г.

Польский перевод этой страницы.

Нет, это не 4-е издание
Язык программирования C ++
(см.
C ++ 11 FAQ).
Это введение в программирование для людей, которые никогда раньше не программировали.
Также будет полезно людям, которые немного запрограммировали и хотят улучшить
их стиль и технику — или просто изучите современный C ++.Он разработан для использования в классе, но написан с прицелом на самостоятельное изучение.
Черновики и готовые версии были использованы в качестве основы для первых классов программирования для инженера-электрика,
компьютерный инженер и студенты-информатики Техасского университета A&M
вот уже семь лет.

Вот несколько образцов

Как указано в книге и на ее обложке, сайт поддержки книги
www.stroustrup.com/Programming.
Этот сайт в первую очередь ориентирован на педагогов (это ведь учебник).

Переводы (см. Обложки):

  • Польский: Helion SA. Март 2010 г.
  • Немецкий язык — Pearson Education Deutschland Gmbh. 2010. ISBN 978-3-86894-005-3.
    Страница поддержки.
  • Перевод на китайский язык — China Machine Press (2010-6-1) ISBN: 9787111303220.
  • Китайское издание на английском языке: China Machine Press 978-7-111-28248-8.
  • Французский перевод. Pearson Educational France. 978-2-7440-7442-4.
  • Русский перевод.Издательство Уильямс. 2010. ISBN 978-5-8459-1621-1.
  • Корейский перевод. Pearson Education Korea Ltd и Dae Woong Publishing Co. 2010. ISBN978-8-98604-480-5.
  • Японский перевод. Shoeisha Company Ltd. 2011. ISBN 978-4798119595.
  • Перевод на португальский. Книжник Издательство. 2012. ISBN 987-85-7780-958-5.
  • Перевод на китайский язык (традиционный). GrandTech Information Co. 2012. ISBN 978-986-2571-85-9.
  • Казахский перевод (часть 1).2013. ISBN978-601-217-406-9.
  • Выполняется греческий перевод.

Я написал научную статью, чтобы объяснить роль книги (и курса, основанного на ней)
в более полном образовании:
Программирование в программе бакалавриата CS.
WCCCE’09.


Введение в программирование от изобретателя C ++

Подготовка к программированию в реальном мире
Книга предполагает, что вы в конечном итоге стремитесь писать нетривиальные программы,
будь то для работы в разработке программного обеспечения или в какой-либо другой технической области.

Акцент на фундаментальных концепциях и методах
В книге более подробно объясняются фундаментальные концепции и методы.
чем традиционные представления. Такой подход даст вам твердую
фундамент для написания полезного, правильного, обслуживаемого и эффективного кода.

Программирование с использованием современного C ++
Книга представляет собой введение в программирование в целом, включая
объектно-ориентированное программирование и универсальное программирование.Это также твердый
введение в язык программирования C ++, один из самых распространенных
используемые языки для реального программного обеспечения. В книге представлен современный C ++
методы программирования с самого начала, знакомство со стандартом C ++
библиотека для упрощения задач программирования.

Для начинающих и всех, кто хочет узнать что-то новое
Книга в первую очередь предназначена для людей, которые никогда не программировали.
раньше, и он был протестирован более чем на 1000 человек в первый год
студенты университетов [2013: теперь во всем мире больше 10 000 студентов].Однако практикующие и продвинутые студенты будут
получить новое понимание и руководство, увидев, как признанный мастер
приближается к элементам своего искусства.

Широкий обзор
Первая половина книги охватывает широкий круг основных понятий,
методы проектирования и программирования, языковые особенности и библиотеки.
Это позволит вам писать программы, включающие ввод, вывод,
вычисление и простая графика. Вторая половина исследует больше
специализированные темы, такие как обработка текста и тестирование, и предоставляет
обширный справочный материал.Исходный код и вспомогательные приложения
доступно на сайте автора.

Морган Стенли
|
Колумбийский университет
|
Черчилль-колледж, Кембридж

Главная
|
C ++
|
Вопросы-Ответы
|
технический FAQ
|
публикации
|
Документы WG21
|
TC ++ PL
|
Тур ++
|
Программирование
|
D&E
|
биография
|
интервью
|
видео
|
Приложения
|
методические рекомендации
|
компиляторы

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *