- PVSM.RU - https://www.pvsm.ru -
Недавно у нас на GeekBrains стартовал свежий курс "Профессия: разработчик C++ [1]". Программа позволит всего за 9 месяцев освоить этот непростой язык и стать специалистом уровня junior. А это непростая задача. К примеру, в школах и ВУЗах на изучение С++ уходит минимум 2 года, чаще 4-5. Чтобы показать из чего состоит этот нелегкий путь, мы схематично описали для вас основные этапы.
Для современных языков это может показаться парадоксальным, но классическое обучение языку C++ начинается с изучения нескольких других языков. Вы изначально должны привыкнуть к структурам программ и выучить основные понятия. Поэтому на первых занятиях вместо компьютера студенты используют листы бумаги, а вместо кодов — блок-схемы со стрелками.
Несмотря на универсальность подобного метода, его редко встретишь даже на первых занятиях по Java или C#, хотя там он тоже был бы полезен. Чаще всего алгоритмическое и блочное программирование проходят, когда студенты уже знакомы с синтаксисом. А вот в С++ это фундамент.
На следующем этапе мы наконец включаем компьютер и начинаем создавать простые программы на языках, которые не имеют прямого отношения к С и С++. Идея классического образования, как и в прошлом пункте: приучить студентов правильно создавать структуру, помнить о служебных символах, использовать «правильные» обозначения и оформление.
Когда Pascal и Basic полностью исчерпают себя, а для этого достаточно нескольких часов, можно понемногу перемещаться к C, дублируя заученный код в новом синтаксисе. Сортировки разными методами, работа со строками и массивами, калькуляторы, игры — все эти базовые упражнения и программы помогут сжиться с новыми знаниями.
В любом языке программирования надо начинать писать программы не в сложных IDE, а в простых универсальных редакторах. Notepad++ для этого отлично подойдёт, тем более, что название намекает на правильность выбора. Всё, что вам нужно сейчас, это подсветка синтаксиса и функция проверки. В студенческом образовании также практикуется написание кода на бумаге. Причина проста: экзамены по программированию в 21 веке всё ещё иногда сдаются без компьютеров.
Если у вас есть Linux (а если вы планируете стать программистом, то лучше установите его немедленно), то вопроса с выбором среды может вообще не стоять — просто откройте командую строку.
Любители олдскула могут попробовать установить себе на компьютер Borland C++, благо многие нынешние «крестоносцы» с теплотой и любовью относятся к этой серии (работать в ней реально удобно). Но для нормальной работы у вас есть незначительный выбор между Visual Studio и Qt Creator, в зависимости от задач.
На данном этапе остановим свой выбор на блокноте.
До тех пор, пока вы не напишите первое крутое приложение с кодом хотя бы десять листов, увлекаться графикой просто вредно. В командной строке можно реализовать кучу идей, от чатботов до RPG-игр, задействовав массу всевозможных библиотек и собственных знаний.
А потом на эту основу можно накладывать минимальные графические примочки, играть с физикой моделей, шлифовать моменты пересечений, наложений, отрабатывать взаимодействие с интерфейсом.
Когда и этот этап будет пройден, можно подключать серьёзные библиотеки и среды программирования, где многие пройденные ранее действия выполняются автоматически.
ООП — лестница от примитивной возни с кодом к комплексным структурам, лежащих в основе
таких продуктов, как Chrome, World of Warcraft и Linux. Также ООП является ключевой разницей между C и C++. В классическом образовании уделяется много времени изучению принципов ООП, ведь без досконального понимания, что это и зачем, вы будете создавать тонны лишнего и неправильного кода, пытаясь оправдать это личным удобством.
Так что на этом этапе придётся вернуться к процедурному и алгоритмическому программированию при помощи бумаги и ручки, потренировавшись чётко описывать объекты пути наследования и инкапсуляции. Совсем скоро это понадобится.
Одно дело просто выучить постулаты ООП, другое — научиться применять их на практике. Для этого попробуйте проделать следующие упражнения:
«Классическое» образование на этом этапе сразу мигрирует в сторону Visual Studio – к созданию простых GUI-приложений в самой популярной IDE. Однако в качестве промежуточного варианта полезно будет использовать Qt благодаря его встроенным графическим библиотекам, позволяющим полноценно задействовать все ваши свежеиспечённые познания в C++ и ООП.
Эту остановку полезно будет сделать любому изучающему C++ ради будущих профессиональных перспектив и общего развития навыков. Благо, в Qt есть отличный встроенный помощник и много руководств по созданию разных типов приложений, так что проблем с освоением быть не должно. Даже если дело касается продвинутых навыков.
GUI-приложения, чаще всего, это конечная остановка в ВУЗовском образовании. Ничего нового здесь студенты уже не узнают, скорее, привыкают к основному инструменту, окончательно закрепляют в сознании правильную структуру приложения и файлов.
Так как C++ невероятно востребованный язык почти во всех областях программирования, на этом этапе вы можете подумать, чем бы вы хотели заниматься в будущем. К примеру, если вы планируете работать с железом, то есть с микроконтроллерами, то придётся изучить библиотеки для работы с конкретными устройствами и средства отладки. Захотите работать в гейм-дизайне — путь лежит в Unity и схожие программы.
Эти 9 этапов не сделают из вас профессионала, но позволят более-менее осознать возможности языка и то, чем занимаются «крестоносцы». Вы можете попробовать преодолеть этот путь самостоятельно, а можете присоединиться к нам. Обещаем, это будет эффективнее и куда интереснее.
Автор: IliaBubnov
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/301456
Ссылки в тексте:
[1] Профессия: разработчик C++: https://geekbrains.ru/professions/cpp/?utm_source=media%7Chabr.com&utm_medium=media&utm_campaign=data_07_12_18
[2] Источник: https://habr.com/post/430694/?utm_campaign=430694
Нажмите здесь для печати.