|
Программирование >> Структурное программирование
Она предназначена для опытных программистов, которые хотят проработать язык более глубоко. Можно ли в одной книге апеллировать к обеим этим группам? Ответ заключается в том, что изложение материала в книге направлено на достижение ясности программы посредством испытанной техники структурного и объектно-ориентированного программирования. При этом те, кто не знаком с программированием, будут изучать программирование, как положено, с самого начала. Мы попытались писать ясно и просто. Книга богато иллюстрирована. Возможно, самое важное то, что книга содержит огромное число программ на С++ и показывает результаты выполнения этих программ на компьютере. Первые пять глав знакомят с основами компьютеров, программированием и языком программирования С++. Начинающие, прошедшие этот курс, говорят нам, что материал этих глав представляет солидную основу для глубокой проработки С++ в главах с 6 по 16. Опытные программисты обычно быстро прочитывают первые пять глав и затем убеждаются в том, что проработка С++ в главах с 6 по 16 отличается и строгостью, и поучительностью. Многие опытные программисты говорили нам, что они высоко оценили нашу трактовку структурного программирования. Они часто программировали на структурированных языках, подобных С или Паскалю, но, поскольку они никогда формально не применяли структурное программирование, они не писали на этих языках оптимальных программ. Когда же они просмотрели материал по структурному программированию в начальных главах этой книги, они оказались в состоянии значительно улучшить свой стиль программирования на С и Паскале. Так что независимо от того, новичок вы или опытный программист, для вас найдется здесь много информативного, занимательного и поучительного. Большинству людей хорошо известно многое из того, что делают современные компьютеры. Используя этот учебник, вы научитесь управлять компьютером, заставлять его делать то, что вам нужно. Компьютером (который часто называют техническим обеспечением), управляет программное обеспечение (т.е. инструкции, которые вы пишете, чтобы заставить компьютер выполнять какие-то действия и принимать решения), и С++ на сегодня является одним из наиболее популярных языков создания программного обеспечения. В этой книге дается введение в программирование на той версии языка С++, которая стандартизирована в Соединенных Штатах Американским Национальным Институтом Стандартов (ANSI). Перспективы развития принятой во всем мире версия С++ связаны прежде всего с усилиями Международной Организации Стандартов (ISO). Применение компьютеров возрастает почти во всех областях. В эпоху неуклонно растущих цен стоимость вычислений на глазах снижается вследствие быстрого развития как аппаратных средств, так и технологий программирования. Компьютеры, которые 25 лет назад занимали большие помещения и стоили миллионы долларов, ныне могут быть вписаны в поверхность кремниевых микросхем, размером меньших ногтя на пальце и стоящих, возможно, всего несколько долларов каждая. Ирония судьбы заключается в том, что кремний является одним из наиболее распространенных на земле материалов - он входит в состав обычного песка. Технология кремниевых микросхем сделала вычисления настолько экономичными, что во всем мире используется около 200 миллионов компьютеров общего назначения, помогающих людям в бизнесе, производстве, управлении и личной жизни. За несколько лет это число может легко удвоиться. Эта книга будет занимательной для вас по нескольким причинам. Ваши сверстники за последние несколько лет, возможно, изучили С или Паскаль в качестве своих первых языков программирования. Вы же изучите и С, и С++! Как? Да просто потому, что С++ включает в себя стандарт ANSI для С и добавляет к нему много нового. Ваши сверстники, возможно, изучали методологию программирования, называемую структурным программированием. Вы изучите как структурное программирование, так и современную новейшую методологию - объектно-ориентированное программирование. Зачем надо изучать обе эти методологии? Мы определенно предвидим, что объектно-ориентированный подход будет ключевой методологией программирования во второй половине 90-х годов. В этом курсе вы построите многие объекты и будете с ними работать. При этом вы обнаружите, что внутреннюю структуру этих объектов часто лучше создавать с помоп];ью техники структурного программирования. И логика оперирования объектами в ряде случаев выражается лучше с помощью структурного программирования. Другая причина, по которой мы представляем здесь обе методологии, состоит в том, что в предстоящее десятилетие будет происходить массовый переход от систем, основанных на С, к системам, основанным на С++. На местах существует огромное так называемое наследие программ на С . С использовался почти четверть столетия и в последние годы его применение стремительно росло. Но те, кто изучил С++, обнаруживают, что его возможности гораздо более мощные, чем у С, и они часто предпочитают переходить на С++. Они начинают переводить свои системы на С++ и этот процесс достаточно ярко выражен. Затем они начинают использовать различные свойства С++, известные как усовершенствования С++ по сравнению с С , чтобы улучшить свой стиль написания своих С-подобных программ. Наконец, они начинают пользоваться возможностями объектно-ориентированного программирования на С++, чтобы в полном объеме реализовать преимущества этого языка. Интересный феномен, наблюдаемый на рынке языков программирования, состоит в том, что многие из основных продавцов продают теперь комбинированный C/C++ продукт охотнее, чем предлагаемые отдельные продукты. Это предоставляет пользователям возможность продолжать программировать на С, если они того пожелают, а затем постепенно продвигаться в сторону С++. С++ имеет шансы стать основным языком разработки программ 90-х годов. Но может ли он быть объектом изучения в начальном курсе программирования - именно для такого курса предназначена эта книга? Мы думаем, что может. Два года назад мы приняли подобный вызов, когда Паскаль являлся основным языком в начальных курсах по вычислительной технике. Мы написали книгу Как программировать на С - родную сестру данной книги. Сотни университетов во всем мире используют теперь второе издание Как программировать на С . Курсы, основанные на этой книге, доказали, что они столь же эффективны, как их предшественники, основанные на языке Паскаль. Между ними не наблюдалось никаких существенных различий, за исключением того, что студенты были более заинтересованы в изучении С, поскольку они знали, что предпочтительнее использовать С, чем Паскаль, и в последующих курсах, и для их будущей карьеры. Студенты, изучающие С, знали также, что они будут лучше подготовлены к изучению С++. В первых пяти главах этой книги вы будете изучать структурное программирование на С++, С как часть С++ и С++ как расширение С. Чтобы сбалансировать эту книгу, вы изучите объектно-ориентированное программирование на С++. Мы не хотим заставлять вас ждать шестой главы, чтобы вы ош;утили суть объектной ориентации. Поэтому каждая из первых пяти глав завершается разделом, называемым Размышления об объектах . Эти разделы вводят основные концепции и терминологию объектной ориентации. Когда мы дойдем до шестой главы, вы уже будете хорошо подготовлены к тому, чтобы начать использовать С++ для построения объектов и написания объектно-ориентированных программ. Данная первая глава содержит три части. Первая часть знакомит с основами компьютеров и программирования. Вторая часть заставит вас сразу начать писать некоторые простые программы на С++. Третья часть даст вам возможность подумать об объектах . Итак, за работу! Вы находитесь в самом начале увлекательного и благодарного путешествия. По мере вашего продвижения, если вы не сочтете за труд общаться с нами, посылайте нам электронную почту через Интернет deitel@world.std.com. Мы сделаем все возможное, чтобы быстро ответить вам. Желаем удачи! 1.2. Что такое компьютер? Компьютер - это прибор, способный производить вычисления и принимать логические решения в миллионы или даже миллиарды раз быстрее человека. Например, многие из современных персональных компьютеров могут выполнять десятки миллионов операций сложения в секунду. Человеку, работающему с настольным калькулятором, потребовались бы десятилетия для того, чтобы завершить тот же самый объем вычислений, который мощный персональный компьютер выполняет за одну секунду. (Информация к размышлению: Как вы могли бы узнать, правильно ли человек сложил числа? Как вы могли бы узнать, правильно ли компьютер сложил числа?) Сегодняшние самые быстрые суперкомпьютеры могут выполнять сотни миллиардов операций сложения в секунду - это примерно столько же, сколько сотни тысяч людей могут выполнить за год. А в исследовательских лабораториях уже функционируют компьютеры с быстродействием в триллионы операций в секунду. Компьютеры обрабатывают данные под управлением наборов команд, называемых компьютерными программами. Эти компьютерные программы направляют действия компьютера посредством упорядоченных наборов действий, описанных людьми, называемыми компьютерными программистами. Разнообразные устройства (такие как клавиатура, экран, диски, память и процессорные блоки), входящие в состав компьютерной системы, называются аппаратными средствами. Компьютерные программы, исполняемые компьютером, называются программным обеспечением. Стоимость аппаратных средств в последние годы существенно снизилась и достигла уровня, когда персональные компьютеры превратились в предмет массового потребления. К сожалению, стоимость разработки программного обеспечения неуклонно росла, так как программисты создавали все более мощные и сложные прикладные программы, не имея средств улучшить технологию их разработки. В этой книге вы изучите апробированные методы создания программного
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |