ภาษาการเขียนโปรแกรมที่ใช้บ่อยที่สุดคืออะไร [ปิด]


24

เมื่อฉันเรียนหลักสูตร Java เมื่อปีที่แล้วฉันได้รับแจ้งว่า Java ส่วนใหญ่จะใช้ใน บริษัท เกมต่างประเทศในขณะที่ C ++ ใช้ที่นี่ในสหรัฐอเมริกา ฉันควรเน้นภาษาใดในการเรียนรู้เชิงลึก


3
ฉันสงสัยว่าสาเหตุที่คุณได้รับการตอบสนองนี้เป็นเพราะการพัฒนาโทรศัพท์มือถือ - ซึ่งมีพื้นฐานมาจากภาษาจาวา - มีขนาดใหญ่กว่าในยุโรปมากกว่าสหรัฐฯ (เนื่องจากสมาร์ทโฟนใหญ่กว่าในยุโรปมากกว่าสหรัฐฯ) และสตูดิโอพัฒนาคอนโซล C ++ ในทางกลับกัน "บริษัท เกม" เป็นแพลตฟอร์มและตลาดและงบประมาณที่หลากหลาย

คำตอบ:


28

ภาษาโปรแกรมทั่วไปสามารถแบ่งย่อยได้ตาม "ประเภท" ของการพัฒนาเกม

เกมขนาดใหญ่สามตัวที่ผลักดันซองจดหมายเมื่อพูดถึงกราฟิกมักใช้ส่วนผสมของ C และ C ++ ตรงสำหรับโครงการส่วนใหญ่ บ่อยครั้งที่มีการใช้ภาษาสคริปต์ - แม้ว่ามันจะไม่เป็นความจริงสำหรับเครื่องมือทั้งหมด

รหัสเกมมักจะเขียนด้วยภาษาที่เป็นกรรมสิทธิ์ (UnrealScript), Python, Lua (CryTek, Spark Engine) หรือในบางกรณี C # (The Sims 2) เอ็นจิ้นเกมสองสามตัวเริ่มสนับสนุน JavaScript (Unity และอื่น ๆ )

แน่นอนว่าภาษาของ Shader ใช้ประโยชน์เช่นกัน

ในอาณาจักรมือถือ iPhones ถูกครอบงำโดยวัตถุประสงค์ -C ในขณะที่โทรศัพท์มือถือส่วนใหญ่ใช้ Java (Android, Brew-based และอื่น ๆ )

สำหรับอินดี้หรือ บริษัท ขนาดเล็กพวกเขาสามารถใช้ประโยชน์ได้อย่างเต็มที่โดยขึ้นอยู่กับแพลตฟอร์มเป้าหมาย ตัวอย่างเช่น C # เป็นเรื่องปกติที่นักพัฒนาซอฟต์แวร์ Live มักใช้เวลาน้อย ผู้พัฒนา Flash ใช้ ActionScript อย่างเห็นได้ชัด

ดังนั้นคุณไป หวังว่าจะช่วย


อย่าละทิ้งเกม Javascript Canvas / WebGL บนเว็บใหม่ที่ทำงานในเว็บเบราว์เซอร์!
ehsanul

ทั้งหมดคุณถูกต้อง น่าเศร้าที่เกมเหล่านั้นมีการสร้างรายได้ไม่มากนัก แต่ใช่ว่าจะถูกต้องเพื่อเพิ่มลงในรายการ
AA Grapsas

คุณโทรหาใครเวลาน้อย
Spooks

