Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 40, средняя оценка - 4.95
Softkhoz
368 / 10 / 1
Регистрация: 23.08.2013
Сообщений: 174
#1

Сторонникам самообучения - C++

09.09.2013, 20:01. Просмотров 4970. Ответов 92
Метки нет (Все метки)

Если вы изучали С++ не в учебном заведении, а самостоятельно, то очевидно у вас была книга-самоучитель. Какого автора вы прочитали в первую очередь?
Я заглянул в учебник создателя С++ и сразу столкнулся с трудностями. Самоучитель от Дейтела П. сначала показался простым, но потом я запутался в понятиях о классах. Некоторые советуют смотреть видеоуроки, некоторые утверждают, что это бесполезно. Что посоветуете вы?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2013, 20:01     Сторонникам самообучения
Посмотрите здесь:

Книга для самообучения C++ C++
проблемы самообучения, или медитация на тему...
C++ Builder Задания для самообучения
Посоветуйте литературу для самообучения
Математика для программирования (материалы для самообучения)
Книжки для самообучения, с чего начать изучение сетей, толковые книги Сети
PHP Folder Cleaner - приложение для самообучения
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Softkhoz
368 / 10 / 1
Регистрация: 23.08.2013
Сообщений: 174
10.09.2013, 14:06  [ТС]     Сторонникам самообучения #21
Маленькое отличие я уже обнаружил. Это знак операции отношения (не равно) для бейсика <>, для С++ !=
mzarb
-211 / 7 / 1
Регистрация: 14.01.2013
Сообщений: 141
10.09.2013, 17:03     Сторонникам самообучения #22
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Расскажу одну историю. Как-то давно мне нужно было написать модуль на php, но php я не знал и на то время из программирования был знаком только с версткой. Читать книги не очень хотелось, потому как не стояла задача изучить php и потратить на это минимум пару месяцев. В итоге нашел видео курсы Попова и когда пересмотрел их, то думал что уже знаю php. Но по сути там только управляющие конструкции и операторы некоторые. Так вот начал я кодить этот модуль и это был настоящий ад, потому что по каждой мелочи обращался за помощью на форум, а если пробовал найти непонятный для меня момент где-то в справочнике или блоге, то он становился ещё более непонятным, потому что тащил за собой гору зависимостей в виде знаний, которые должны уже были у меня быть из прочтения книг или ещё чего.
В конце концов я устал и хотел все бросить, но уж больно хотелось получить плюшки от модуля, так что начал искать похожий функционал в других модулях и после по частям его собирал методом тыка. На все это ушло 3 месяца и оставило очень неприятный осадок, после которого я ещё год не брался за программирование. А этого можно было избежать, потрать я эти 3 месяца на получение базы из книг, то смог бы написать этот простой модуль максимум за неделю и явно бы получил удовольствие в конце, а потом бы смог написать похожий модуль или лучше, тоже за неделю или меньше, а не за 3 месяца, потому что у меня уже были бы знания, а не случайно полученный результат.
Конечно есть те, которым не терпится получить результат на практике и пропустить теорию, а уже в процессе практики возможно разбираться с теорией, но это же путь мартышки, так как опять же есть большой шанс при обращении за теорией на практике, попасть на момент, который тянет за собой зависимости и для их понимания нужны будут основы и не только они, так как программирование - это не рисование картины с разных частей, потому что в итоге может не получиться их соединить вместе.
Прочтение книг само по себе может вызывать скуку и не желания дальше продолжать и это может происходить по многим причинам, не обязательно сразу говорить, что вам не нравится программирование, а вы почему-то думаете обратное или что вы не способны к программированию. Просто примите как должное, что процесс изучения программирования и написания программ - не всегда радужный и для начала нужно побороть лень и не отступать при первых трудностях, потому что каждый по разному прошел этот путь и стал на него тоже по разным причинам, но каждый тратил на него достаточно времени и если вы что то забываете или плохо понимаете, то это только значит что вы потратили мало времени.
Так что, если вы решили что программирование - то чем вы хотите заниматься сейчас и в будущем и вы хотите стать хорошим программистом, то заставьте себя учится по книгам, ведь так или иначе вы придете к ним, все зависит от того, насколько это болезненно будет. И ещё раз запомните самое главное - чем больше времени вы потратите на программирование, тем лучшем вы в нем будете.
elivin
65 / 65 / 1
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
10.09.2013, 21:13     Сторонникам самообучения #23
mzarb,
Цитата Сообщение от mzarb Посмотреть сообщение
это был настоящий ад, потому что по каждой мелочи обращался за помощью на форум, а если пробовал найти непонятный для меня момент где-то в справочнике или блоге, то он становился ещё более непонятным, потому что тащил за собой гору зависимостей в виде знаний, которые должны уже были у меня быть из прочтения книг или ещё чего.
Могу только посочувствовать. У меня никогда таких проблем не возникало. Может, вы не с той стороны начали? Я усваиваю материал на уровне понимания, как оно работает, а не на "абстрактном уровне". Кстати, минус учебников (может, только тех, что я видел) - они дают только абстрактный уровень.
Цитата Сообщение от mzarb Посмотреть сообщение
после по частям его собирал методом тыка.
А вот это не есть очень хорошо - если и копипастишь, копипасть осознано. Даже интересно стало, что же там было такого сверхсложного?
Цитата Сообщение от mzarb Посмотреть сообщение
А этого можно было избежать, потрать я эти 3 месяца на получение базы из книг, то смог бы написать этот простой модуль максимум за неделю и явно бы получил удовольствие в конце, а потом бы смог написать похожий модуль или лучше, тоже за неделю или меньше, а не за 3 месяца, потому что у меня уже были бы знания, а не случайно полученный результат.
"Если бы да кабы". Что ж, позволь и мне рассказать небольшую историю:
Был у меня однокурсник (точнее, и сейчас есть), у которого также была тяга к программированию. И он, также, как и вы, возлагал большие надежды на книги. Он занимался паскалем, я в то время - Си'шкой/C++ (зависело от задачи), но и паскаль воспринимал. Он иногда показывал мне свои "изобретения". Была у нас тогда дисциплина "Основы алгоритмизации и программирования", где вся группа усиленно учила паскаль (я с преподом договорился, что всё равно буду на Си писать). Так вот, на экзамене (считай, почти через год обучения) у него попалась такая задача:
Пользователь вводит набор ненулевых чисел, признак конца - нуль. Вывести сумму этих чисел.
Я бы не сказал, что он плохо знал паскаль, скорее наоборот, он знал его куда лучше меня (а мы с ним помогали всей остальной группе). Но то, как он решил её, меня просто убило - он объявил массив из 8 элементов, затем в цикле присваивал значение очередному элементу, прибавлял к итоговой переменной и проверял, не равен ли этот элемент нулю. Если равен, выходил из цикла. Ему просто повезло, что препод не стал смотреть на его код, ведь программа работала корректно, если вводить не более 7 чисел (и 0).
Я мог дать ему только один совет - больше практиковаться, а не упарываться конструкциями и сверхвозможностями языка
Цитата Сообщение от mzarb Посмотреть сообщение
если вы что то забываете или плохо понимаете, то это только значит что вы потратили мало времени
Зубрёжка, равно как и мой метод, подходит далеко не всем. Если я не воспринимаю материал в форме учебников, это не значит, что я мало потратил на них времени. Это на самом деле не так. То, что я воспринимаю материал в форме "рабочий код с комментариями и пояснение к нему" (то есть статьи в справочниках/блогах) намного лучше, чем "представьте себе, есть группа студентов, у каждого из них есть ФИО, номер студенческого, номер группы etc, каждый год номер группы меняется. Так вот ФИО, номера студенческого и группы - это данные, функция для смены номера группы - это метод. В виде кода это можно представить так: ..., а теперь представим, что современные студенты очень испорчены и могут менять пол. Добавим для этого метод: ... и ещё куча букв", вовсе не значит, что мне было лень вникать в то, что там понаписал автор. Просто дополнительные уровни абстракции для меня излишни.
Цитата Сообщение от mzarb Посмотреть сообщение
если вы решили что программирование - то чем вы хотите заниматься сейчас и в будущем и вы хотите стать хорошим программистом, то заставьте себя учится по книгам, ведь так или иначе вы придете к ним

Не по теме:

Приму как обращение лично ко мне


Даже когда я обращусь к книгам, это будет что-то вроде "Совершенного кода", а не "C++ для начинающих"/"ООП на C++"

Не по теме:

Посмотрел созданные вами темы в этом разделе. Уж извините, но вам рановато ещё давать советы "как стать хорошим программистом"



Цитата Сообщение от Softkhoz
Маленькое отличие я уже обнаружил. Это знак операции отношения (не равно) для бейсика <>, для С++ !=
Уже что-то. Обрати внимание на синтаксис. С VBA, увы, не знаком, но могу рассказать про различие между C/C++ и паскалем, с которым сталкивался, когда однокурсникам помогал (точка с запятой, про паскаль могу немного наврать, давно с ним не работал):
C++
1
2
3
4
if (a == true)
   func1();
else
   func2();
Pascal
1
2
3
4
if a = true then
   func1
else
   func2;
ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
10.09.2013, 22:26     Сторонникам самообучения #24
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от elivin Посмотреть сообщение
"Если бы да кабы". Что ж, позволь и мне рассказать небольшую историю: ...
Да эта история так фигня, пассажир видимо ничего не читал, задач никаких ни решал, потому и сделал кое как. Если б он хоть одну книгу по практике прочитал то умел бы писать программы.
Книги делятся на учебники где описывается просто язык и практика где уже показывается как что делать, там внимание не акцентируется на конструкциях языка.

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

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

Вообще обратись к такой науке как педагогика, и там почитай как нужно что то учить.

Добавлено через 4 минуты
Короче никто не будет так обучать людей ставить перед ними какие то задачи и чтобы они пытались их выполнить, ладно, меня это если честно беси, такие методики.
Croessmah
Модератор
Эксперт CЭксперт С++
12878 / 7264 / 810
Регистрация: 27.09.2012
Сообщений: 17,948
Записей в блоге: 2
Завершенные тесты: 1
10.09.2013, 22:26     Сторонникам самообучения #25
Цитата Сообщение от ninja2 Посмотреть сообщение
не охота мне школоту учить и доказывать
Да никто и не настаивает
Цитата Сообщение от ninja2 Посмотреть сообщение
спроси лучше в любого препода как тебе что нить изучить
Он посоветует ходить к нему на лекции и обязательно делать что он скажет
так как он всё знает и понимает лучше всех и вообще супер-пупер программер, поэтому и пошел преподавать
кого-то мне эта картина напоминает
coloc
10.09.2013, 22:35
  #26

Не по теме:

ninja2, о великий Гуру С++ в каждом вашем посте можно найти кучу лулзов. Продолжайте писать такие осмысленные ответы

ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
10.09.2013, 22:36     Сторонникам самообучения #27
Цитата Сообщение от Croessmah Посмотреть сообщение
Он посоветует ходить к нему на лекции и обязательно делать что он скажет
так как он всё знает и понимает лучше всех и вообще супер-пупер программер, поэтому и пошел преподавать
Да не за это, за то как что учить, в любого препода пусть спросит, там по математике, литературе да пофигу, в любого человека имеющего педагогическое образование, а не у кого попало, а то с такими методами пассажир 100% далеко не уедет.
Дам совет, для начала нужно научится учится, а потом уже что то учить.

Добавлено через 15 секунд
Цитата Сообщение от Croessmah Посмотреть сообщение
Он посоветует ходить к нему на лекции и обязательно делать что он скажет
так как он всё знает и понимает лучше всех и вообще супер-пупер программер, поэтому и пошел преподавать
Да не за это, за то как что учить, в любого препода пусть спросит, там по математике, литературе да пофигу, в любого человека имеющего педагогическое образование, а не у кого попало, а то с такими методами пассажир 100% далеко не уедет.
Дам совет, для начала нужно научится учится, а потом уже что то учить.
gray_fox
What a waste!
1256 / 1139 / 55
Регистрация: 21.04.2012
Сообщений: 2,361
Завершенные тесты: 3
10.09.2013, 22:39     Сторонникам самообучения #28
Цитата Сообщение от ninja2 Посмотреть сообщение
для начала нужно научится учится, а потом уже что то учить.
А что бы научиться учиться, учить(ся) не надо?
Croessmah
Модератор
Эксперт CЭксперт С++
12878 / 7264 / 810
Регистрация: 27.09.2012
Сообщений: 17,948
Записей в блоге: 2
Завершенные тесты: 1
10.09.2013, 22:40     Сторонникам самообучения #29
Цитата Сообщение от ninja2 Посмотреть сообщение
Да не за это, за то как что учить, в любого препода пусть спросит, там по математике, литературе да пофигу, в любого человека имеющего педагогическое образование
Для того, чтобы научиться садиться на шпагат не надо штудировать учебники. Достаточно тренировок.
ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
10.09.2013, 22:46     Сторонникам самообучения #30
Цитата Сообщение от Croessmah Посмотреть сообщение
Для того, чтобы научиться садиться на шпагат не надо штудировать учебники. Достаточно тренировок.
ну для начала нужно теорию почитать, какие упражнения делать и как он сядет на шпагат не зная теорию (упражнения), теория первична кругом, его нужно научить какие упражнения делать для начала, потом уже будет практика тренировки.

