Как я учился программировать на языке С++

Создание Windows приложений

Главная
Портфолио
Создание Windows приложений
Полезные ссылки
Справочник
Карта сайта
Контакты
"Все на борьбу с неграмотностью!"
Лозунг 30-х годов прошлого века.

Предисловие

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

Порывшись в Интернете, пришел к выводу, что оно не так уж просто новичку, ничего не смыслящему в программировании, окунуться в эту стихию и не запутаться с самого начала. Этот ресурс предполагает пошаговое описание моего пути к вершинам программирования на С++

Содержание

Главная

Часть I
Процедурное программирование в С++

Глава 1
Основы языка С++
Раздел 1
Раздел 2
Раздел 3
Раздел 4
Раздел 5
Раздел 6
Раздел 7
Раздел 8
Раздел 9
Раздел 10
Раздел 11
Раздел 12

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 2
Управляющие конструкции
Раздел 13
Раздел 14
Раздел 15
Раздел 16
Раздел 17

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 3
Указатели, ссылки и массивы
Раздел 18
Раздел 19
Раздел 20
Раздел 21
Раздел 22
Раздел 23
Раздел 24
Раздел 25
Раздел 26
Раздел 27

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 4
Функции
Раздел 28
Раздел 29
Раздел 30
Раздел 31
Раздел 32
Раздел 33
Раздел 34
Раздел 35
Раздел 36
Раздел 37
Раздел 38
Раздел 39

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 5
Текстовые строки и динамические массивы
Раздел 40
Раздел 41
Раздел 42
Раздел 43
Раздел 44
Раздел 45
Раздел 46
Раздел 47

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 6
Структуры, объединения и перечисления
Раздел 48
Раздел 49
Раздел 50
Раздел 51
Раздел 52
Раздел 53
Раздел 54

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения


Начало

Почему именно язык программирования С++ - ответить не могу. По роду своих интересов столкнулся с ситуацией, что совершенно необходимо самому обучиться навыкам программирования. От собеседников в сети приходилось слышать что именно С++ является тем что стОит изучать. Сейчас я не могу объяснить преимущества или недостатки этого языка и буду уповать только на свою интуицию и путеводную звезду :-)

Начал я с поисковиков. Запросы мои не отличались оригинальностью программирование, Язык С++, алгоритм, обучение, дистанционно, примеры программирования. Почитав соответствующие ветки форумов по программированию, нахватавшись верхушек в терминологии - решил подойти к этому делу серьёзно.

Перебрав некоторое количество сайтов которые мне выдали поисковики, я, остановил свой выбор на http://www.intuit.ru Там в разделе программирование, на мой взгляд, не плохой перечень курсов по теме.

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

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

Таковыми моментами являются.
  1. Прояснять все непонятные слова по мере того как они встречаются
  2. Хороший учебник по предмету изучения
  3. Максимум практики в период обучения(Обучение на примерах)
То что касается http://www.intuit.ru - не берусь оценивать второй пункт выше обозначенных критериев, поскольку не спец. По первому пункту с натяжкой готов поставить плюс. Однако по третьему критерию, полный ноль. После недели прохождения курса по программированию на языке С++ этого сайта мне опять же пришлось отвлечься в поисках практической проверки получаемых знаний - о чем далее.

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

Перебрав опять же ветки форумов по программированию - самостоятельно нашел несколько вариантов.

Для начала пошел по самому крутому варианту Visual Studio 2010

Преодолев некоторые барьеры в виде того, что нужно скачать сперва не хилых четыре файла, потом закатать их на диск, потом установить на комп себе, в итоге... Стал счастливым обладателем БОЛЬШОГО количества прибамбасов которые мне были установлены в дополнение к Visual Studio 2010, что-то стало ежесуточно поджирать трафик, плюс ко всему это демоверсия на 60 дней.... Плюс ко всему - я - понятия не имел, что со всем этим "счастьем" делать...

Снес в общем я эту "студию", диск отложил до лучших времен, наверное всё таки пригодится коли дорасту до уровня профессионала. Маленькая неприятность осталась, т.к., "студия" - удалилась - но еёные десятки прибамбасов остались... ну да трафик жрать перестало и ладно... Двинулся дальше.

Чего-то ещё позакачивал, поковырялся нашел Dev-C++ - откуда скачивал не помню, сейчас даю ссылку
http://prdownloads.sourceforge.net/dev-cpp/devcpp-4.9.9.2_setup.exe почему, об этом - далее.

Скачав и установив Dev-C++(бесплатная, с открытым кодом программа) понял что Хелп на моем конкретном компьютере не работает.

Поковырявшись в Интернете нашел очень замечательную страничку Кафедра автоматизации научных исследований ВМК МГУ

Забегая вперед скажу, здесь практической пользой для программиста новичка обладает "Занятие 1" - поскольку в нем дается практическая раскладка по созданию первой, элементарной программы в среде Dev-C++, что мне и требуется. Положу на свой сайт файлик этого занятия, да простят меня авторы, Интернет так нестабилен в отношении ссылок, сегодня ссылка работает, а завтра - нет. Ссылка на "Занятие 1" или первый практикум на Dev-C++(файл pdf 500кб)

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

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

Итого, первым оказался у меня решенным третий пункт из перечня необходимых элементов при обучении, я нашел, и, можно сказать - освоил необходимый минимум(создание консольных программ) для практического освоения теории С++

Хороший учебник, по пункту второму, подвернулся мне как-то сам собой, пошарился я по Интернету но в Интернете не потрогаешь книгу, не полистаешь оглавление, пошел в книжный магазин, там было несколько вариантов. Мне понравилась "Самоучитель C++ с примерами и задачами. Книга + CD", СПб, Наука и Техника, 2010. - 480с.: ил.(+CD)

Потому-что:

Первое: В книге просто гигантское количество практических примеров на составление программ с математическими, алгебраическими и ещё какими-то расчетами. И хотя меня в какой-то момент посетили сомнения по поводу "А смогу-ли я?". Я пришел к выводу, что это именно то, что мне нужно, поскольку именно по причине необходимости программной обработки мат и алгебро выражений я хочу изучать программирование, поскольку, это имеет ярко выраженный материальный интерес, в той области - которая меня интересует.

Второе: В книге изучение С++ строится на примере Dev-C++(А я то его уже немного знаю). На диске есть дистрибутив Dev-C++. В книге описание по пользованию, правда - описание программы идет третьей, последней главой, и всего несколько страничек, однако... Радует, что все что описано в книге, будет работать в Dev-C++

Таким образом бесплатная практика(с огромным количеством примеров) и теория(В доступном изложении) имеют все шансы слиться в единое целое.

Что-же по первому пункту условий обучения, тут придется самому корпеть.

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

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

С другой стороны всегда полезно иметь под рукой, бесплатно, материалы которые ты когда-либо уже рассматривал, это экономит время в дальнейшем при возникновении аналогичных задач!


Серия "Самоучитель"
Васильев А.Н.
Самоучитель программирование С++

"Самоучитель C++ с примерами и задачами. Книга + CD",

СПб, Наука и Техника, 2010. - 480с.: ил.(+CD)


Предисловие:

Данная книга является превосходным и эффективным учебным пособием для изучения языка программирования С++ с нуля. Книга задумывалась, с одной стороны, как пособие для тех, кто самостоятельно изучает язык программирования С++, а с другой, она может восприниматься как лекционный курс с проведением практических занятий.

Книга содержит полный набор сведений о синтаксисе и концепции языка С++, необходимый для успешного анализа и составления эффективных программных кодов. Материал книги излагается последовательно и сопровождается большим количеством наглядных примеров, разноплановых практических задач и детальным разбором их решений. К каждой главе прилагается обширный список задач для самостоятельного решения, а также контрольные вопросы(Ответы на которые размещены на CD).

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

К книге прилагается CD с программными кодами, средой разработки программ на С++, примерами, ответами и многими дополнительными материалами.
Содержание



Часть II

Объективно- ориентированное  программирование в С++

Глава 7
Классы и объекты
Раздел 55
Раздел 56
Раздел 57
Раздел 58

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 8
Работа с объектами
Раздел 59
Раздел 60
Раздел 61
Раздел 62
Раздел 63
Раздел 64
Раздел 65
Раздел 66

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 9
Конструкторы и деструкторы
Раздел 67
Раздел 68
Раздел 69
Раздел 70

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 10
Перегрузка операторов
Раздел 71
Раздел 72
Раздел 73
Раздел 74
Раздел 75

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 11
Наследование и виртуальные функции
Раздел 76
Раздел 77
Раздел 78
Раздел 79
Раздел 80
Раздел 81
Раздел 82

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения

Глава 12
Шаблоны
Раздел 83
Раздел 84
Раздел 85
Раздел 86

Примеры решения задач

Резюме

Контрольные вопросы

Задачи для самостоятельного решения


В основу сайта положена информация из книги
"Самоучитель C++ с примерами и задачами. Книга + CD", СПб, Наука и Техника, 2010. - 480с.: ил.(+CD)
2010 - 2011 Все авторские права сохранены
Hosted by uCoz