Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/107: Рейтинг темы: голосов - 107, средняя оценка - 4.90
188 / 120 / 4
Регистрация: 23.01.2010
Сообщений: 1,320

План изучения С++

22.01.2012, 14:54. Показов 21016. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
План изучения С++ (СИ Плаз плаз)

Сегодня в этой теме я хочу поднять технологию изучения С++ от нуля до мастера. И хотелось бы чтобы знающие люди, которые учатся или проходят обучения в ВУЗ (Высших Учебных Заведениях) прокомментировали в какой последовательности они получали знания. Статья по сути банальная, но многие люди, которые изучаю данный язык, самостоятельно и не являющиеся студентами ВУЗов не знают, как подходить правильно к изучению.
Любое практическое дело должно базироваться на твердых и полных четко представляемых знаниях, которые, как правило, у начинающих студентов отсутствуют, а литература именуемая самоучителями хоть и присутствует в большом количестве, но не дает глубокого понимания сложных элементов программирования.
 Цель статьи:
o - расписать последовательность изучения языка программирования С++
o - дать четкие цели и представление о языке
o - ввести суть С++ с четко сформулированной информацией и практическими работами.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2012, 14:54
Ответы с готовыми решениями:

План изучения
Всем привет! Я знаю C++ на уровне ООП (классы, наследование, шаблоны, исключения, перегрузка операторов). Итак, вопрос: что мне стоит...

Объясните план изучения C++
мне один человек посоветовал такой план изучение С++(для самоучек) 1. Основа C++, с понятием об ООП. 2. Win32 API и параллельно...

План изучения
Всем доброй ночи! Знаю,глупый и всем надоевший вопрос,но как учить джаву? Посмотрел,что надо знать джуниору и глаза разбегаются от...

23
 Аватар для Gepar
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
22.01.2012, 15:15
Лучший ответ Сообщение было отмечено как решение

Решение

Не по теме:

Вы и правда думаете что кто-то будет писать вам статью в публицистичном стиле в этой теме? Программисты не журналисты же.


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

Добавлено через 36 секунд

Не по теме:

Цитата Сообщение от n971030 Посмотреть сообщение
(СИ Плаз плаз)
Цитата Сообщение от n971030 Посмотреть сообщение
которые учатся или проходят обучения в ВУЗ (Высших Учебных Заведениях)
фейспалмище

3
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
22.01.2012, 15:19
n971030, книги как раз-таки дают вполне чёткий план обучения, ему же, соответственно, и следуют. А то, что они не дают "глубокого понимания сложных элементов программирования", так это от того, что не в тех книгах эти элементы ищутся. Вот такой план предлагаю я:
Прочитать что-нибудь для новичков, например, Лафоре, Экклея, Дейтелов, Прату, Липпмана...
Читать всё для более высокого уровня, что попадётся - Мейерса, того же Эккеля, Страуструпа, Саттера... И это только по языку. По проектированию, например, Банду Четырёх (по паттернам), Буча, Фримен-Фримен-Сьерра-Бейтс (тоже по паттернам)...
Вот вполне чёткий план.
1
385 / 229 / 12
Регистрация: 06.07.2011
Сообщений: 512
22.01.2012, 15:27
1. Зашел в интернет. Попросил посоветовать самые признанные книги по программирвоанию.
2. Скачал/купил.
3. см. пост Gepar'а.
4. Параллельно с п.3 лазишь по форумам подобным этому, Хабру, и впитываешь решения чужих проблем. спрашиваешь сам, предлагаешь свои решения.
5. Параллельно с п.3 и п.4 нужно постоянно что-то писать самому. Лучше какой-то проект с четкой целью.
5. Когда какая-то база появилась, ищешь более продвинутые книги, книги, оторванные от языков (по проектированию ПО), изучаешь сторонние библиотеки, стандарты.
6. go to 2
1
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
22.01.2012, 15:48
В ВУЗах дают лекции, объясняющие книгу Б.Страуструпа, экзамен всего-лишь его понимание, практикум - написать некоторую программу(зачастую на линукс, иногда с использованием fork(), socket) и сдать её(варианты можно найти гуглём, они не секретные как правило). Ничего особенного, чего нет в книгах. Некоторые после этого курса продолжали писать на яве не зная С++. Практика - лучший учитель.

Лично мне больше помогает при написании программы наличие двух факторов:
1. мануал языка, на котором пишу. С++, ява, питон, без разницы. Онлайн/мануал с поиском быстрее бумажного и содержат более формальную и краткую информацию, поэтому зачастую они лучше. Однако, в книгах иногда написано почему так делать надо, а не иначе, а в интернете надо за этим лезть в историю форума как правило, что не быстро. Это лучше для начинающих.
2. Алгоритм того, что я делаю и как его сделать быстрым и эффективным. Или быстро и эффективно. Два разных понятия.
Развивайте стили программирования: смотрите как например пишут на LISP, PROLOG или Java - совершенно различные подходы, которые вдруг могут оказаться эффективнее и быстрее. Изучайте алгоритмы: Но это относится не только к С++, т.к. это - алгоритмы и стиль написания программ.

Основные правила:
На всё нужно время, за день на С++ мастером не стать.
Практика - лучший учитель.
Мастер С++ знает не только С++. ASM вставки, необычные решения - это не С++.
1
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
22.01.2012, 20:40
Цитата Сообщение от n971030 Посмотреть сообщение
И хотелось бы чтобы знающие люди, которые учатся или проходят обучения в ВУЗ (Высших Учебных Заведениях) прокомментировали в какой последовательности они получали знания.
То, что дают в ВУЗах ИМХО - не может быть примером для подражания. Есть ощущение, что программа обучения программистов (в моем вузе) писалась еще во времена, когда компьютер занимал целый этаж, а этажом ниже была расположена система охлаждения для этого компьютера.

Если интересно, то программирование нам давали в такой последовательности:
1ый курс - FORTRAN
2ой курс - Prolog, Lisp, C
3ий курс(сейчас) - assembler, Matlab. Еще есть предмет "ОС", где разрешили писать задания на С++ (если кто-то им владеет) или на bash'e
в следующем семестре будет С++ в рамках предмета "ООП".
Еще стоит упомянуть, что все это давалось в ничтожном количестве. Так же параллельно идет дискретная математика (не последний предмет для программиста).

Я начал осваивать С++ самостоятельно по книгам, не дожидаясь, когда нас начнут учить. Теперь вот с умным видом рассуждаю, о несовершенстве учебного плана в нашем вузе
1
Псевдослучайный
1946 / 1146 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.01.2012, 20:46
Весьма годный последовательный набор. После второго курса уже должно быть можно писать на чем угодно, просмотрев мануал по диагонали.
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
22.01.2012, 20:53
Цитата Сообщение от NoMasters Посмотреть сообщение
После второго курса уже должно быть можно писать на чем угодно
Имхо - я бы начал учить с С в связке с асмом. Потом как нибудь ООП вдолбить, а потом реально на чем угодно писать можно.
0
Псевдослучайный
1946 / 1146 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.01.2012, 20:58
Kastaneda, ага, особенно клево вдалбливать простейшие алгоритмы работы с массивами проценту, моментально путающемуся в указателях(ибо время ещё не пришло). Сначала нужно понять, как вообще составлять алгоритмы, имея десяток базовых операторов.
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
22.01.2012, 21:02
Цитата Сообщение от NoMasters Посмотреть сообщение
Kastaneda, ага, особенно клево вдалбливать простейшие алгоритмы работы с массивами проценту, моментально путающемуся в указателях(ибо время ещё не пришло).
Я ж говорю

Цитата Сообщение от Kastaneda Посмотреть сообщение
я бы начал учить с С в связке с асмом
После этого вопрос об указателях отпадет сам собой. Когда своими руками научишься блоки памяти перелапачивать.
Я после асма взялся за С, главу про указатели почти пролистал, только на синтаксис посмотрел.
0
go
22.01.2012, 21:16

Не по теме:

Начинать необходимо с Паскаля ;)

1
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,854
22.01.2012, 21:19
Цитата Сообщение от n971030 Посмотреть сообщение
я хочу поднять технологию изучения С++ от нуля до мастера.

Не по теме:

"Теория без практики мертва, а вечно зелено лишь древо жизни" (с) "Фауст" Гёте

0
22.01.2012, 21:35

Не по теме:

Цитата Сообщение от go Посмотреть сообщение

Не по теме:

Начинать необходимо с Паскаля ;)

Я знал, что кто-нибудь это скажет:)
Многие (если не сказать больше) советуют начинать именно с Паскаля. Думаю, это связанно с тем, что они сами с него начинали. Наткнулся как-то на интересную статью, в которой вроде не глупый дядька пишет, что с Паскаля начинать не в коем случае нельзя, т.е. это убивает в человеке программиста на корню. Там же он приводит вполне аргументированные доводы в поддержку своих слов. Я Паскаля не знаю, поэтому не могу присоедениется к его словам, как и опровергнуть их.
Люди советут тот язык, с которого они начинали. Я вот начал с асма, потом С, потом С++, потом, что придется) Если принять во внимание, что в итоге я чему-то научился (а я все же так считаю)), то можно с уверенностью сказать, что мой путь, как минимум, не ошибочный (или, как максимум, самый правильный))
К чему я это все? К тому, что наверное все согласятся с тем, что не существует идеального пути для обучению программированию. Как и абсолютно неправильного наверное тоже. С какого бока не подойди, все равно в итоге ты чему-то научишся, а чему - тут уже скорее от человека зависит, а не от "правильно" выбранного первого языка.
Вот, где-то так:)

0
22.01.2012, 21:39

Не по теме:

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

0
 Аватар для dickivs
48 / 48 / 11
Регистрация: 25.11.2011
Сообщений: 275
22.01.2012, 21:46
Также в интернете множество видеоуроков, которые неплохо подходят для новичков.
0
22.01.2012, 21:48

Не по теме:

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

0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
22.01.2012, 21:50
Ни в коем случае! Никаких видеоуроков!
2
22.01.2012, 21:56

Не по теме:

Цитата Сообщение от NoMasters Посмотреть сообщение
Сообщение от Kastaneda
это убивает в человеке программиста на корню
По-твоему такое вообще возможно? Что бы писать код достаточно уметь составлять и формализировать алгоритмы. Паскаль тут никак не помешает, а может даже и поможет отсутствием лишних заморочек. Моим первым языком с одинаковый натяжкой можно считать бейсик в школе и пыхи как первое осмысленное. Потом внезапно был ассемблер, но это уже другая история.
NoMasters, не в обиду вам, но все же процитирую
"Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации" Дейкстра
и после одной лабы:D на бейсике я с этим высказыванием согласен

0
go
22.01.2012, 22:04

Не по теме:

Kastaneda, начинать программировать с ассемблера я считаю большой ошибкой. Вам это удалось, дело случая... Я знаю много примеров, когда у человека не получалось написать элементарные программы на Си, хотя в паскале он был в состоянии их сделать. А все потому, что он знал только азы паскаля, и не умел толком составлять алгоритмы. Мне самому паскаль не нравится, но в нем понимаешь азы программирования. Не нужно заморачиваться с преобразованиями типов, выделением памяти и т.д. Все ошибки отсекаются на этапе компиляции(например, выход за пределы)... Но он не дает столько свободы, сколько С/С++. Про ассемблер много говорить не буду, но считаю, что он должен быть вторым-третьим языком. Не раньше!!!

1
22.01.2012, 22:08

Не по теме:

Цитата Сообщение от Jupiter Посмотреть сообщение
и после одной лабы на бейсике я с этим высказыванием согласен
Зато рисование из коробки) По-моему единственное, что может более-менее серьезно затруднить дальнейшее обучение — старт с формоклепания. Хотя хождения по граблям тех, кто начинает с высокоуровневых, тоже частенько заставляют прикладывать руку к лицу. И видео-уроки ещё, ага:)

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2012, 22:08
Помогаю со студенческими работами здесь

План изучения ассемблера
Всем привет! Начал недавно изучать ассемблер, пока многое не понятно и не привычно, но я стараюсь =) С каких задач лучше всего...

План изучения STM32F3
Привет всем), не могли бы мне помочь с планом изучения платы STM32F3 и в частности из изучением Cortex'a M4. За все советы буду очень...

План изучения J2EE
Добрый день, пытаюсь научиться азам Java for Web, после пойти работать. Много пытался начать, многое пробовал, получалось (Ant, tomcat,...

Подскажите правильный план изучения
Добрый день. Хочу обратится за помощью к знающим разработчикам. Самостоятельно начал изучать язык java, освоил основы и ооп, эти темы знаю...

Объясните пожалуйста план изучения Java
Я начинаю изучать Java , и просто никак не могу выбрать план изучения ... В разных книгах он ведётся по разному , основы ООП , работать с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Закрытая тема Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru