- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Программирование. Принципы и практика использования C++ Исправленное издание - Бьёрн Страуструп
Шрифт:
Интервал:
Закладка:
Эта глава выражает нашу личную точку зрения на то, что мы считаем интересным и важным для программирования. В ней изложены причины, по которым мы вот уже много десятков лет занимаемся этим делом. Она должна помочь вам понять, в чем заключаются наши основные цели и какими бывают программисты. Учебники для начинающих неизбежно содержат массу прописных истин. В этой главе мы закрываем глаза на технические детали и предлагаем рассмотреть картину в целом. Почему программирование является достойным занятием? Какую роль играет программирование в нашей цивилизации? В каких областях программисты могут сделать вклад, которым могли бы гордиться? Какие задачи остались пока нерешенными в области разработки, развертывания и эксплуатации программного обеспечения? Какое место занимает программирование в области компьютерных наук, разработки программного обеспечения, информационных технологий и т.д.? Чем занимаются программисты? Какими навыками они должны владеть?
Для студентов основной причиной изучения какой-либо идеи, метода или главы учебника может быть простое желание получить хорошую оценку на экзамене, но должны же быть и более веские мотивы! Для людей, работающих в области разработки программного обеспечения, наиболее важной причиной изучения какой-либо идеи, метода или главы учебника может быть желание узнать нечто, что поможет ему заслужить одобрение босса, от которого зависит повышение зарплаты, продвижение по службе и увольнение, — но должны же быть и более веские мотивы! Лучше всего мы работаем, когда чувствуем, что наша работа делает мир лучше и помогает другим людям. Для задач, которые мы решаем годами (из которых, собственно, и складывается карьера профессионала), жизненно важными являются идеалы и более абстрактные идеи.
Жизнедеятельность нашей цивилизации зависит от программного обеспечения. Улучшение программного обеспечения и поиск новых областей для его применения позволит улучшить жизнь многих людей. Программирование играет в этом очень важную роль.
1.2. Программное обеспечение
Хорошее программное обеспечение невидимо. Вы не можете его потрогать, взвесить или стукнуть. Программное обеспечение — это совокупность программ, выполняемых на определенном компьютере. Иногда мы можем пощупать этот компьютер, но чаще можем увидеть лишь устройство, содержащее этот компьютер, например телефон, фотоаппарат, тестер, автомобиль или воздушную турбину. Мы способны воспринимать лишь результаты работы программного обеспечения. Кроме того, если работа программного обеспечения не соответствует нашим ожиданиям или потребностям, это может стать поводом для беспокойства.
Сколько компьютеров существует в мире? Мы не знаем; по крайней мере, миллиарды. Компьютеров в мире больше, чем людей. В 2004 году по оценкам Международного телекоммуникационного союза (International Telecommunication Union — ITU) в мире насчитывалось 772 миллиона персональных компьютеров, причем большинство компьютеров в эту категорию не входило.
Сколько компьютеров (более или менее непосредственно) вы используете каждый день? Например, в моем автомобиле установлено более тридцати компьютеров, в мобильном телефоне — два, в MP3-плеере — один и еще один в видеокамере. Кроме того, у меня есть еще ноутбук (на котором я набирал текст, который вы сейчас читаете), а также настольный компьютер. Контроллер кондиционера, который летом поддерживает комфортную температуру и влажность, также представляет собой простой компьютер. В нашем университете компьютер управляет работой эскалатора. Если вы пользуетесь современными телевизорами, то обязательно найдете в нем хотя бы один компьютер. Переходя с одной веб-страницы на другую, вы соединяетесь с десятками, а возможно, и сотнями серверов через телекоммуникационные системы, состоящие из многих тысяч компьютеров: телефонных коммутаторов, маршрутизаторов и т.д.
Нет, я не храню тридцать ноутбуков на заднем сиденье своего автомобиля! Дело в том, что большинство компьютеров выглядят совсем не так, как мы привыкли (с дисплеем, клавиатурой, мышью и т.д.); они просто являются небольшим устройством, встроенным в используемое оборудование. Итак, в моем автомобиле нет ничего похожего на типичный компьютер, нет даже экрана для изображения карты и указания направления движения (хотя такие устройства весьма популярны). Однако двигатель моего автомобиля содержит несколько компьютеров, например, управляющих впрыскиванием топлива и контролирующих его температуру. По крайней мере, еще один компьютер встроен в рулевой механизм, в радиосистему и систему безопасности. Я подозреваю даже, что система, открывающая и закрывающая окна, управляется компьютером. В более современные автомобили встроены компьютеры, которые непрерывно контролируют даже давление в шинах.
От скольких компьютеров вы зависите на протяжении дня? Если вы живете в большом городе, то для того чтобы получить еду, кто-то должен совершить небольшие чудеса, связанные с планированием, транспортировкой и хранением продуктов. Разумеется, управление сетями распределения продуктов компьютеризовано, как и работа любых коммуникационных систем, требующих согласованной работы. Современные фермы также компьютеризованы; на них можно найти компьютеры, используемые как в хлеву, так и в бухгалтерии (для учета возраста, состояния здоровья коров, надоев и т.д.). Фермеры все шире используют компьютеры для делопроизводства, причем количество отчетов, которые необходимо отправлять в разные правительственные агентства, приводит их в отчаянье. О том, что происходит в мире, вы прочтете в газете; разумеется, статья в этой газете будет набрана на компьютерах, сверстана на компьютерах и напечатана на компьютеризованном оборудовании — часто после передачи в типографию в электронном виде. Если вам потребуется связь с удаленным компьютером, то трафик будет управляться компьютерами, которые попытаются (как правило, тщетно) избежать узких мест. Вы предпочитаете ездить на поезде? Этот поезд тоже будет компьютеризован; некоторые из поездов даже ездят без помощи машинистов, причем большинство бортовых систем поезда (объявления по радио, торможение и продажа билетов) состоит из множества компьютеров. Современную индустрию развлечений (музыку, фильмы, телевидение, театрализованные представления) тоже невозможно представить без использования компьютеров. Даже художественные фильмы производятся с массовым применением компьютеров; музыкальные произведения и фотографии также все чаще основаны на цифровых технологиях (т.е. создаются с помощью компьютеров) как при записи, так и при доставке. Если вы заболеете, то все анализы доктор проведет с помощью компьютеров, записи в медицинских книжках будут внесены в электронном виде, а большинство медицинского оборудования в больницах окажется компьютеризованным. Если вы не живете в лесной избушке без доступа к электричеству, то используете электроэнергию. Нефть обнаруживается, извлекается и транспортируется по системе трубопроводов, управляемых компьютерами на каждом этапе этого процесса: от погружения бура в землю до подачи топлива на местную насосную станцию. Если вы платите за бензин с помощью кредитной карточки, то снова задействуете огромное количество компьютеров. То же самое можно сказать о добыче и транспортировке угля, газа, а также солнечной и ветряной энергии.
Все приведенные выше примеры были “материальными”; они предусматривали