เกมมือถืออันดับต้น ๆ บางเกมนั้นเขียนด้วยภาษา C ++ พร้อมด้วย Objective-C / Java wrapper (ทั้ง iOS และ Android อนุญาตให้ทำได้) XNA (C #) มีประโยชน์สำหรับการทำงานกับ Windows Phone 7 เช่นเดียวกับอินดี้ ตลาดบน XBox
Nick Gotch


16

C ++ ค่อนข้างโดดเด่นในตลาดเกมปัจจุบัน ความคิด C ยังคงใช้กันอย่างแพร่หลาย

เมื่อสร้างเกมโฟกัสหลักของคุณไม่ควรเป็นภาษา แต่เป็นผลิตภัณฑ์ขั้นสุดท้าย อย่าเริ่มโครงการที่คิดว่า "เราจะทำสิ่งนี้ในภาษา X ได้อย่างไร" แต่ "เราจะทำสิ่งนี้ให้ดีที่สุดได้อย่างไร"


9
ไม่ใช่ว่าฉันไม่เห็นด้วยกับคุณ แต่ภาษาที่พบบ่อยที่สุดคือเนื้อหาที่ได้รับการสนับสนุนมากที่สุดและดังนั้นจึงมีแนวโน้มที่จะรักษาได้มากกว่าสิ่งที่ลึกลับมากกว่า การเลือกภาษายอดนิยมมีประโยชน์
Tetrad

3
@ Tetrad โอ้ฉันเห็นด้วยอย่างเต็มที่ แต่สิ่งนี้มักนำไปสู่ถนนที่บางสิ่งสามารถแก้ไขได้ด้วยวิธีที่ง่ายกว่ามากโดยใช้เครื่องมือ / ภาษาอื่น ๆ
Ólafur Waage

แม้ว่าภาษานั้นจะง่ายกว่า แต่ไม่มี dev ที่ใช้มันมันง่ายกว่านี้จริงหรือ? ดู, หลายสิ่งหลายอย่างเป็นวิธีที่ง่ายกว่าในการพูด Haskell หรือ Python หรือ Lisp มากกว่าใน C ++ แต่นั่นจริงเหรอ?
Jürgen A. Erhard

8

สุดยอดแหล่งที่มาเป็นดัชนี TIOBE จริงอยู่ที่มันจะไม่บอกคุณว่าแต่ละภาษามีการใช้สำหรับ ...


3
ดัชนี TIOBE อยู่ไกลจากความน่าเชื่อถือ เหตุผลเดียวที่ Delphi อยู่ที่อันดับ 11 คือชุมชน Delphi en masse ตัดสินใจทิ้งระเบิดดัชนีและเล่นเกมบนแผนภูมิ
rtperson

15
จริง ๆ แล้วทั้งห้าคนเหรอ? ต้องใช้เวลาซักพัก
Mike Strobel

-1 ที่ไม่ตอบคำถาม
Klaim

1
@ Mike One เสียชีวิตจาก ... อืมฉันไม่สามารถบอกคุณได้ มันเป็นความลับ.
Mateen Ulhaq

ฉันได้ค้นหาเว็บไซต์เช่นนี้มานานแล้ว แต่ฉันไม่รู้ ขอขอบคุณ!
Evorlor

7

ดังที่ได้กล่าวมาแล้ว C ++ เป็นภาษาหลักในการเรียนรู้ คอนโซลหลัก ๆ ทั้งหมดจะเป็นเจ้าภาพในสภาพแวดล้อมการพัฒนา C ++ ให้ดีขึ้นหรือแย่ลง C # เริ่มที่จะถอดในเกมที่ขับเคลื่อนด้วย XNA แต่ส่วนใหญ่มักจะใช้สำหรับการพัฒนาเครื่องมือ

Lua เป็นหนึ่งในภาษาสคริปต์ที่ใช้กันมากที่สุดในเกม การมีความคุ้นเคยอย่างน้อยก็เป็นประโยชน์

บ่อยครั้งที่ build chain ที่ใช้สร้างเกมจะมีสคริปต์ที่เขียนด้วย Python หรือ Perl; มันมีประโยชน์ที่จะทำความคุ้นเคยกับสิ่งเหล่านั้นเช่นกัน (แม้ว่าจะไม่ใช่ข้อกำหนด)


4

เป็นการดีที่สุดที่จะไม่เรียนรู้ภาษาเดียว แต่เพื่อเรียนรู้แนวคิดการเขียนโปรแกรมที่แตกต่างกันและวิธีการใช้ภาษาเหล่านี้ในสองสามภาษากรอบงานและสิ่งแวดล้อมที่แตกต่างกัน


4

อย่าลืม PHP เป็นที่นิยมอย่างมากใน MMORGP ที่เล่นผ่านการพัฒนา WWW ในโปแลนด์ fg มี MMORPG จำนวนมากโดยใช้เครื่องยนต์ Vallheru ซึ่งเขียนด้วย PHP ทั้งหมด


หรือสำหรับเรื่องนั้นเป็นเพียงแค่กรอบการพัฒนาเว็บโดยทั่วไปแล้วพูดถึงได้ดี!
Zombies

0

บางทีคุณไม่ควรมุ่งเน้นการเรียนรู้ภาษาใดภาษาหนึ่งโดยเฉพาะ คุณควรพัฒนาอย่างไร

เมื่อวานนี้ฉันดาวน์โหลด iOS SDK และ Xcode และฉันก็เอามันออกไปและทำ tetris เล็กน้อย ฉันเป็นคนที่ 3 และฉันไม่ได้สนใจเกี่ยวกับการเรียนรู้ Objective-C แต่ฉันสามารถทำเกมง่าย ๆ เพราะฉันเข้าใจวิธีการพัฒนา

ดังนั้นจุดของฉันที่นี่คือคุณอาจจะใช้เวลาในการเรียนรู้แนวคิดใหม่มากกว่าภาษาเฉพาะ หรือเรียนรู้ภาษา X และถ่ายทอดความรู้ของคุณเป็นภาษาอื่น


0

การพัฒนาเกมเป็นรูปแบบการเขียนโปรแกรมเกมบอลที่แตกต่างกัน

ในโลกของเกมมันเป็นเรื่องของความเร็ว เมื่อผลักซองด้วยกราฟิก 1080p HD เสียงการสุ่มตัวอย่างสูงและ nex gen AI ทุกรอบโปรเซสเซอร์จะนับ

ในอดีต C และ C ++ นั้นเป็น fasts แต่ตอนนี้ java เทียบได้กับ c ++ ในแง่ของความเร็วในบางสถานการณ์

C ++ ช่วยให้คุณควบคุมสถาปัตยกรรมที่คุณออกแบบได้ดีกว่าภาษาอื่น ๆ

นักพัฒนาเกมอาวุโสส่วนใหญ่มีความหมายอาวุโสที่พวกเขาได้รับการสอนในวิธีการเรียนแบบเก่าเนื่องจากพวกเขาได้คิดค้นและพัฒนาเทคโนโลยีที่เก่ากว่า

แต่เหตุผลที่สำคัญที่สุดที่การพัฒนาเกมเชิงพาณิชย์สนับสนุน C ++ ก็คือมันถูกใช้มานานกว่า 15 ปีในอุตสาหกรรมเกมและมีหลายพันล้านของบ้านและห้องสมุดสาธารณะสำหรับมัน หากคุณต้องการโอกาสที่จะมีคนสร้างมันใน c ++

ต้องบอกว่าจาวาได้รับความนิยมเพิ่มขึ้นเรื่อย ๆ เนื่องจากมันทำให้การพัฒนาบนสเปรดกว้างและเปลี่ยนแปลงสถาปัตยกรรมมือถือได้ง่ายขึ้น แต่เกมที่มีเลือดออกจะยังคงมีแกนหลักที่เขียนใน c ++ ในบางเวลา


-1

แน่นอน -C สำหรับอุปกรณ์ iOS แน่นอน https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html และโปรแกรม OS X ส่วนใหญ่จะถูกเข้ารหัสด้วยเช่นกัน: https://developer.apple.com/technologies/ Mac / cocoa.html


3
ไม่สำรองข้อมูลเลย
doppelgreener

tiobe.com/index.php/content/paperinfo/tpci/index.htmlแสดงเป็น # 3 แม้ว่าคุณจะสามารถโต้แย้งข้อดีของดัชนี tiobe ได้ แต่ก็ไม่มีวิธีที่คุณสามารถโต้แย้งได้ว่า Objective-C นั้นไม่ได้ใช้กันทั่วไป
nevster

เหตุผลที่ดีกว่าการรวมขยะที่น่ากลัวนั่นคือ Tiobe ก็เพื่ออ้างอิงเอกสารประกอบสำหรับนักพัฒนาของ Apple ซึ่งระบุว่า toolchain สำหรับการพัฒนา iOS (และ OS X) นั้นมีสิทธิพิเศษรวมถึง Objective-C เนื่องจาก API หลักทั้งหมดถูกเปิดเผยในภาษานั้น .
Josh

ตกลง - ลิงก์ที่เพิ่ม ฉันสามารถจินตนาการได้ว่า downvote นั้นมาจากผู้ที่เกลียดชังหรือคนที่ค่อนข้างงมงาย
nevster
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.