Дилемма выбора между C++ и Java

Здравствуйте. Введу немного в курс событий.
До поступления в ВУЗ я развлекался с Джавой, месяц-два, ничего серьезного, просто было интересно, на ООП завис. Когда началась учеба мы начали учить Си, относился я к нему с прохладной. А вот во втором семестре начали С++ ООП, что поначалу меня испугало, а со временем безумно начало восхищать. Сразу оговорюсь, что программирование у нас не профильный предмет и многое прошло мимо нас.
Год закончился, на втором курсе программирования не будет. И вот у меня возникает вопрос, а что учить то? То ли продолжить C++, то ли на Джаву вернутся. Джава по не понятным мне причинам нравится больше, а С++ кажется более серьезным языком, единственно что вызывает сомнения по поводу С++ — это сложность разработки, в том числе и под Андроид (сужу по наслышкам).

Ниже опишу в общих чертах, чего я хочу от языка:
1. Попробовать Андроид разработку (не знаю насколько это затруднительно если использовать C++ вместо Джавы);
2. Инди геймдев (безумно восхищен Нотчем и опять таки, не знаю насколько было бы накладно реализовать Майнкрафт на С++);
3. Разработка десктопного софта. В некоторой степени — это моделирование физ. процессов и программ которые считают «большие цифры», вообщем связаны с наукой (вторично и ради забавы);
4. Рассматриваю возможность подработки в ближайшее время.

Хабралюди, вся надежда на вас. Возможно список ожиданий расплывчатый, если будут вопросы — спрашивайте.
  • Вопрос задан
  • 43720 просмотров
Решения вопроса 1
gaelpa
@gaelpa
>> Джава по не понятным мне причинам нравится больше
Пишите на Java. Если захочется, на с++ сможете перебраться, хоть и не без труда.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 7
@Archet
Я, конечно, не специалист, и сильно больше, чем на ИМХО, не претендую. Но моё ИМХО — таки JAVA.

1. Под Android'ом JAVA — это все-таки более-менее нативная технология, что снимает массу проблем.
2. В плане инди-геймдева JAVA как минимум предлагает вполне себе жизнеспособную кроссплатформенность.
3. Не берусь, ибо не сталкивался.
4. Корпоративный сектор точно давно и прочно в JAVA заинтересован, так что тоже проблем быть по идее не должно.
Ответ написан
@rPman
Выбор между с++ и java (добавьте сюда .net c# ) это больше не выбор между языками программирования и синтаксическим сахаром, а выбор между фреймворками (библиотеками) которые идут вместе (или для) с этим языком как 'стандарт по умолчанию'.
Тем более эти языки на столько похожи, они вышли то и одного лона 'старого c++'!

А это значит выбирайте то что вам нравится, но будьте готовы просто выучить еще один фреймворк (и чуть чуть языковых конструкций), ведь программист, не готовый изучать что то новое… слабовато выглядит и заранее обречен на провал.
Ответ написан
jimon
@jimon
Начните с C++ и С, лучше сразу с C++11 и С11, а потом изучите Java если нужно будет, в обратном направлении слишком сложно будет, как говорится — чтобы хорошо уметь писать на Java\C# нужно знать С.
Ответ написан
Комментировать
rimpocha
@rimpocha
C++, Java и С# — все это одинаково серьезные языки. Не стоит переживать. Выбирайте, что нравится. Лучше — всего по-немного попробуйте. Добавьте к списку Python и Ruby.
Однако, коллега rPman прав. В реальной жизни важнее фреймворки. Я бы еще добавил важность шаблонов проектирования (паттернов).

Поищите курсы по языкам программирования на Coursera и edX: там очень много вкусного и полезного, часто есть русские субтитры. И кстати, да. Важнее всего — выучить английский! :)
Ответ написан
Комментировать
RussDragon
@RussDragon
C++, Lua
Как по мне, если вы нормально понимаете ООП в С++, то можете смело идти в Java, если вам она нравится, она действительно дружелюбнее по началу. С++ же дает гораздо больше средств работы с компьютером, нежели java. Думаю, Нотча любили бы еще больше, если бы Майнкрафт был сделан на С++. Тогда он бы скорее всего к этому времени, не требовал столько RAM для нормальной игры.
Ответ написан
Комментировать
ks_ks
@ks_ks
Java. И к Clojure присматривайтесь =)

У меня счас хороший знакомый программист который в прошлом ( и настоящем ) — C'шник,
изучает Android — пишет прогу, для моделирования жидкости.
Ещё он игрушку хочет написать на Android,
клон какой-нибудь…

Могу познакомить — вместе будете писать.)

А по каким критериям Вам Java больше нравится?
Ответ написан
@eXTreMeHawk
Если НЕ планируете заниматься низкоуровневым системным программированием и написанием драйверов, то ОДНОЗНАЧНО JAVA.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы