Jakie są najczęściej używane języki programowania? [Zamknięte]

24

Kiedy rok temu brałem udział w kursach Java, powiedziano mi, że Java jest używana głównie w zagranicznych firmach gier, podczas gdy C ++ jest używany tutaj w USA. Na jakich językach powinienem się skoncentrować na nauce?

Serneum
źródło
3
I podejrzewam powodem masz tę odpowiedź była ponieważ mobilny rozwój - który został historycznie Java - był znacznie większy w Europie niż w Stanach Zjednoczonych (od smartfony były znacznie większy w Europie niż w Stanach Zjednoczonych), a C ++ - oparty studia rozwojowe konsola , nawzajem. „Firmy zajmujące się grami” to szeroka gama platform, rynków i budżetów.

Odpowiedzi:

28

Typowe języki programowania można podzielić na „typy” rozwoju gier.

Duże, potrójne gry typu A, które przesuwają kopertę, jeśli chodzi o grafikę, zwykle wykorzystywały mieszaninę prostego C i C ++ przez większą część projektu. Często w grę wchodzi język skryptowy, choć niekoniecznie dotyczy to wszystkich silników.

Kod gry jest często pisany w zastrzeżonym języku (UnrealScript), Python, Lua (CryTek, Spark Engine) lub, w niektórych przypadkach, C # (The Sims 2). Kilka silników gier zaczyna obsługiwać JavaScript (Unity itp.).

Oczywiście wykorzystywane są również języki cieniujące.

W sferze mobilnej iPhony są zdominowane przez cel C, podczas gdy większość innych telefonów komórkowych korzysta z Java (Android, Brew, itp.).

Jeśli chodzi o indies lub małe firmy, mogą wykorzystywać praktycznie wszystko, w zależności od platform docelowych. Na przykład C # jest wspólny z małymi programistami Live. Programiści Flash oczywiście używają ActionScript.

A więc proszę bardzo. Mam nadzieję, że to pomaga.

AA Grapsas
źródło
Nie pomiń nowej gry internetowych gier Javascript Canvas / WebGL, które działają w przeglądarkach internetowych!
ehsanul
Masz całkowitą rację. Niestety, nie ma zbyt wielu gier, na których zarabia się. Ale tak, poprawne byłoby dodanie do listy.
AA Grapsas
do kogo dzwonisz mało czasu?
Spooks
Niektóre z najwyżej ocenianych gier mobilnych są również napisane w C ++ z otokami Objective-C / Java (pozwalają na to zarówno iOS, jak i Android). XNA (C #) jest przydatny do pracy z Windows Phone 7, a także indie rynek na XBox.
Nick Gotch,
34

C ++ to lingua franca branży gier konsolowych. C # jest dość często używany do narzędzi i rurociągów.

hojny
źródło
16

C ++ jest dość widoczny na obecnym rynku gier. Myśl C jest nadal szeroko stosowana.

Podczas tworzenia gier głównym celem nie jest język, ale produkt końcowy. Nigdy nie zaczynaj projektu z myślą „Jak możemy to zrobić w języku X?” ale „Jak możemy to zrobić w najlepszy możliwy sposób?”

Lalafur Waage
źródło
9
Nie dlatego, że się z tobą nie zgadzam, ale najpopularniejsze języki są prawdopodobnie najbardziej obsługiwane i dlatego są bardziej podatne na konserwację niż coś bardziej ezoterycznego. Wybór popularnych języków ma swoje zalety.
Tetrad
3
@Tetrad oh w pełni się zgadzam. Ale często prowadziło to drogą, w której coś można było rozwiązać w znacznie prostszy sposób za pomocą innego narzędzia / języka.
Ólafur Waage,
Chociaż jeśli język jest prostszy, ale żaden deweloper go nie używa, to czy naprawdę jest on prostszy? Podobnie, wiele rzeczy jest o wiele prostszych, powiedzmy, w Haskell, Python lub Lisp niż w C ++. Ale czy to naprawdę tak jest?
Jürgen A. Erhard
8

Ostatecznym źródłem jest Index TIOBE . To prawda, że ​​nie powie ci, do czego używany jest każdy język ...

cyklop
źródło
3
Indeks TIOBE jest daleki od wiarygodnego. Jedynym powodem, dla którego Delphi jest pod numerem 11, jest to, że społeczność Delphi masowo postanowiła zbombardować indeks i wspiąć się na szczyt listy.
rtperson
15
Naprawdę, wszystkie pięć? To musiało trochę potrwać.
Mike Strobel,
-1, które nie odpowiadają na pytanie.
Klaim
1
@Mike One zmarł na ... cóż, nie mogę ci powiedzieć. To sekret.
Mateen Ulhaq,
Tak długo szukałem takiej strony, ale nie wiedziałem o tym. Dziękuję Ci!
Evorlor,
7

Jak już wspomniano, C ++ jest zasadniczo język nauczyć; wszystkie główne konsole obsługują środowisko programistyczne C ++, na lepsze lub gorsze. C # zaczyna startować w grach opartych na XNA, ale najczęściej jest również wykorzystywany do tworzenia narzędzi.

Lua jest także jednym z najczęściej używanych języków skryptowych w grach; pomocne jest przynajmniej krótkie zapoznanie się z nim.

Często łańcuch kompilacji użyty do zbudowania gry będzie zawierał skrypty napisane w Pythonie lub Perlu; dobrze jest też się z nimi zapoznać (choć nie jest to wymagane).

Blair Holloway
źródło
4

Najlepiej jest nie uczyć się jednego języka, ale uczyć się różnych pojęć programistycznych i sposobów ich stosowania w kilku różnych językach, ramach i środowiskach.

Danny Varod
źródło
4

Nie zapomnij o PHP. Jest bardzo popularny w MMORGP odtwarzanym przez rozwój WWW. W Polsce istnieje bardzo duża liczba MMORPG opartych na silniku Vallheru, napisanych całkowicie w języku PHP.

FolksLord
źródło
A jeśli chodzi o tę kwestię, to ogólnie ramy tworzenia stron internetowych, ale warto wspomnieć!
Zombie
0

Może nie powinieneś skupiać się na nauce jednego konkretnego języka. Powinieneś jak się rozwijać.

Wczoraj pobrałem pakiet iOS SDK i Xcode. I wziąłem to od razu i zrobiłem trochę tetris. Jestem facetem as3 i nawet nie zadałem sobie trudu nauki Celu-C. Ale udało mi się stworzyć prostą grę, ponieważ rozumiem, jak się rozwijać.

Chodzi mi o to, że być może powinieneś poświęcić więcej czasu na naukę nowych pojęć niż na konkretny język. Lub Naucz się języków X i przenieś swoją wiedzę na inne języki.

bliipStudio
źródło
0

Rozwój gry to inna aplikacja do programowania gier w piłkę.

W świecie gier liczy się szybkość. Kiedy przesuwasz kopertę z grafiką HD 1080p, dźwięk o wysokiej częstotliwości próbkowania i sztuczna inteligencja nex gen każdy ostatni cykl procesora się liczy.

Historycznie C i C ++ były postami, ale w niektórych okolicznościach Java jest teraz porównywalna do c ++ pod względem szybkości.

C ++ pozwala na większą kontrolę nad projektowaną architekturą niż jakikolwiek inny język.

Większość starszych twórców gier jest na wyższych stanowiskach, co oznacza, że ​​uczyli się ich w starej szkole, ponieważ zostali wymyśleni, dlatego też są bardzo biegli w starszych technologiach.

Ale najważniejszym powodem, dla którego komercyjne tworzenie gier preferuje C ++ jest to, że jest on używany od ponad 15 lat w branży gier i jest dosłownie miliardów bibliotek wewnętrznych i publicznych. Jeśli chcesz, istnieje szansa, że ​​ktoś go wbudował w c ++.

Powiedziawszy, że Java staje się coraz bardziej popularna, ponieważ ułatwia rozwijanie się w szeroko rozpowszechnionej i ciągle zmieniającej się mobilnej architekturze, ale najnowocześniejsze gry będą nadal miały rdzeń napisany w c ++ przez jakiś czas.

Skeith
źródło
-1

Oczywiście Objective-C na urządzenia z iOS. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html I większość programów OS X jest również w nim zakodowanych: https://developer.apple.com/technologies/ mac / cocoa.html

Nevster
źródło
3
W ogóle nie ma kopii zapasowej.
doppelgreener
tiobe.com/index.php/content/paperinfo/tpci/index.html pokazuje to jako # 3. Chociaż można argumentować zalety indeksu tiobe, nie ma sposobu, aby argumentować, że cel C nie jest powszechnie używany.
Nevster
Lepszym uzasadnieniem niż okropne gromadzenie śmieci, którym jest Tiobe, byłoby po prostu odwołanie się do dokumentacji programisty Apple, co wskazuje, że preferencyjny łańcuch narzędzi dla rozwoju iOS (i OS X) obejmuje Objective-C, ponieważ cały rdzeń API jest ujawniony w tym języku .
Josh
Ok - dodane linki. Mogę sobie tylko wyobrazić, że głosy przychylne pochodzą od hejterów lub ludzi, którzy są raczej ignorantami.
Nevster