Добавлено через 3 минуты
Цитата Сообщение от gray_fox Посмотреть сообщение
А что бы научиться учиться, учить(ся) не надо?
В вуз поступай, там преподы тебя научат. Пусть тебя помучает этот вопрос.
Croessmah
Модератор
Эксперт CЭксперт С++
12878 / 7264 / 810
Регистрация: 27.09.2012
Сообщений: 17,948
Записей в блоге: 2
Завершенные тесты: 1
10.09.2013, 22:52     Сторонникам самообучения #31
Цитата Сообщение от ninja2 Посмотреть сообщение
ну для начала нужно теорию почитать, какие упражнения делать и как он сядет на шпагат не зная теорию
Хотите сказать, что первый человек севший на шпагат до этого читал учебники?

Добавлено через 31 секунду
Цитата Сообщение от ninja2 Посмотреть сообщение
В вуз поступай, там преподы тебя научат.
делать то, чего не надо
gray_fox
What a waste!
1256 / 1139 / 55
Регистрация: 21.04.2012
Сообщений: 2,361
Завершенные тесты: 3
10.09.2013, 22:56     Сторонникам самообучения #32
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от ninja2 Посмотреть сообщение
В вуз поступай, там преподы тебя научат.
Типа там учиться не надо? Ок)

Не по теме:

Цитата Сообщение от ninja2 Посмотреть сообщение
Пусть тебя помучает этот вопрос.
уже корчусь в мучениях)

ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
10.09.2013, 23:02     Сторонникам самообучения #33
Цитата Сообщение от Croessmah Посмотреть сообщение
Хотите сказать, что первый человек севший на шпагат до этого читал учебники?
Я хочу сказать, что первый человек мб за несколько лет сел, а тот который прочитал за год, так что есть разница, нужно делать так как положена, что бы был результат, а не как папало.

Время нужно экономить, жизнь коротка .

Зачем экспериментировать, когда можно прочитать инструкцию (учебник) и сделать так как написано в инструкции !!!
Croessmah
Модератор
Эксперт CЭксперт С++
12878 / 7264 / 810
Регистрация: 27.09.2012
Сообщений: 17,948
Записей в блоге: 2
Завершенные тесты: 1
10.09.2013, 23:10     Сторонникам самообучения #34
Цитата Сообщение от ninja2 Посмотреть сообщение
когда можно прочитать инструкцию (учебник) и сделать так как написано в инструкции !!!
а как же свобода и творчество?
Да и еще - опыт не пропьешь если доходишь до чего то сам, то это намного лучше запоминается и не забывается.
elivin
65 / 65 / 1
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
10.09.2013, 23:29     Сторонникам самообучения #35
Цитата Сообщение от ninja2 Посмотреть сообщение
Да эта история так фигня, пассажир видимо ничего не читал, задач никаких ни решал, потому и сделал кое как.
Прям отличный аргумент. Я ясно сказал - он больше теорией упарывался, но и практикой немного занимался (помимо учебников). Поэтому его вариант решения можно назвать "неполным", а не "абсолютно неверным" (до 7 элементов же работает).
Цитата Сообщение от ninja2 Посмотреть сообщение
чем больше книг вы прочитаете, чем больше заданий сделаете, тем лучше будете знать
Скажи честно - ты тролль или действительно так думаешь?
Цитата Сообщение от ninja2 Посмотреть сообщение
не охота мне школоту учить
Цитата Сообщение от ninja2 Посмотреть сообщение
оказалось народ даже учиться не умеет
Цитата Сообщение от ninja2 Посмотреть сообщение
спроси лучше в любого препода как тебе что нить изучить
Цитата Сообщение от ninja2 Посмотреть сообщение
разных которые не компетентны в вопросах обучения
Цитата Сообщение от ninja2 Посмотреть сообщение
Дам совет, для начала нужно научится учится, а потом уже что то учить.
Цитата Сообщение от ninja2 Посмотреть сообщение
как он сядет на шпагат не зная теорию
Цитата Сообщение от ninja2 Посмотреть сообщение
В вуз поступай, там преподы тебя научат.
Ох, лол! Давно я так не смеялся. Ты реально думаешь, что препод, которого когда-то учили, как вдолбить группе студентов дисциплину (хотя бы на удовлетворительном уровне), которую он просто повторяет из года в год, лучше меня, наблюдающего за собой (эффективность различных методов обучения, реакции на различные ситуации etc) последние лет 8, знает, какой метод обучения мне лучше подходит?

Цитата Сообщение от ninja2 Посмотреть сообщение
который прочитал за год
Когда-то садился на шпагат, делал упражнение "мостик из положения стоя". Научился за 1-2 недели. Без всякой теории. Правда, я тогда совсем ещё мелким был и это было легко. Сейчас уже не могу.

Цитата Сообщение от ninja2 Посмотреть сообщение
Зачем экспериментировать, когда можно прочитать инструкцию (учебник) и сделать так как написано в инструкции !!!
С таким лозунгом прямым ходом на завод, за станок (без ЧПУ) и следовать схемам деталей

Цитата Сообщение от Croessmah Посмотреть сообщение
если доходишь до чего то сам, то это намного лучше запоминается и не забывается.
Краткое описание моего метода, благодарю.

Не по теме:

Мне одному кажется, что ninja2 воспринимает моё описание того, как я самообучаюсь, как рекомендацию? Или, что ещё хуже, как "универсальную чудо-методику"?

Croessmah
10.09.2013, 23:32
  #36

Не по теме:

Цитата Сообщение от elivin Посмотреть сообщение
Или, что ещё хуже, как "универсальную чудо-методику"?
не одному

MousePro
49 / 30 / 1
Регистрация: 25.04.2013
Сообщений: 366
10.09.2013, 23:55     Сторонникам самообучения #37
Холивар
ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
11.09.2013, 00:04     Сторонникам самообучения #38
Цитата Сообщение от elivin Посмотреть сообщение
Краткое описание моего метода, благодарю.
Вообще твой метод это эксперимент (можно сказать изобретение велосипеда). Конечно есть такой метод "метод тыка", но не все время им пользоваться.

Ладно я так смотрю тут кому как нравится так и учить. Есть конечно правила по которым правильно нужно делать, есть возможно исключения. Короче будем считать кто как хочет так и ***чит. Походу это из этого разряда . Но я своего мнения не поменяю, теория затем практикуй теорию.
voral
392 / 372 / 50
Регистрация: 16.03.2008
Сообщений: 1,861
11.09.2013, 00:27     Сторонникам самообучения #39
Цитата Сообщение от ninja2 Посмотреть сообщение
Короче не стесняйся ничего, любые методы обучения будут полезны, любые материалы, короче знаний не убудет если ты какой нить видеоурок посмотришь, наоборот лучше материал разберешь.
С видеоуроками взятыми из сети надо быть поаккуратней (причем не важно платно или бесплатно). Я искал уроки для сына (из меня плохой педагог). Нашел некоторые.... "Учителей" там, мне кажется, любой первокурсник профильного ВУЗа в щепки разнесет за пургу глупости.

Добавлено через 6 минут
Цитата Сообщение от elivin Посмотреть сообщение
Originally Posted by Croessmah
если доходишь до чего то сам, то это намного лучше запоминается и не забывается.
Краткое описание моего метода, благодарю.
А теперь совместите этот метод с обучением по программе в ВУЗе. Не надо думать, что ВУЗ это панацея и сделает из любого дауна профи. Но и самоучка даже реально старающийся - тоже не то. Да все верно: доходишь до всего сам, лучше запоминаешь и т.п. Но есть одна беда: есть шанс пропустить, что то важное.

При этом, кто вам мешает учась в профильном ВУЗе доходить до всего самому, копать "глубже и ширше"? Да ни кто. Но это точно сэкономит время в будущем.

PS Сам самоучка.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.09.2013, 09:19     Сторонникам самообучения
Еще ссылки по теме:

Посоветуйте литературу для самообучения
Apache camel, Spring: нужна информация для самообучения Java EE
C# По поводу литературы и самообучения

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

Или воспользуйтесь поиском по форуму:
scotty
28 / 28 / 1
Регистрация: 09.09.2012
Сообщений: 131
11.09.2013, 09:19     Сторонникам самообучения #40
Да, большинство людей самоучки. Но всё равно кажется без хорошей мат базы из унвиера будет тяжело проргаммеру если его возьмут на высокую должность( по написанию серверных частей, алгоритмизации и тд). В ту очередь что обычный офисный софт может писать каждый( ну я так надеюсь )
Yandex
Объявления
11.09.2013, 09:19     Сторонникам самообучения
Ответ Создать тему
Опции темы

Текущее время: 18:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru