Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 10.04.2018
Сообщений: 2

Изучение C++ после Java

10.04.2018, 17:58. Показов 2742. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Господа знатоки C++, нужна ваша помощь в выборе плана самообразования.
Дело тут у меня вот какое. Закончил я недавно ВУЗ и работаю сейчас java прогером, пишу веб-сервисы: spring, vertx, oracle, mysql, вот это вот все. И чувствую, что начинает меня это помаленьку задалбывать, потому что интересных для меня задач тут нет. Все, что пишут (и за что платят, конечно ) на java - это такие вот сервисы и бекенды, основная суть которых - гонять данные по сети да от БД к БД в разные стороны. Особо не разгуляешься, в общем.
Совсем другое дело C++ - тут вакансии гораздо интереснее и разнообразнее. И графику 2D/3D пишут, и обработку данных аудио/видео, CAD'ы и САПРы, да и встраиваемые системы и системы управления всякими железяками тоже весьма небезынтересны (а железяки я с детства люблю ) В общем, хотелось бы бросить пилить сетевые пакетогонялки на джаве и заняться задачами поинтереснее. Понятно, что для многих из этих задач нужно знать соответсвтующую матчасть, но специальность в вузе у меня была околоматематическая, так что при необходимости в нужном матане разобраться смогу за вменяемое время - по крайней мере, на 5 лет в изучение аналитической геометрии/алгебры/теории сигналов, или что там мне потребуется, не уйду.
Но начинать, думаю, надо все же с C++, потому что большая часть всего этого добра пишется именно на нем. В связи с этим мой вопрос - может кто-то уже проходил подобный путь и может поделиться собственным опытом, как наиболее эффективно изучать C++, с учетом опыта (не большого, чуть больше года) на джаве.
Сам я сейчас скачал книгу Липпман, Лажойе, Му "Язык программирования C++. Базовый курс. 5-е издание", начал читать помаленьку. Что можете сказать о этой книге, или может быть можете что-то другое получше посоветовать?
Также, думаю, неплохо было бы, и для опыта, и для резюме, поучаствовать в каком-нибудь opensource проекте. Буду благодарен за наводку, какому проекту требуется помощь, и при этом они без особых проблем принимают патчи от людей со стороны.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.04.2018, 17:58
Ответы с готовыми решениями:

Изучение C++ после полугода
Здравствуйте. Изучаю C++ полгода. Уже разбираюсь в WinAPI, DirectX, смогу создать трёхмерную игру, полноценные графические приложения, софт...

С чего начать изучение С++ после C#?
Здравствуйте, я долгое время писал на C#, но, из-за того что мне придется ехать на всеукраинскую олимпиаду по программированию, надо учить...

Изучение java после С
Здравствуйте. Приступил к изучению языка Java. Знаю нормально язык С и немного С++. Читаю книгу Thinking in Java 4th edition (философия...

6
129 / 65 / 16
Регистрация: 03.09.2015
Сообщений: 832
10.04.2018, 18:07
У меня, наверное, совсем необычный подход по изучению.
Сначала, загуглил "Основы c++". Выучил переменные, условия, циклы итд.
Затем шел в гугл и искал туториал по написанию того, что мне нужно. В моем случае, это был криптор.
Переписывал весь код вручную (там еще туториал был хороший, рассказывал что делает каждая команда, правда на англ).
Затем самостоятельно гуглил каждую команду которую не понимал.
Все само собой запоминалось и дальше я уже имел арсенал знаний с помощью которых я мог делать достаточно неплохие вещи для начинающего. А если что-то не знал, писал в гугле, например, "выполнение cmd c++" и смотрел как это делается.

Все, что для этого требуется:
1. очень много времени для практики
2. (Очень желательно) хорошее знание английского языка
1
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
10.04.2018, 20:30
Думаю в этот раздел (Литература C++) уже заглядывали ?
1
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
10.04.2018, 21:05
про самое главное - английский вам уже сказали,
начинать с языка, будучи уже состоявшимся программистом, можно ради хобби или чтобы освоить другую парадигму.
Если ориентированы на какую-то конкретную область - прокачивайте именно её, потому что длинный список "хотелок" - это ничего. Чтобы не вышло так что вы впустую потратили время на изучение, ненужного лично для вас языка.
Можете разобрать код интересных OS-библиотек, встретили незнакомую конструкцию - сели за справочники, прорешайте простые задачки с форума с её использованием и двигайтесь дальше.

А циклы и условия - везде циклы и условия.

Цитата Сообщение от ziqp Посмотреть сообщение
У меня, наверное, совсем необычный подход по изучению.
Да нет, один из классических.
Это как с программированием можно идти от низкоуровневого к высокоуровневого, а можно наоборот.
Точно также и с изучением. Кто-то вначале осваивает теоретическую базу затем робко усложняет практические задачи, а кто-то наоборот - изучает теорию с практикой, впоследствии натыкаясь на другие, более подходящие (идиоматические) способы сделать тоже самое.
1
0 / 0 / 0
Регистрация: 10.04.2018
Сообщений: 2
11.04.2018, 15:25  [ТС]
Цитата Сообщение от Почтальон Посмотреть сообщение
Думаю в этот раздел (Литература C++) уже заглядывали ?
Да, конечно, ознакомился.

Цитата Сообщение от S_el Посмотреть сообщение
Если ориентированы на какую-то конкретную область - прокачивайте именно её, потому что длинный список "хотелок" - это ничего.
Пожалуй да, соглашусь. В общем, попробую для начала пойти тем же путём, что и джаву в свое время изучал - запилю парочку своих проектов. Тут как раз на хабре недавно натыкался на серию статей по openGL, вот с нее и начну. Осталось придумать, что именно запилить
0
0 / 0 / 0
Регистрация: 11.05.2018
Сообщений: 3
22.07.2019, 22:00
Да, необычно. C++ идёт первым, а потом та же java. По C++ Лафоре у меня. Может на этот, или следующий Новый Год буду почитывать, попивая чай с малиной и укрывшись пледом. А по java у меня десятки источников. JavaRush научит javarush.
0
9942 / 2944 / 495
Регистрация: 05.10.2013
Сообщений: 7,993
Записей в блоге: 239
23.07.2019, 01:00
Цитата Сообщение от Ржавый_гвоздь Посмотреть сообщение
так что при необходимости в нужном матане разобраться смогу за вменяемое время - по крайней мере, на 5 лет в изучение аналитической геометрии/алгебры/теории сигналов
В компьютерной графике в основном нужен раздел математики "Линейная алгебра". Вектора, матрицы и операции с ними. На русском я никаких хороших книг не находил, зато на английском они есть:
Введение в физику:
Цитата Сообщение от Ржавый_гвоздь Посмотреть сообщение
Тут как раз на хабре недавно натыкался на серию статей по openGL
Я придерживаюсь мнения, что один наиболее эффективный и интересных способ изучать OpenGL и программирование в целом - это практика, написание программ для визуализации данных, построение математических графиков функций с подписями, демонстрация научных и инженерных процессов и явлений, написание простых игр с постоянным их улучшением и добавлением нового, что вы узнаёте из OpenGL, линейной алгебры и программирования. Загляните в блог этого человека, который пишет простые игры на OpenGL: https://www.cyberforum.ru/blogs/1448355/

Добавлено через 9 минут
Цитата Сообщение от Ржавый_гвоздь Посмотреть сообщение
Также, думаю, неплохо было бы, и для опыта, и для резюме, поучаствовать в каком-нибудь opensource проекте. Буду благодарен за наводку, какому проекту требуется помощь
Как правило, работают через Git и GitHub/BitBucket, поэтому нужно уметь на базовом уровне работать с Git. Если вы совсем не работали с Git, то для старта можете поискать курс ITVDN по Git. Там несколько коротких уроков, которые дают первоначальную базу, которую вы можете отработать до автоматизма на своих простых примерах, работая, например, с GitHub.

Я считаю, что не лишним будет начать изучать написание unit-тестов для своего кода, потому что часто это требуется. В C++ немного сложнее начать писать unit-тесты на популярных фреймворках типа: GoogleTest + GoogleMock или CppUTest + CppUMock, чем на Java, где поддержка unit-тестов идёт сразу с Eclipse, Netbeans и т.д. Но при желании можно освоить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.07.2019, 01:00
Помогаю со студенческими работами здесь

Изучение JAVA
Добрый день, уважаемые Java специалисы. Скажите пожалуйста, хочу начать изучать Java на курсах, нужно ли перед изучением Java знать язык C?

Изучение Java EE
Добрый день, уважаемые форумчане. Тут многие интересуются, с чего начать изучать Java, а мне интересно, как его продолжить изучать....

Изучение java
Добрый день всем :) Недавно начал изучать Java, до этого учил только паскаль, C# и чуть чуть C++. Читаю Г. Шилдта 9е издание 2015г. и...

Изучение Java
Привет всем, кто изучал JAVA что можно почитать или посмотреть, до этого программировал на php и C#. Не знаю может в будущем буду писать...

Книги по изучение java se
Здравствуйте. коротко: кому все читать лень идем в низ до вопроса Я изучаю язык java относительно недавно. начинал обучаться по книге...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru