Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.98/112: Рейтинг темы: голосов - 112, средняя оценка - 4.98
3 / 3 / 0
Регистрация: 09.10.2015
Сообщений: 15

Изучение C++: перспективы, рекомендации?

09.10.2015, 05:48. Показов 23593. Ответов 125
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет,

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

Многие вопросы, которые я задаю, уже здесь затрагивались неоднократно (наверное каждую неделю по несколько раз новички создают такую тему), но тем не менее я решил их задать

- Вопрос, набивший всем оскомину (огромных размеров такую): возраст. Мне 32. Не поздновато ли начинать в смысле карьеры? Знаю что об этом много написано, мнения разные, но хотелось бы услышать что-то для себя. Не то, что это все ради карьеры, но и она не последний фактор, и кривая обучения также будет подстраиваться под возможные карьерные перспективы.
С одной стороны, я человек очень близкий ко всему, что связано с компами, и даже учился в этой области,
хотя первое ВО с IT не связано (языковое/юридическое), второе ВО в IT - Interactive Multimedia Development for the Internet + Information Security, всего 2,5 года учился в этой области на дневном. Первый год PHP/MySQL/CMS/JS/HTML/CSS/Action Script/Media Editing and Design. Еще полтора года Infosec - Networking/PenTesting/Access Control Tech./CISSP Preparation/InfoSec Management/Project Management/Strategic IT + самостоятельно Raspberry PI projects и много чего еще по мелочам в этой сфере. На данный момент работаю IT Support/Security Spe******t. Умею системно работать головой и аналитично мыслить, по складу ума я технарь, умею дисциплинировано учиться, прекрасно знаю английский(могу его преподавать и иногда этим занимаюсь).

С другой.. Вижу часто вопросы типа "Мне 16, программирую с 13, не поздно ли?", и тогда у меня возникает диссонанс когнитивный, оттого, что возможно работодатели ожидают что в 25 лет человек буде уже иметь лет 7 опыта, а к 35 экспертом.
Я понимаю что все очень индивидуально, но меня скорее интересует взгляд на это потенциального работодателя. Взрослый дядька с длинным резюме (часть которого не последние позиции, не связанные с разработкой) хочет устроится джуниором и работать рядом 20-летними? Не странно ли ?

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

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

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

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

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

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

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

- Сертификация какая-либо по C++ - имеет ли смысл ? Прочитал что нет, но хотел бы услышать мнение публики.

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

Заранее спасибо за ответы.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.10.2015, 05:48
Ответы с готовыми решениями:

Перспективы языка
Доброго времени суток, Я изучал с++, с#, сейчас изучаю с(в университете), самостоятельно начал изучать obj-c(прочел книгу, имею только...

Какие перспективы у C++ в будущем?
Какие перспективы у си++ в будущем? Я слышал, что сейчас лучше уже начинать учить си шарп или java?

Noexcept - рекомендации по применению
У меня вопрос - есть ли какие то правила по применению этого ключевого слова на практике? Когда стоит пользоваться, а когда нет? Из всего...

125
30.03.2017, 14:41
Студворк — интернет-сервис помощи студентам

Не по теме:

Цитата Сообщение от nimazzzy Посмотреть сообщение
С++ - это велик трехколесный с дилдо вместо руля, а не крузак,
1) Вас не заставляют использовать то в чём нет потребности, или же дилдо пришло в плюсы из сишечки? :)
2) Придумайте лучше : https://stdcpp.ru/. Сегодня с введением constexpr, скоро шаблономагия на которую часто катят бочку коренные сишники, станет менее востребованной. И пока ещё, вы её можете улучшить. Вперёд.

Цитата Сообщение от nimazzzy Посмотреть сообщение
А, эт я знаю, не первый раз на форуме его вижу. У него вообще, по-моему, плюсы - больное место
Я к тому, что бы на всякий случай вы, не агрились, на яркие словечки от hoggy :), но он всё таки прав, хоть и категоричен.

0
30.03.2017, 14:43

Не по теме:

Цитата Сообщение от Nosey Посмотреть сообщение
1) Вас не заставляют использовать то в чём нет потребности
Видимо, ты никогда не работал в команде. Студент?
Цитата Сообщение от Nosey Посмотреть сообщение
Придумайте лучше
Уже есть Си.
Цитата Сообщение от Nosey Посмотреть сообщение
но он всё таки прав
В чем конкретно он прав?

0
30.03.2017, 14:49

Не по теме:

nimazzzy, Ну, понеслось, да?
hoggy, Простите, что говорил про категоричность и всё такое, не останавливайтесь, продолжайте общаться с этим человеком его же словами. Спасибо :)

0
Заблокирован
30.03.2017, 14:50
Цитата Сообщение от Nosey Посмотреть сообщение
что бы на всякий случай вы, не агрились, на яркие словечки от hoggy
Я не люблю дураков просто Позиция "если не нравятся плюсы, то ты их не знаешь" - это позиция глупого человека. Так можно про любую вещь сказать "не нравится лалала, ты просто не умеешь его готовить". Легко понять, что в этом hoggy неправ.
Ну, и если бы я не осилил плюсы, с работы бы меня уже давно выгнали.
Добавлено через 59 секунд
Цитата Сообщение от Nosey Посмотреть сообщение
Ну, понеслось, да?
О чем ты?
Цитата Сообщение от Nosey Посмотреть сообщение
hoggy, Простите,
Подлиза такой
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
30.03.2017, 14:50
Цитата Сообщение от Nosey Посмотреть сообщение
Сегодня с введением constexpr
Уже:
constexpr функции
constexpr переменные
constexpr лямбды
С++17:
if constexpr При этом неиспользуемые ветки просто выкидываются
constexpr() которая проверяет что ветка идёт в CT
0
 Аватар для Nosey
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
30.03.2017, 15:07

Не по теме:

Цитата Сообщение от nimazzzy Посмотреть сообщение
Я не люблю дураков просто Позиция "если не нравятся плюсы, то ты их не знаешь" - это позиция глупого человека.
О чём я и сказал : "не агритесь на острые фразы".
Цитата Сообщение от nimazzzy Посмотреть сообщение
О чем ты?
Это не та тема, где мы будем вас уговаривать попробовать плюсы. Поэтому оставим это.
Цитата Сообщение от nimazzzy Посмотреть сообщение
Подлиза такой
Просто пытаюсь быть воспитанным, ибо вы понятия не имеете, кто я такой, и я понятия не имею кто вы такой.



Цитата Сообщение от MrGluck Посмотреть сообщение
Уже:
Ага, но это первое пришествие, дополнения могут это дело скорректировать, но это всё в идеальном мире конечно. Т.е. больше тролинга в моей фразе было .
0
Заблокирован
30.03.2017, 15:15

Не по теме:

Цитата Сообщение от Nosey Посмотреть сообщение
Это не та тема, где мы будем вас уговаривать попробовать плюсы.
Чувак, тут немного в другом дело. Я их использую на работе уже более 10 лет каждый день :)



Добавлено через 5 минут
А так да, я теперь понимаю, что плюсы могут любить только люди, которые в них плохо разбираются. Они просто не видят их уродства, так как плавают по поверхности.
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
30.03.2017, 15:52
nimazzzy, не стоит быть таким категоричным и всё мерить по себе.

Добавлено через 56 секунд
Вы на ровном месте сейчас могли обвинить в некомпетентности приличное количество обитателей здешнего раздела.
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
30.03.2017, 17:23
Ferrari F1, то, что суденты (большая часть) просто не учатся - я в курсе.
Мы стараемся таких отсеять на 1-2 курсах.
Сейчас у меня на 3 курсе студенты в рамках лабов пишут:
- интерпретатор виртуальной машины
- отладчик
- ассемблер
- компилятор для миниязыка.
И еще параллельные потоки - тоже лабы.
Реально пишут - я проверяю.
Пишут плохо, коряво, но пишут.
По курсовым я пару раз в семестр устраиваю Code Review - все смотрим код, обсуждаем, рекомендуем чего поправлять.
Отмазка "работает же" - не проходит...
На кодах показываю, где паттерны применять.
Но студенты меры не знают - применяют, где нужно и где не нужно... )

Добавлено через 14 минут
nimazzzy, тут вы НЕ правы.
Плюсы - красивейший язык.
Как и Алгол-68, как и Лисп.
Как и Компонентный Паскаль.
И современный Фортран, кстати.
И исходный С - тоже. Книжка Кернигара и Ричи - это же поэма, а не книжка по программированию...
0
807 / 534 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
30.03.2017, 18:00
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
то, что суденты (большая часть) просто не учатся - я в курсе.
нее, нее. Студенты учатся, но эти знания держатся кратковременно (до конца сессии).
Что уж говорить о моменте выхода из стен универа?
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
30.03.2017, 18:18
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Плюсы - красивейший язык.
Далеко не без недостатков.
Раздельная компиляция позволяющая скомпилировать библиотеку заранее... А потом при использовании одной функции, прилинковать код всей библиотеки разом. Именно отсюда растут ноги у Hello world! загадочным образом раздувающихся на мегабайт. Причем, эту технологию почему-то упорно преподносят как плюс, а не рудимент времен пятидюймовых дискет.

Великолепный механизм исключений, начисто теряющий любую информацию о месте возникновения ошибки. Так сложно в конструкторе std::exception сделать stack backtrace, дабы метод what() показывал как минимум из какой функции ошибка полетела?

Гениальная стандартная библиотека шаблонов: std::fstream в 21 веке не понимающий wchar_t имена. std::iswalpha зависящий от текущей локали, причем локаль по умолчанию - C. Это, то есть, юникодная функция по умолчанию не понимает символов с кодами превышающими 127. std::map в который который год предлагают впилить splice, а воз и ныне там.

Ну и итераторы. Извините, но перегрузка operator++ в них выглядит по уродски.
C++
1
2
3
4
5
6
7
8
9
//what I expected
MyIterator::operator++(){value=value->next;}
//what I got
MyIterator&MyIterator::operator++()
{
    value=value->next;
    return*this;
}
//With four more lines!
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
30.03.2017, 18:27

Не по теме:

Цитата Сообщение от ValeryLaptev Посмотреть сообщение
я проверяю.
тут сидите и смотрите, чтобы не задавали вопросов по тем темам, которые вы задавали? :D
p.s. хотел бы поинтересоваться, много ли тут выловили своих студентов?



Добавлено через 6 минут
Цитата Сообщение от Renji Посмотреть сообщение
std::fstream в 21 веке не понимающий wchar_t имена.
с с++17 туда можно передавать std::filesystem::path, которая умеет в char, wchar_t, char16_t, char32_t.
Пруфы:
http://en.cppreference.com/w/c... ic_fstream
http://en.cppreference.com/w/c... /path/path
3
30.03.2017, 18:55

Не по теме:

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

детсадовская позиция.

0
296 / 125 / 106
Регистрация: 30.10.2015
Сообщений: 690
30.03.2017, 21:01
Цитата Сообщение от MrGluck Посмотреть сообщение
Хороший язык, который ещё лет 5 как минимум будет актуальным и приносить хорошие деньги.
0
3 / 3 / 0
Регистрация: 09.10.2015
Сообщений: 15
30.03.2017, 22:26  [ТС]
Цитата Сообщение от kylroma Посмотреть сообщение
ещё пару советов, которые мне помогли.
Спасибо большое за такое содержательное сообщение, почти как программа обучения для меня.
1
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
30.03.2017, 22:32
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Ferrari F1, то, что суденты (большая часть) просто не учатся - я в курсе.
Мы стараемся таких отсеять на 1-2 курсах.
Сейчас у меня на 3 курсе студенты в рамках лабов пишут:
- интерпретатор виртуальной машины
- отладчик
- ассемблер
- компилятор для миниязыка.
И еще параллельные потоки - тоже лабы.
Реально пишут - я проверяю.
Пишут плохо, коряво, но пишут.
По курсовым я пару раз в семестр устраиваю Code Review - все смотрим код, обсуждаем, рекомендуем чего поправлять.
Отмазка "работает же" - не проходит...
На кодах показываю, где паттерны применять.
Но студенты меры не знают - применяют, где нужно и где не нужно... )
Вы отличный преподаватель, побольше бы таких
0
3 / 3 / 0
Регистрация: 09.10.2015
Сообщений: 15
31.03.2017, 00:27  [ТС]
Цитата Сообщение от Юля_программист Посмотреть сообщение
Раз Вы хорошо знаете английский посмотрите
Знаю действительно хорошо, и благодарю за рекомендацию - обязательно гляну.

