Изучение C++ — рекомендации, мнения, и возможно участие?

Привет,

Собираюсь заняться изучением C++. Точнее уже начал, хочу чтоб дело пошло эффективнее/быстрее.

Когда-то писал тут пост по изучению Java, и меня очень порадовал тот отклик, который я получил, он был очень полезен.
Так сложилось, что появилась необходимость (и желание) начать учить C++, и поэтому вновь обращаюсь к комьюнити.
Многие вопросы, которые я задаю, уже здесь так или иначе затрагивались, но тем не менее я решил их задать :)

- Сейчас использую Code::Blocks. Насколько правилен выбор компилятора/IDE ? Стоит использовать что-то другое? MS VS?

- На данный момент дочитываю Липмана и ко - C++ Primer . Что посоветуете дальше? У меня есть список литературы, который я нашел и здесь, и на stackoverflow, но хотелось бы услышать персональные мнения.

- Рекомендации о том, как и где практиковаться. Приложения для Windows Phone Store, андройд (ведь на C++ тоже возможно ?). Лабы/курсачи для студентов ? Небольшие игры, например с Unreal Engine ? Есть ли какие-то проекты open source, к которым можно присоединиться даже с минимальными знаниями? Еще что-то ?

- Насколько близок C++ для Ардуино к стандарту языка ?

- Порекомендуйте, как оптимальнее сочетать теорию/практику?

- Хочу найти преподавателя/репетитора/ментора, однако не совсем в классическом понимании. На данный момент мне продуктивной видится такая модель - занятия удаленно по скайпу. Ставим задачу - приложение, которое нужно мне самому. Разрабатываем вместе его структуру. Прорабатываем теорию. И вместе пишем, тестируем. Потом причесываем его для добавления его в портфолио.
Если у вас есть кого порекомендовать в качестве такого ментора, или считаете что сами можете выступить в этой роли - пожалуйста пишите на frees83@gmail.com .

- Хотел бы также найти единомышленников по изучению. Если у кого-то есть желание изучать/кодить вместе - пожалуйста пишите на frees83@gmail.com , вне зависимости от вашего текущего уровня знаний.

- Буду также рад услышать любые другие рекомендации/мнения опытных товарищей.

Заранее благодарю всех за ответы.
  • Вопрос задан
  • 931 просмотр
Пригласить эксперта
Ответы на вопрос 3
vt4a2h
@vt4a2h Куратор тега C++
Senior software engineer (C++/Qt/boost)
1) Я рекомендую QtCreator, т.к. это быстрая, легко настраиваемая и кроссплатформенная IDE с поддержкой плагинов. Qt и QML из коробки поддерживается.
VS не крокссплатформенная, да и убогая без решарпера. + у майкросовтовского компилятора порой очень специфичное толкование стандарта. Вообще не разрабатывайте под виндой (только если за это не платят много денег).
Clion -- сыро, медленно, на Java. Eclipse см. Clion + еще тележку оперативки надо :D
2) Если только по C++, то: Страуструп для основ, Седжвик для алгоритмов, Майерс, Саттер и Александреску чтобы понимать. Остальное практика + доки.
3) Выберите проект, вообще любой и пишите потихоньку, изменения публикуйте на гит. Мб вам там хотелось шашки написать, ну так напишите. Или куда-нибудь контрибьютьте. Гуглите, в общем, это не самое сложное занятие.
4) Не знаю, но вики говорит, что: "Язык программирования Ардуино является стандартным C++ (используется компилятор AVR-GCC) с некоторыми особенностями, облегчающими новичкам написание первой работающей программы."
5) Устройтесь джуниором, много читайте и спрашивайте. Есть еще вариант стажировок. Это и будет оптимальное решение: много работы, мало свободного времени и мотивация расти.
6) См. пункт 5. Не думаю, что кто-то вас будет учить бесплатно (платно скорее всего тоже, т.к. з/п нормальные а свободного времени мало), разве что вы в какой-то открытый проект будете контрибьютить.
7) -
8) Написал всё что хотел. Советую на пункт 5 обратить внимание. Ну и не забыайте что изучать надо C++11/14.
Ответ написан
@MiiNiPaa
Сейчас использую Code::Blocks. Насколько правилен выбор компилятора/IDE ?
Если очень хочется изучить настройки среды и разницу между различными сборками mingw, то это отличный выбор: MinGW придётся заменять. На 64-битный, с поддержкой последнего стандарта и главное с поддержкой стандартных тредов. Можно использовать Visual Studio: она бесплатна, нативна для Windows и адекватно работает с потоками в отличие от кривоватого порта winpthreads. Можно взять и другие IDE и поключить их к сборке clang'а. При этом держать визуалку всё равно придётся, так как clang под виндой использует её стандартную библиотеку.

Что посоветуете дальше?
Если чувствуете, что с литературой для новичков покончено, начните что-либо делать. После постановки задачи, ищите углублённую литературу по теме задачи.

Порекомендуйте, как оптимальнее сочетать теорию/практику?
Любая теория должна сопровождаться практикой. Узнали что-то новое? Используйте это где-нибудь, хоть в тестовой программе созданной специально для этого. Пробуйте пока полностью не поймёте как это работает. + Должна быть дополнительная практика где вы будете систематизировать полученные знания и использовать их вместе.
Ответ написан
Комментировать
tlito
@tlito
drupal, c++, seo
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы