Какие языки программирования наиболее часто используются? [закрыто]

24

Когда я год назад проходил курсы Java, мне сказали, что Java используется в основном в зарубежных игровых компаниях, в то время как C ++ используется здесь, в США. На каких языках следует сосредоточиться на углубленном изучении?

Serneum
источник
3
Я подозреваю, что причина того, что вы получили этот ответ, заключалась в том, что разработка мобильных приложений, которая исторически основывалась на Java, была намного больше в Европе, чем в США (поскольку смартфоны были намного больше в Европе, чем в США), и в студиях разработки консолей на основе C ++. , наоборот. «Игровые компании» - это широкий спектр платформ, рынков и бюджетов.

Ответы:

28

Общие языки программирования могут быть разбиты по «типу» разработки игр.

Большие игры Triple-A, которые выходят за рамки, когда дело доходит до графики, обычно использовали смесь прямого C и C ++ для большей части проекта. Часто задействуется язык сценариев, хотя это не обязательно относится ко всем движкам.

Код игрового процесса часто пишется на проприетарном языке (UnrealScript), Python, Lua (CryTek, Spark Engine) или, в некоторых случаях, на C # (The Sims 2). Несколько игровых движков начинают поддерживать JavaScript (Unity и т. Д.).

Конечно же, используются и шейдерные языки.

В мобильной сфере в iPhone доминирует объектив C, в то время как большинство других мобильных телефонов используют Java (Android, Brew-based и т. Д.).

Что касается инди или небольших компаний, они могут использовать практически все, что зависит от их целевых платформ. Например, C # обычен для небольших разработчиков Live. Разработчики Flash, очевидно, используют ActionScript.

Итак, поехали. Надеюсь, это поможет.

А.А. Грапсас
источник
Не пропустите новый набор веб-игр Javascript Canvas / WebGL, которые работают в веб-браузерах!
ехсанул
Совершенно верно. К сожалению, не так много тех игр, которые монетизируются. Но, да, это было бы правильно добавить в список.
А. А. Грапсас
кого ты называешь маленьким временем?
Призраки
Многие из самых популярных мобильных игр также написаны на C ++ с оболочкой Objective-C / Java (и iOS, и Android позволяют это.) XNA (C #) полезна для работы с Windows Phone 7, а также для инди Рынок на XBox.
Ник Готч
34

C ++ является языком общения в индустрии консольных игр. C # довольно активно используется для инструментов и конвейеров.

необычайно щедрый
источник
16

C ++ довольно заметен на современном игровом рынке. Мысль С все еще широко используется.

При создании игр главное внимание должно уделяться не языку, а конечному продукту. Никогда не начинайте проект, думая: «Как мы можем сделать это на языке X?» но "Как мы можем сделать это наилучшим образом?"

Олафур Вааге
источник
9
Не то чтобы я не соглашался с вами, но наиболее распространенные языки, пожалуй, наиболее поддерживаемые и, следовательно, более вероятно, что их можно будет поддерживать, чем что-то более эзотерическое. Выбор популярных языков имеет свои преимущества.
Тетрад
3
@Tetrad О, я полностью согласен. Но это часто приводило к тому, что что-то могло быть решено намного проще с помощью какого-либо другого инструмента / языка.
Олафур Вааге
Хотя, если язык проще, но ни один из разработчиков не использует его, действительно ли он проще? Как, например, в Haskell, Python или Lisp гораздо проще, чем в C ++. Но так ли это на самом деле?
Юрген А. Эрхард
8

Конечный источник является индексом TIOBE . Конечно, он не скажет вам, для чего используется каждый язык ...

Циклоп
источник
3
Индекс TIOBE далеко не надежен. Единственная причина, по которой Delphi находится под номером 11, заключается в том, что сообщество Delphi в массовом порядке решило бомбардировать индекс и обыграть свой путь вверх по чарту.
личность
15
Действительно, все пять из них? Должно быть, это заняло некоторое время.
Майк Штробель
-1, которые не отвечают на вопрос.
Klaim
1
@ Майк Умер от ... ну, я не могу тебе сказать. Это секрет.
Матин Улхак
Я так долго искал такой сайт, что только не знал. Спасибо!
Evorlor
7

Как уже упоминалось, C ++ - это язык для изучения; все основные консоли содержат среду разработки C ++, в лучшую или в худшую сторону. C # начинает развиваться в играх на XNA, но чаще всего используется для разработки инструментов.

Lua также является одним из наиболее часто используемых языков сценариев в играх; полезно иметь хотя бы мимолетное знакомство с ним.

Часто цепочка сборки, используемая для сборки игры, содержит сценарии, написанные на Python или Perl; также полезно быть знакомым с ними (хотя это и не обязательно).

Блэр Холлоуэй
источник
4

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

Дэнни Варод
источник
4

Не забывайте PHP. Он очень популярен в MMORGP, играемом через WWW. В Польше очень много MMORPG, основанных на движке Vallheru, полностью написанных на PHP.

FolksLord
источник
Или, в этом отношении, просто фреймворки веб-разработки в целом, хотя стоит упомянуть!
Зомби
0

Может быть, вы не должны сосредоточиться на изучении одного конкретного языка. Вы должны, как развиваться.

Вчера я скачал iOS SDK и Xcode. И я взял это сразу и сделал небольшой тетрис. Я парень из as3, и я даже не удосужился изучить Objective-C. Но я смог сделать простую игру, потому что я понимаю, как развиваться.

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

bliipStudio
источник
0

Разработка игр - это другое приложение для разработки игр с мячом.

В мире игр все зависит от скорости. При подаче конверта с графикой HD 1080p, высоким уровнем дискретизации звука и необходимого AI каждый последний такт процессора считается.

Исторически C и C ++ были быстрыми темпами, но java теперь сравним с c ++ с точки зрения скорости в некоторых обстоятельствах.

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

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

Но главная причина того, что коммерческая разработка игр предпочитает C ++, заключается в том, что она используется более 15 лет в игровой индустрии, и для нее есть буквально миллиарды собственных и общедоступных библиотек. Если вы хотите, скорее всего, кто-то встроил его в c ++.

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

Skeith
источник
-1

Objective-C для iOS-устройств, конечно. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html И большинство программ OS X также кодируются в нем: https://developer.apple.com/technologies/ макинтош / cocoa.html

nevster
источник
3
Не резервное копирование вообще.
Doppelgreener
tiobe.com/index.php/content/paperinfo/tpci/index.html показывает это как # 3. Хотя вы можете утверждать о достоинствах индекса Тиобе, вы не можете утверждать, что Objective-C обычно не используется.
Невстер
Лучшим оправданием, чем ужасная агрегация мусора, которая является Tiobe, было бы просто сослаться на документацию для разработчиков Apple, которая указывает, что преференциальный набор инструментов для разработки под iOS (и OS X) включает в себя Objective-C, поскольку весь основной API представлен на этом языке ,
Джош
ОК - добавлены ссылки. Я могу только предположить, что отрицательные отзывы принадлежат ненавистникам или людям, которые довольно невежественны.
Невстер