Хотя по-моему, важность знания английского для изучения программирования сильно переоценено, по крайней мере на мой нубский взгляд
0
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
31.03.2017, 01:12
Цитата Сообщение от tungsten Посмотреть сообщение
Хотя по-моему, важность знания английского для изучения программирования сильно переоценено, по крайней мере на мой нубский взгляд
Для начала изучения, а когда вы уже будете читать доку к какому-нибудь фреймворку, то английский понадобится хотя бы на уровне чтения.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
31.03.2017, 05:07
Цитата Сообщение от tungsten Посмотреть сообщение
важность знания английского для изучения программирования сильно переоценено
Это не так. Смотрите сами:
  1. Full beginner (A0) Всё, что на английском, Вы чаще всего просто обходите стороной. Очень редко Вы пытаетесь что-то понять в мануалах, долго гуглите и мучаете словарь, и так же редко Вам удаётся что-то понять. Чаще всего, Вы приходите к выводу, что всё это - зряшная потрата времени, проще на форуме спросить.
    .
  2. Elementary (A1) Почти как предыдущий вариант. Изредко на форуме Вы читаете чьи-то сообщения с выдержками из книг на английском или из стандарта, и радуетесь, что понимаете некоторые слова, а иногда даже целое коротенькое предложение. Вас это очень радует и тешит Ваше ЧСВ, но толку по-прежнему никакого. Если реально что-то нужно, Вы по-прежнему предпочитаете спросить на форуме, чем самому мучить со словарём мануал.
    .
  3. Pre-intermediate (A2) Вы можете читать доки! Ура. Теперь Вы обращаетесь на форум только когда Вас действительно прижало и не выдёргиваете по-пустякам из нирваны форумных гуру. Но Вы по-прежнему не берётесь почитать книгу в оригинале - Вам очень тяжёло одновременно пытаться понять, что же там написано по-английски, и, в то же время, пытаться усвоить новые для Вас концепции выбранного языка программирования. Если очень сильно прижмёт, Вы в состоянии худо-бедно поддерживать разговор в аське (или на англоязычном форуме). Но не в скайпе. Ведь разговор в аське позволяет по-быстренькому глянуть в гугл-переводчике незнакомые слова.
    Обязательный минимальный уровень для входа в интернациональную компанию.
    .
  4. Intermediate (B1) Вы можете позволить себе читать книги в оригинале. Это по-прежнему не так комфортно, как книги на русском, но вполне возможно. Особенно, когда перевода нет в принципе. Очень полезный бонус. К тому же, Вы в состоянии ответить на e-mail, написанный на английском, поддержать разговор с потенциальным работодателем, клиентом и коллегами не только в аське, но и в скайпе.
    Обязательный минимальный уровень для синьёров, работающих в интернациональных компаниях.
    .
  5. Upper-intermediate (B2) Вы свободно читаете, пишете, общаетесь "вживую". Вам, по большому счёту, без разницы - русский или английский. Вы одинаково хорошо усваиваете информацию на обоих языках. Для Вас открыты западные университеты, онлайн-курсы на английском, теперь Вы можете поехать на международную конференцию (в качестве слушателя). Для Вас открыты все дороги в плане учёбы. Для Вас открыты все дороги в плане работы. Для Вас открыты все дороги в плане обмена опытом. Для Вас открыты все дороги в плане фриланса.
    Обязательный минимальный уровень для тим-лидов и ПМ-ов, работающих в интернациональных компаниях.
    .
  6. Advanced (C1) То же, что и предыдущее, но с бóльшим словарным запасом, более глубоким знанием грамматики, меньшим количеством ошибок и более плавной речью. Вы можете писать статьи и книги, выступать с докладами на конференциях, обучать английскому языку не-носителей.
    .
  7. Proficient (C2) С таким уровнем не стыдно преподавать английский носителям языка (британцам, американцам).
5
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
31.03.2017, 07:57
GbaLog-, пару раз замечал. Но вопросы были серьезные.
Например, один ипацан задавал вопросы по работе с базой данных из Qt - чего-то у него не подключалось, как надо.

Добавлено через 5 минут
Renji, и на Солнце есть пятна. ))
Кто ж спорит, что есть проблемы. Но большинство из них - генетическое наследие С.

Лично для меня - это отсутствие нормальной модульности.
Линковка - это дело линкера, а не языка.
Вот если б была нормальная модульность - был бу не С++, а Компонентный С++... ))

А инкремент итератора - опять же наследие С - на итератор надели маску указателя.
Но люди, читавшие книжку Элджера С++ for real programmers - прекрасно все понимают.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.03.2017, 07:57
Помогаю со студенческими работами здесь

Многопоточность. А правдивы ли рекомендации?
Обычно советуют создавать количество потоков программы не более числа количества ядер процессора, т.к считается, что это то количество...

Рекомендации к коду: двусвязный список
Добрый день. пишу простую лабораторную работу, суть которой: двусвязный список. выскажите свое мнение по коду.

Ваши рекомендации, господа и дамы
Как всё было: Бродил по форуму, нашел тему (что то вроде) " получить число от 1 до 999, добавить в соответствии с полученным числом...

Игра 2048: рекомендации к написанию
Ребят, задали написать игру 2048 в c++, даже понятия не имею что делать(

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


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

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru