Что учить с или с
Перейти к содержимому

Что учить с или с

  • автор:

Язык программирования С++: чем он отличается от С, где его применяют и подходит ли он для старта

Язык программирования С++: чем он отличается от С, где его применяют и подход. главное изображение

C++: что это за язык, как он появился и какие у него преимущества

В 1980-х годах датский программист Бьерн Страуструп моделировал распределение вызовов между телефонными станциями. Работал он на языке С, похожем на машинный код в виде инструкций из двоичного кода.

Язык С не устраивал Страуструпа: был слишком медленным и не поддерживал объектно-ориентированное программирование — то есть не мог представить программу как набор объектов, не был понятным и наглядным.

Тогда Страуструп решил усовершенствовать С, скрестив его с другим ретро-языком Simula. В C++ появились классы, строгая проверка типов, inline-функции и другие элементы, которые упрощают и ускоряют программирование.

Сначала усовершенствования воспринимались просто как надстройка над базовым языком. Но очень быстро «С с классами» стал надежным рабочим инструментом для миллионов разработчиков.

Бесплатные курсы по программированию в Хекслете

  • Освойте азы современных языков программирования
  • Изучите работу с Git и командной строкой
  • Выберите себе профессию или улучшите навыки

  • Скорость. С++ обрабатывает данные быстрее большинства высокоуровневых языков типа Python.
  • Кроссплатформенность. В отличие от многих языков, в том числе от еще более высокоуровневого С#, С++ не зависит от платформы: разработку можно легко перенести с одной операционной системы на другую.
  • Универсальность. С++ поддерживает множество стилей программирования, например, процедурное программирование, объектно-ориентированное программирование. Также С++ предоставляет абстракцию данных. Благодаря этому его можно использовать для решения практически любых задач».

Читайте также: «История IT. 1970: События, люди, технологии»: Павел Калашников про запуск UNIX-времени, создание Pascal и патент на компьютерную мышь

Что пишут на С++

На C++ создают высоконагруженные приложения, драйверы, графические стандарты и игры. Например, на С++ написана система управления базами данных MySQL — основа для множества высоконагруженных приложений, — главные продукты Microsoft, культовые игры Counter Strike и World of Warcraft.

На С++ пишут код, который должен работать быстро и надежно, поэтому язык часто является основой для балансировщиков нагрузок на серверах и сложных графических алгоритмов. На C++ можно написать код для GPU — графического процессора. Так, например, создаются шейдеры для игр и графического ПО: они параллельно запускаются на GPU и позволяют без задержки выполнять сложные вычисления.

На С++ можно писать сложные, нетривиальные алгоритмы — для этого у языка есть огромная библиотека STL (Standard Template Library), где реализована большая часть алгоритмов и структур данных. Иногда С++ используют, чтобы оптимизировать код, добавить ему скорости и производительности или настроить приложение под конкретные платформы.

«Несмотря на универсальность, у языка есть и свои ограничения. Например, на С++ неудобно обрабатывать логи — файлы с информацией о действиях в программе — или собирать серверную статистику. Писать алгоритмы для машинного обучения или серверы для обработки запросов тоже будет сложно: в первом случае больше подойдет Python с большим количеством фреймворков, во втором — Java или C#».

Существует миф, будто С++ подходит только для сложных приложений, потому что даже простые операции, написанные на нем, выглядят как сложные команды. Но эти проблемы легко решить благодаря огромным библиотекам с открытым исходным кодом по С++, которые содержат много вспомогательных функций и серьезно упрощают работу. Поэтому писать на С++ можно что угодно: и большой высоконагруженный сервис, и несложные программы для вычисления площади или решения систем алгебраических уравнений.

Что нужно знать разработчику на C++

«Если вы планируете карьеру С++ разработчика — учите общие алгоритмы и структуры данных. Без них не обходится ни одно собеседование.

Если захотите писать код на С++ и заниматься сложными вычислениями, придется разобраться в параллельном программировании, когда команды выполняются одновременно несколькими процессорами. Также нужно будет изучить открытый стандарт для распараллеливания OpenMP. Инженерам по разработке ПО важно знать дискретную математику, статистику, алгоритмы.

Еще одно направление развития — компьютерная графика и геймдев, где нужно писать шейдеры и OpenGL. Здесь пригодится знание сопряжений с OpenCL — фреймворком для параллельных вычислений в графических процессорах — или CUDA, компилятора с расширениями, необходимыми для написания кода на GPU».

Читайте также: Что нужно знать программисту перед собеседованием и как успешно его пройти

Подходит ли C++ для начинающих

Есть еще один не менее распространенный миф о С++. Говорят, что это сложный язык, который не подходит для старта в профессии.

Легко понять, почему его называют непростым. Вот пример классической программы «Hello, World!» на С++:

//include using namespace std; void function_name ()  cout  <"Hello, world"  <endl; > int main()  function_name(); // Вызов функции return 0; > 

А это пример кода на Python:

print('Hello, World!') // => Hello, World! 

Вот что говорит о сложности языка создатель языка Страуструп:

«C++ действительно непрост, и чтобы научиться его использовать, необходимо приложить определенные усилия. Но людям вообще хочется невозможного: еще более простого языка, с еще большим количеством фич и сохранением работоспособности существующего кода».

С++ может стать отличным стартом в IT, но только если вы готовы приложить усилия. В отличие от многих высокоуровневых языков — Python, Java — он не такой «удобный». Код не читается интуитивно, приходится самому работать с памятью: следить, чтобы не было утечки данных и освобождать место для работы программы. Для этого сначала нужно разобраться с основами устройства компьютера.

Но усилия многократно окупаются ростом уровня подготовки. С С++ можно начинать, если вы настроены серьезно и готовы копать глубоко. Этот язык даст отличную базу, которая поможет уверенно двигаться вперед и решать проблемы не только на уровне кода.

«На мой взгляд, C++ — оптимальный язык для старта, потому что он дает базу. Если человек хочет быть разработчиком и разбираться в этой теме глубоко, то не стоит начинать с языков с низким порогом вхождения, таких как Python или JavaScript.

Конечно, на их основе быстрее можно научиться программировать. Но из-за простоты этих языков можно легко упустить важные вещи и не знать в итоге, как устроена память, адресация и многое другое. Это сложно, но важно. По моему опыту, людям, которые начинали, скажем, с Python, потом сложнее глубоко погружаться и разбираться, почему программа так и не работает».

Можно ли стартовать сразу с С++, не изучая С

Эта тема — предмет вечных дискуссий в комьюнити. Одни — и в их числе сам Страуструп — говорят, что С учить не обязательно. Вполне можно стартовать сразу с С++, где не нужно работать напрямую с символами и памятью и тратить время на сложности, с которыми пришлось бы возиться в С.

Чтобы увидеть разницу, посмотрите, как выглядит на С создание email-адреса:

char* compose(const char* name, const char* domain)  char* res = malloc(strlen(name)+strlen(domain)+2); // место для строк, '@', и 0 char* p = strcpy(res,name); p += strlen(name); *p = '@'; strcpy(p+1,domain); return res; > 

А вот как это же действие выглядит на С++. Никаких сложных операций с символами и памятью:

string compose(const string& name, const string& domain)  return name+'@'+domain; > 

Другая точка зрения: на примере С лучше разбираться в базовых теоретических вещах, поэтому для тех, кто «копает глубоко», лучше подойдет последовательное изучение обоих языков.

Посмотрите, как разработчики решают задачу из олимпиадного программирования на языке С пятью разными способами. Судя по их решениям, кажется, что зная С, можно потом без проблем выучить многие другие языки — настолько хорошую базу знаний дает этот язык.

«Вопрос в том, чего вы хотите достичь. Если нужно глубоко разобраться в теме, то лучше сначала изучить C. С его помощью можно разобраться с базовой архитектурой компьютеров и теоретическими основами, включая побитовые операции, обращение с динамической памятью и числами с плавающей точкой. Мы обычно преподаем именно так: даем фундамент, а на второй год изучения переводим студентов на С++ с его особенностями и фишками».

Что популярнее: С или С++

Как С, так и С++ уже который год стабильно входят в топ-5 самых популярных языков. Причем одни индексы оценивают их по отдельности, другие включают в общую категорию.

Например, по данным индекса TIOBE в ноябре 2022 года С находится на втором месте, уступив самому популярному языку в мире Python. С++ отстал от С на два пункта и занял четвертое место.

В исследовании Stack Overflow за 2022 год, наоборот, С++ находится на шестом месте, а С — на седьмом.

А вот в индексе PYPL оба языка попали в одну категорию и находятся на четвертом месте, уступая другому родственному языку — C#.

Изучите основы языка C У Хекслета есть платформа для изучения основ программирования с нуля — Code Basics. Пройдите бесплатный курс по изучению языка С. Обучение на Code Basics начинается с азов, информация структурирована и подается от простого к сложному.

Сколько зарабатывает разработчик С++

На С++ пишут практически во всех крупных компаниях, поэтому он может стать хорошим инструментом для карьерного роста.

Уровень зарплаты зависит не только от опыта, но и от знания фреймворков, алгоритмов, библиотек. Исходя из вакансий , опубликованных на HeadHunter, в среднем джуниор-разработчик может претендовать на зарплату 120-150 тыс. рублей, а мидл- и сеньор-разработчик — от 200 тыс. рублей.

Как и с чего стартовать в С++: книги и ресурсы

Перед погружением в язык изучите базовую теорию по объектно-ориентированному программированию — это поможет быстрее погрузиться в тему.

Для тех, кто решит начать с изучения языка С:

  • Герберт Шилдт « Полный справочник по С »

А если захотите стартовать сразу в С++, пригодятся книги:

  • Герберт Шилдт « Полный справочник по C++ »
  • Бьерн Страуструп « Язык программирования C++ »
  • Бьерн Страуструп « Программирование. Принципы и практика использования C++ »

В процессе изучения языка не забудьте про библиотеки STL и BOOST:

  • Питер Нортон Скотт Мейерс «Эффективное использование STL»
  • Николай Джосьютис «C++ Стандартная библиотека. Для профессионалов»
  • П. Плаугер, А. Степанов «STL. Стандартная библиотека шаблонов C++»

А еще здорово помогут:

  • Сайт стандартизации С++
  • YouTube-канал о С и С++
  • Русскоязычное сообщество разработчиков

Бесплатные курсы по программированию в Хекслете

  • Освойте азы современных языков программирования
  • Изучите работу с Git и командной строкой
  • Выберите себе профессию или улучшите навыки

Что выбрать C++ или C#? С чего лучше начать?

Что выбрать C++ или C#? С чего лучше начать?

Между собой оба языка очень похожи, при отсутствии опыта разобраться в различиях очень сложно. Статья поможет расставить всё по своим местам и укажет верный язык на основании поставленных задач.

Большинство программистов утверждают о необходимости начала изучения чистого C, но моё мнение – это пустая трата времени, которая не оправдается в будущем. Нет смысла изучать языки, которые уже давно устарели и были заменены на более перспективные, функциональные и интересные. Устаревшие языки не имеют нововведений, они практически не поддерживаются, а вакансии вовсе не появляются на различных биржах.

Единственная сфера использования – поддержание работоспособности проектов, которые ещё не перешли на обновлённые языки. Если проект качественный, он в скором времени обновится, иначе будет постепенно терять популярность, соответственно, все равно нет перспективы развития. При желании заняться изучением нового языка стоит предпочесть C++ или C# .

Особенности C#

После пропуска большого этапа «обучения» на Си , можно задаться вопросом куда же всё-таки направляться и какое состояние в сфере программирования на C# . При выборе этого языка стоит помнить, что программист строго привязан к операционной системе Windows, можно даже не учитывать преимущества Mono Develop, так как основной недостаток – полная зависимость от дальнейших действий Microsoft.

В большей части вакансии C# связанные с Asp.net – это веб разработка и всё тому подобное. Здесь уже выбор каждого. В отношении обучающего материала лучше сразу начинать с Шилдта, его способ описания ООП достаточно понятен и ясен, хотя и сам язык не вызывает особых сложностей, особенно если есть хоть какие-то знания. После его прочтения стоит перейти к Троелсену, который позволит почувствовать фундамент под ногами и даст более-менее приличные знания. После базового освоения языка можно дополнить информацию с помощью Рихтера, который детальнее раскроет особенности работы с .NET платформой.

Достоинства C++

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

С++ уже позволяет писать программы, которые могут работать на разных платформах, с этой целью разработан Qt .

В отношении методичной литературы стоит посоветовать Страуструпа, его книга представлена в форме справочника, которая хорошо знакомит с принципами языка и методами работы. Когда с ним будет покончено можно перейти к Саттеру и Мейерсу, но для закрепления материала нужно обязательно использовать практические навыки. Этого уже достаточно для понимания языка выше среднего.

Не относится к теме статьи, но стоит также присмотреться к языку Java .

Если судить в целом, то все языки представляют собой только инструмент. Правильное использование – это залог успеха, состав мозгов и способ мышления помогают добиваться впечатляющих результатов всегда. Вовсе не обязательно изучать языки наизусть, напротив, заучивание даже плохо, достаточно всего лишь понимать принципы работы. Чтобы нам не углубляться в алгоритмы, стоит изучить книгу Кормена.

У каждого языка различаются сферы использования. Если акцент ставится на написание игр, лучше предпочесть С#, ведь язык применяется в основе распространённого движка Unity . Он позволяет создавать игры как с 2-мерной графикой, так и полноценные 3D. В противовес можно сказать, что С++ применяется в основе Unreal Engine , он отличается большей мощностью и требуется для написания масштабных игр для ПК.

Сравнение языков

1. Скорость написания

C# обеспечивает быстрейший старт в сфере программирования, прототип можно создать значительно быстрее. Если в приоритете лежит скорость изначальной разработки, стоит выбирать C#, который выигрывает у С++.

После создания инфраструктуры, подбора основных методов работы, подключения, изучения библиотек и настройки билда скорость приблизительно выравнивается, значительного преобладания на одном из языков не отмечается.

Вывод следующий, если цель стоит в создании небольшого проекта с малым бюджетом, стоит выбирать C#, так как это позволит сократить время и затраты. Для создания продолжительных, крупных проектов преимущество будет незначительным.

2. Кроссплатформенность

В отношении кросплатформенности С++ сильно превосходит конкурента, хотя и есть определённые оговорки. Придётся прибегнуть к дополнительным затратам и между некоторыми платформами отмечается бинарная несовместимость.

C# не кросплатформенный, существует разработанное решение со стороны на .net, оно позволяет связывать сразу несколько платформ. Изначально планировалось создание языка для кросплатформенного кодинга, но с течением времени направление развития было изменено.

Сейчас под Windows разработана достаточно полноценная инфраструктура на .net, а в остальных платформах такого решения не было запущено.

3. Библиотеки

Выбор между библиотеками можно сделать в пользу С++, так как не только их количество больше, но и ассортимент качественнее. За длительную историю разработки удалось достичь хорошей оптимизации и было устранено большее количество недочётов. Многие библиотеки находятся в открытом доступе, могут использоваться на разных платформах и имеют открытый код.

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

Дополнительным минусом можно выделить формирование и переопределение основных типов данных. В множестве библиотек С++ возникает необходимость создавать собственные контейнеры, изменять базовые типы данных и строки. Со стороны логического обоснования – это обеспечивает повышенную производительность, улучшение кросплатформенности, устранение недостатков кода. Несмотря на очевидные позитивные стороны вопроса значительно снижается удобство пользования и красота кода.

Среди базовых библиотек C++ выбор не такой обширный, по функционалу С# превосходит их. Основная сложность и задача программиста – это правильный подбор библиотек и это потребуется даже при выполнении небольшого проекта.

4. Стоимость поддержки

Значительной разницы в цене поддержки между обоими языками не отмечается. Важно осознавать, что отдельные баги внутри приложений на С# сложно поддаются устранению методами .net. Если потребуется исправление багов, цена резко увеличится, а поддержание станет дороже. Если коснётся рефакторинга, то чаще всего проекты С# проще поддаются изменению.

Лично я не могу со 100% уверенностью всем советовать выбирать тот или иной язык, так как нет правильного ответа на вопрос. Выбор зависит от поставленных целей, типа задач и предполагаемого результата, который требуется достичь. Для меня С# значительно приятнее и ближе, ведь основная часть работы связана с движком Unity, но нельзя скрывать повышенную популярность Unreal Engine на C++.

После определения задачи стоит подобрать лучший язык на основании перечисленных пунктов, а также типа синтаксиса.

Больше интересных новостей

Какие языки программирования самые высокооплачиваемые на 2022 год: ТОП

