Главная » Просмотр файлов » Б. Страуструп - Дизайн и Эволюция C++. 2006

Б. Страуструп - Дизайн и Эволюция C++. 2006 (1160775), страница 47

Файл №1160775 Б. Страуструп - Дизайн и Эволюция C++. 2006 (Б. Страуструп - Дизайн и Эволюция C++. 2006) 47 страницаБ. Страуструп - Дизайн и Эволюция C++. 2006 (1160775) страница 472019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 47)

Это легкая часть работы. Самое трудное, но и самое интересное, — овладение новыми методами проектирования и программирования, Большинство опытных программистов, с которыми я беседовал, говорят, что для глубокого освоения Сч+ и тех способов абстрагирования донных и объектноориентированного программирования, которые поддерживаются языком, им потребовалось от полугода до полутора лет.

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

Замечу, чта овладение языком С++ — эта прежде всего изучение методов проектирования и программирования, о не деталей. Рекомендую сначала проштудировать хороший учебник по С++, затем какую-нибудь книгу по проектированию, например [Воось, 1991~, где есть прекрасные содержательные примеры на пяти языках 1Ада, СЮЗ, С++, Згпа111а1« и ОЬ1ес! Разса1).' Больше всего в этой книге мне нравится изложение концепций проектирования и главы, где подобраны примеры. Взгляд на язык с точки зрения проектировщика резко контрастирует со скрупулезным изучением деталей определения языка, ведущимся обычно по книге АкМ, в которой содержится много полезной информации, но ничего не сказано о том, как писать программы на С++.

При изучении С++ важно все время помнить о ключевых концепциях, чтобы не запутаться в технических деталях. При этом условии и изучение, и использование языка станут приятным и продуктивным делом. Даже поверхностное знание С++ может оказаться преимуществам по сравнению с владением С, а уж если приложить усилия к пониманию абстракций данных и объектно-ориентированных методов, то пользы будет намного больше». Надо учитывать и современное состояние инструментальных средств и библиотек. Имея более зашишенную среду, например включаюшую по умолчанию ' Во втором издании кпигв 1ВоосЬ, 1993~ используется только С++, .'ФИИИИИИ3 Пользователи и приложения 7.3.

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

В этом отношении он заметно отличается от языков, использующихся в основном для экспериментов — промышленных, академических — или для обучения. Конечно, С++ находит широкое применение как в экспериментальных и исслеловательскпх работах, так и в образовательных целях. Но его роль в промышленных программах обычно является определяющим фактором при выборе проектного решения. 7З.1.

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

Это позволит сместить акпенты от языковых средств С++ к тем методам программирования и проектирования, которые он поддерживает. Не стоит с головой погружаться в синтаксис и несущественные техничсскис детали языка, как зто любят делать программисты с большим стажем. Нередко такой интерес — нс что иное, как обычное нежелание изучать новыс методы программирования. В каждой учебной группе и в каждом проекте обязательно находится кто-то, кто не может поверить, что Сь+ может быть достаточно эффсктивсп, и потому старается нс выходить за рамки испытанного С-подмножества. Только зная о конкретных результатах измерения произволительностп отдельных средств С++ и написанных на нем системах (например, [Кпьэо, 19881, 1йпэзо, 1990), 1КеНег, 1992]), можно преодолеть стойкое убеждение, что средства более удобные, чем в С, обязательно должны требовать больших затрат.

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

Я уже упоминал в разделах 2.14 и 3.3.4, что в то время пользователями были в основном исследователи и разработчики пз Ве!! 1.аЬк 7.3.2. Сферы применения С++ К сожалению, многие пользователи не документируют свой опыт, а некоторые организации считают его чуть ли не государственной тайной. Поэтому до программистов и администраторов доходят не только правдивые данные о языках и методах программирования, по и много мифов, неточной, а иногда и откровенно ложной информации.

Отсюда постоянное дублирование усилий и повторение известных опшбок. Пель этого раздела — показать несколько областей, в которых использовался С++, и побудить разработчиков документировать свой опыт, чтобы пм могло воспользоваться все сообщество пользователей. В каждой из упоминаемых областей трудились, по крайней мере, два человска в течение нс менее двух лет. Самый больп1ой из известных мне документированных проектов состоит из 5 млн строк на С++ и разрабатывался коллективом из 200 человек свыше семи лет. Итак, области использования С++: анимация, автономные логружаемые аппараты, бпллинговые системы (в сфере телекоммуникаций), управление кегельбапом, трассировка монтажа печатных схем, САП/САМ, моделирование химических пропессов, управление агентством по продаже автомобилей, САЯЕ, компиляторы, матобеспеченпе для пультов управления, моделирование циклотрона, системы баз данных, отладчики, системы поддержки принятия решений, обработка цифровых фотографий, электронная почта, управление вышивальной машиной, экспертные системы, автоматизация производства, финансовая отчетность, телеметрия поле~он, обмен валют, перевод денежных сумм, генеалогические исследования, управление газоперекачивающими станциями и биллинговые системы для них, графика, описание аппаратуры, управление больничными архивами, управление промышленным роботом, моделирование набора машинных команд, интерактивные мультимедийные средства, магнитогидродинамика, обработка медицинских образов, медипинский монгпоринг, управление ракетами, управление ипотечной компанией, сетевые протоколы, системы управления и администрирования сетей, мониторинг сетей, операционные системы (реального времени, распределенные, рабочих станций, мейнфреймов, объектно-ориентированные), среды программирования, страховой бизнес, моделирование ударных волн, управление бойнями, программное обеспечение коммутаторов, инструментальные средства для тестирования, трейдерские системы, обработка транзакций, системы передачи данных, управление транспортным парком, пользовательские интерфейсы, видеоигры, виртуальная реальность.

7.4. Коммерческая конкуренция Среди программистов, в прессе, на конференциях и в электронных средствах всегда велись (да и сейчас ведутся) споры о том, какой язык лучший и кто победит Коммерческая конкуренция .611ИИИИИ в борьбе за пользователей. Я считаю такие дебаты бессмысленными и свилстельствуюшими о недостатке информации, но от этого онп не становятся менее значимыми для программиста, руководителя или профессора, которые должны выбрать язык программирования для следующих проектов. Люли спорят о языках программирования с поистине религиозным ожесточением и зачастую полагают, что выбор языка — самая важная часть работы. Поэтому принятие решения огб использовании того или иного языка может стать серьезной проблемой как для отдельного программиста, так и для целой организации.

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

Характеристики

Тип файла
DJVU-файл
Размер
2,78 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6439
Авторов
на СтудИзбе
306
Средний доход
с одного платного файла
Обучение Подробнее