Какие языки программирования самые высокооплачиваемые на 2022 год: ТОП

7 веб фреймворков, которые будут в тренде в 2019 году

7 веб фреймворков, которые будут в тренде в 2019 году

Разбираемся в топовых IT-терминах: просто о сложном

Разбираемся в топовых IT-терминах: просто о сложном

Эти языки программирования стали трендовыми, и вот почему

Эти языки программирования стали трендовыми, и вот почему

Обучение программированию лучше начать с языка С. И вот почему

На сегодняшний день существует около 700 языков программирования. Однако при создании корпоративного программного обеспечения (ПО) применяют лишь около 20 из них. Другими словами, при всем имеющемся разнообразии есть лишь несколько популярных универсальных языков. Обычно их начинают изучать в школе, университете или даже на первой работе.

При этом каждый разработчик ПО задается вопросом: с какого языка начать обучение? В университетской программе изучения информатики обычно начинают с языка C.

C по-прежнему часто используется в проектах, связанных с аппаратным обеспечением. Но в современной индустрии ПО доминируют такие языки, как Java, C#, JavaScript, Go, Python, Ruby, PHP и Kotlin. Причиной этому являются:

· понятные человеку синтаксис и семантика;

· полнофункциональные стандартные API;

· множество фреймворков и библиотек.

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

Разберемся, почему изучение C все равно является оптимальным выбором.

Язык С учит навыкам решения проблем

Почти все программы предлагают встроенные или библиотечные методы для решения проблем с логическими алгоритмами. Например, если нужно скопировать определенные элементы в другой массив, то в JavaScript можно использовать встроенный метод filter, а в Java метод filter доступен из пакета java.util.stream. На самом деле любой популярный язык программирования имеет встроенный или библиотечный метод для фильтрации массива. Но в C его нет. И реализовать все придется самостоятельно.

Оказавшись в подобном положении вам придется самостоятельно найти решение задачи. Работа с алгоритмическими задачами великолепно обучает решению проблем. В реальной работе часто встречаются непростые задачи, в решении которых не помогут стандартная библиотека и встроенные функции привычного и удобного языка программирования. Программисту часто приходится сталкиваться с проблемами, требующими особых навыков и усилий. Выработать их помогает программирование на С.

Более того, в хакатонах разработчики часто пользуются языком С для решения поставленных перед ними задач.

Язык С знакомит с аппаратными ресурсами

Такие языки программирования, как Python, C# и Java, имеют очень дружественный интерфейс. Однако они значительно абстрагированы от аппаратных ресурсов. Другими словами, вы не почувствуете особенностей работы компьютера, пока не начнете программировать с помощью C. Современные языки скрывают эти особенности, предлагая совершенно новую изолированную среду. Чаще всего она создается с помощью виртуальной машины.

К сожалению, разработчики без опыта программирования на С не имеют таких навыков оптимизации аппаратных ресурсов, как управление памятью, обработка файлов и оптимизация кода. Современные языки автоматически выделяют и освобождают память с помощью сборщиков мусора. А в C разработчик участвует в распределении ресурсов памяти, создавая максимально оптимизированный код.

Создание исходного кода программы на С сродни незабываемому знакомству с аппаратными ресурсами компьютера, которое должен испытать каждый начинающий профессионал.

Язык С учит творчеству и эффективности

Удобная для человека абстракция делает язык программирования менее гибким. Любой стандартный метод, встроенный в библиотеки, действует как жестко запрограммированный черный ящик. Другими словами, современные языки скрывают код низкого уровня и предлагают разработчикам понятные, но ограниченные интерфейсы. Прямое динамическое распределение памяти в современных языках практически невозможно. Между тем C дает программисту истинную свободу деятельности, предоставляя полный доступ к коду низкого уровня.

Компиляторы C создают невероятно быстрый ассемблерный код. Таким образом, сама среда разработки на С способствует и побуждает к созданию эффективного кода. В этом языке нужно тщательно объявлять переменные, выделять и очищать память, обращаться к ресурсам и освобождать их. Прошедший школу программирования на C не сможет и с новым языком использовать излишнюю память, дополнительные ресурсы и неправильные структуры данных.

Язык С побуждает создавать чистый код

В отличие от современных языков программирования, код на С занимает больше строк. Причиной тому является низкоуровневый доступ к необходимым ресурсам, отсутствие абстрагированной стандартной библиотеки. С увеличением строк кода увеличивается и сложность программы. Таким образом, требуется создавать логичный и понятный код вместо беспорядочных фрагментов.

Написание чистого кода — это навык, который очень востребован в работе над отраслевыми проектами. На самом деле создание чистого кода упрощается, если работать над проектом на языке C.

Заключение

Язык С представляет собой основу для С++, который безусловно является современным инструментом программирования с полнофункциональной стандартной библиотекой. Таким образом, изучение C++ не равнозначно изучению C. Однако возможности прямого управления ресурсами памяти и низкоуровневый доступ в C++ все еще существуют. Почти все современные языки конкурируют друг с другом, вводя новый синтаксис, семантику и стандартные библиотечные методы. Но такие языки, как Go, только расширяют стандартные и поддерживаемые сообществом библиотеки.

Если разработчики сразу выберут один из популярных языков, например, Python, JavaScript, C# или Java, то они упустят возможность получения ценного опыта в процессе работы с C. Начинать обучение с этого C — это великолепная возможность разобраться во взаимодействии языка программирования с аппаратными ресурсами.

Пройдите с языком С первый сложный курс обучения. В дальнейшем это поможет стать квалифицированным специалистом и работать с любым языком программирования.

  • Программа на Си для проверки числа: положительное или отрицательное
  • Чем отличается C++ от C#?
  • Слабо решить эти задачи по программированию?

Что лучше выбрать, C или C++?

Добрый день.
Недавно начал учить C++ и внезапно наткнулся на статью, в которой расписываются плюсы C в сравнении с ранее упомянутом языком. Основным минусом C++ приводилась очень высокая сложность языка, вследствие чего его изучение может растянутся на многие-многие годы. Автор статьи так же рекомендовал Jav’у, т. к. она лучше справляется с теми же задачами, что и плюсы, хоть и в ущерб производительности. В итоге меня начали терзать смутные сомнения, и назрели несколько вопросов:
1) Какой язык лучше выбрать для разработки игр, C или C++?
2) Легко ли перейти с C на C++ и наоборот, в случае необходимости?
3) Если C++ лучше не выбирать, то стоит ли учить вместо него Jav’у?

  • Вопрос задан более трёх лет назад
  • 15645 просмотров

6 комментариев

Сложный 6 комментариев

Ingernirated

Ingernirated @Ingernirated
сорян, что не по теме, как вы в выборе языка вписал С?
у меня только С++ отображает, а С нет
lord125 @lord125 Автор вопроса
Ingernirated: Просто набери «C».

twobomb

C++ тот же C только с ООП

Labunsky

Просто учи C, куда угодно пойдешь после него. С плюсов и джавы слезать будет трудно
Labunsky: если ты выучил C++, то ты уже практически знаешь C.

Labunsky

devalone: я писал ниже, видел код плюсовиков, которые пытались потом на чистом си калякать. Плюсы не выветриваются)

Решения вопроса 2
̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻

Автор статьи так же рекомендовал Jav’у, т. к. она лучше справляется с теми же задачами

Что такое Jav? Если речь про Java, то не слушайте автора, C++ и Java — это разные языки для разных задач, да можно решить практически любую задачу на практически любом языке, но везде будут свои минусы и плюсы. Если писать игровой движок, то лучше C++ из-за производительности.

1) Какой язык лучше выбрать для разработки игр, C или C++?

Лучше выбрать движок типа Unity, ureal engine, etc. Если писать игровую логику, то очевидно лучше C++, чем C(а ещё лучше что-то более высокоуровневое), если писать сам движок, то я бы выбрал C++, т.к. в C++ больше готового, тот же STL и есть классы.

2) Легко ли перейти с C на C++ и наоборот, в случае необходимости?

Можно конечно, но лучше сразу учить то, что надо.

3) Если C++ лучше не выбирать, то стоит ли учить вместо него Jav’у?

А какая цель? Написать игру или движок? Если игру, то учить нужно готовый движок типа UE(Blueprints|C++), Unity(C#), если движок, то C++. А Java немного для других задач.

Основным минусом C++ приводилась очень высокая сложность языка

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *