วิศวกรรมซอฟต์แวร์

ถาม - ตอบสำหรับมืออาชีพนักวิชาการและนักเรียนที่ทำงานในวงจรการพัฒนาระบบ

3
การเขียนสคริปต์เกม (Lua) หมายถึงอะไร
ฉันได้อ่านว่า Lua มักใช้สำหรับการฝังสคริปต์และโดยเฉพาะในเกมสำหรับการเขียนสคริปต์ ฉันพบว่ามันยากที่จะนึกภาพว่ามันถูกใช้อย่างถูกต้องอย่างไร คุณสามารถอธิบายว่าทำไมและคุณลักษณะใดและมีการใช้ผู้ชมกลุ่มใด คำถามนี้ไม่ได้กล่าวถึง Lua โดยเฉพาะ แต่เป็นสคริปต์ฝังตัวใด ๆ ที่มีจุดประสงค์คล้ายกับ Lua Scripting มันใช้สำหรับผู้ใช้เพื่อทำการปรับแต่งเองหรือไม่? มันใช้สำหรับผู้พัฒนาเกมเพื่อเพิ่มความเร็วในการสร้างตรรกะของเกม (ระดับ, AI, ... ) หรือไม่? มันใช้กับโค้ดเฟรมเวิร์กของเกมหรือไม่เนื่องจากสคริปต์สามารถเร็วขึ้น โดยทั่วไปฉันสงสัยว่าลึกระหว่างการกำหนดค่าธรรมดาและตรรกะกรอบการใช้งานสคริปต์เช่นไป และสคริปต์จะทำเท่าไหร่ สายการกำหนดค่าน้อยหรือจำนวนมาก?

8
'การเพิ่มประสิทธิภาพโค้ด' เมื่อใด == 'โครงสร้างข้อมูล' เมื่อใด
บทความล่าสุดโดย ycombinatorแสดงความคิดเห็นด้วยหลักการของโปรแกรมเมอร์ที่ยอดเยี่ยม #7. โปรแกรมเมอร์ที่ดี: ฉันเพิ่มประสิทธิภาพรหัส โปรแกรมเมอร์ที่ดีกว่า: ฉันจัดโครงสร้างข้อมูล โปรแกรมเมอร์ที่ดีที่สุด: ความแตกต่างคืออะไร? การยอมรับแนวคิดที่เป็นอัตนัยและเป็นที่ถกเถียงกัน - ไม่มีใครมีตำแหน่งในสิ่งนี้หมายความว่าอะไร? ฉันทำ แต่ฉันต้องการแก้ไขคำถามนี้ในภายหลังด้วยความคิดของฉันเพื่อไม่ให้คำตอบที่จูงใจ

7
ใช้เวลาประเมินงานเขียนโปรแกรมนานเท่าใด
ตัวอย่างเช่นถ้าฉันแบ่งโครงการเป็นผลิตภัณฑ์งานที่ไม่ต่อเนื่องกัน (กล่าวว่าคลาสหรือฟังก์ชั่นหรือส่วนประกอบ) มีเวลาหรือไม่ที่ n * t เป็นระยะเวลาที่เหมาะสมในการประเมิน?

5
ขั้นตอนในการรักษาฐานข้อมูลบั๊กที่ดี
การรักษาฐานข้อมูลบั๊กเป็นสิ่งสำคัญสำหรับทุกโครงการ ฉันใช้เพื่อจัดเก็บสิ่งต่อไปนี้ที่ฐานข้อมูลบั๊ก เวลาวันที่ออก ใครได้รับมอบหมายให้ ไม่ว่าจะได้รับการแก้ไขหรือไม่ หากแก้ไขแล้วให้แก้ไขเวลาวันที่ พอที่จะรักษาฐานข้อมูลบั๊กที่ดีอยู่หรือไม่?
9 bug  bug-report 

1
“ ระบบวัตถุประสงค์ทั่วไป” หมายถึงอะไรสำหรับ Java SE Embedded?
เว็บไซต์ของออราเคิลพูดถึงสิ่งนี้เกี่ยวกับใบอนุญาตแบบฝังตัวของ Java SE : การพัฒนานั้นฟรี แต่จำเป็นต้องมีค่าลิขสิทธิ์เมื่อใช้งานกับสิ่งอื่นนอกเหนือจากระบบวัตถุประสงค์ทั่วไป "ระบบวัตถุประสงค์ทั่วไป" หมายถึงอะไรที่นี่ เรามีเครือข่ายเซ็นเซอร์ทั่วประเทศ ในแต่ละกล่องที่เราติดตั้งมีบอร์ดไมโครคอนโทรลเลอร์ซึ่งรับข้อมูลจากสภาพแวดล้อมและส่งข้อมูลบนพอร์ตอนุกรมไปยังบอร์ดฝังตัวที่ใช้ ARM ในระบบกระดานนี้มีกระบวนการ Java ที่อ่านและส่งข้อมูลไปยังเซิร์ฟเวอร์กลางของเราโดยใช้ JMS สิ่งนี้จัดเป็นระบบวัตถุประสงค์ทั่วไปหรือไม่ ขอโทษฉันถามที่นี่ เราอยู่ในอิหร่านไม่มีสำนักงาน Oracle ที่นี่เพื่อถาม

7
การตรวจสอบและการตรวจสอบเป็นส่วนหนึ่งของกระบวนการทดสอบหรือไม่
จากแหล่งข้อมูลหลายแห่งฉันไม่เชื่อว่าคำจำกัดความง่ายๆที่เป้าหมายของการทดสอบคือการค้นหาข้อบกพร่องให้ได้มากที่สุด - เราทำการทดสอบเพื่อให้แน่ใจว่ามันใช้งานได้หรือไม่ เช่น followint เป็นเป้าหมายของการทดสอบแบบฟอร์ม ISTQB: ตรวจสอบว่า (ผลิตภัณฑ์ซอฟต์แวร์) เป็นไปตามข้อกำหนดที่ระบุไว้ (ฉันคิดว่าเป็นของจริง) แสดงให้เห็นว่า (ผลิตภัณฑ์ซอฟต์แวร์) เหมาะสำหรับวัตถุประสงค์ (ฉันคิดว่าเป็นการตรวจสอบ) ตรวจหาข้อบกพร่อง ฉันยอมรับว่าการทดสอบคือการตรวจสอบความถูกต้องและการตรวจจับข้อบกพร่อง ถูกต้องหรือไม่

4
วิธีการรักษารหัสเศษเล็กเศษน้อยที่เหมือนกันในหลายโครงการ [ปิด]
เป็นการยากที่จะบอกสิ่งที่ถูกถามที่นี่ คำถามนี้คลุมเครือคลุมเครือไม่สมบูรณ์กว้างเกินไปหรือโวหารและไม่สามารถตอบได้อย่างสมเหตุสมผลในรูปแบบปัจจุบัน สำหรับความช่วยเหลือในการทำความเข้าใจคำถามนี้เพื่อที่จะสามารถเปิด, ไปที่ศูนย์ช่วยเหลือ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันเป็นนักพัฒนาอินดี้ที่ทำงานในโครงการ Android หลายโครงการ ฉันมีปัญหากับการบำรุงรักษาฟังก์ชั่นเดียวกันในโครงการต่างๆ ตัวอย่างเช่นสามแอพของฉันใช้ 2 คลาสเดียวกัน เนื่องจากเป็นโครงการที่แตกต่างกันเมื่อฉันต้องการเปลี่ยนแปลงคลาสเหล่านั้นฉันจึงต้องทำสามครั้ง มีวิธีแก้ไขปัญหาทั่วไปประเภทนี้อย่างง่าย ๆ ไหม?

7
มีความว่องไวเกี่ยวกับการพัฒนาหรือการจัดการ?
จากการถกเถียงกันว่า Scrum เกี่ยวข้องกับอะไรฉันพบว่าบางทีฉันอาจเข้าใจผิดถึงความว่องไว สำหรับฉันแล้วดูเหมือนว่า Scrum (ซึ่งถือว่าเป็นกระบวนการแบบ Agile) เป็นเรื่องเกี่ยวกับการจัดการคุณสมบัติและ sprints และบทบาทและสิ่งต่าง ๆ โดยไม่เกี่ยวข้องกับ TDD, การเขียนโปรแกรมคู่, CI, refactoring และเทคนิคการพัฒนาศูนย์กลางอื่น ๆ จนถึงปัจจุบัน) คือหัวใจแห่งความคล่องตัว ตอนนี้ฉันกำลังเผชิญกับความยากลำบาก! 1) Scrum ไม่เชื่อเรื่องพระเจ้าหรือไม่ว่าผู้พัฒนาทำแบบฝึกหัดที่คล่องตัวหรือไม่? 2) คุณสามารถใช้ Scrum ในทีมที่ไม่ใช้การทดสอบอัตโนมัติได้หรือไม่? ไม่ทำการปรับโครงสร้างใหม่หรือไม่ปฏิบัติตามแนวทางการเขียนโปรแกรมแบบเปรียว?
9 agile  scrum  process 

4
วิธีที่ดีที่สุดในการจัดการการอ้างอิงในแอปพลิเคชัน. NET คืออะไร
เมื่อเร็ว ๆ นี้ที่ทำงานเราพบปัญหาที่เราติดแท็ก / แยกโครงการและมีปัญหาในการรวบรวมเนื่องจากการอ้างอิง dll / project ที่ชี้ไปยังโครงสร้างโฟลเดอร์เก่า เราสร้างโฟลเดอร์ 'ถังขยะภายนอก' สำหรับแต่ละโครงการและคัดลอก dll ที่อ้างอิงไปยังโฟลเดอร์เหล่านี้ นี่เป็นวิธีที่ดีที่สุดหรือมีมาตรฐานอุตสาหกรรมเฉพาะเพื่อจัดการเรื่องนี้หรือไม่?
9 c# 

6
ไทม์ไลน์และการกำหนดเวลาที่ จำกัด มีผลต่อ TCO และเวลาส่งมอบอย่างไร
พ่อของเพื่อนคนหนึ่งซึ่งเป็นผู้จัดการวิศวกรรมซอฟต์แวร์กล่าวอย่างเด่นชัดว่า "สาเหตุอันดับหนึ่งของการกำหนดเวลาที่เกินกำหนดคือความกดดันด้านการตั้งเวลา" งานวิจัยอยู่ที่ใด การจัดตารางแรงกดดันในระดับปานกลางนั้นอยู่ในระดับปานกลางหรือเป็นผู้จัดการที่ฉันพูดถึงถูกหรือผิดหรือเป็นเรื่องของ "ยิ่งคุณมีกำหนดการกดดันมากขึ้นเท่าใดเวลาส่งมอบและ TCO ที่มากขึ้นจะมากขึ้นหรือไม่" มันเป็นหนึ่งในสิ่งที่วิศวกรรมซอฟต์แวร์จะต้องทำงานโดยไม่มีแรงกดดันจากการกำหนด แต่ในทางปฏิบัติเราต้องทำงานกับข้อ จำกัด ของสถานการณ์ในโลกแห่งความเป็นจริงหรือไม่? การเชื่อมโยงใด ๆ กับวรรณกรรมวิศวกรรมซอฟต์แวร์จะได้รับการชื่นชม

3
ฉันจะทำให้โค้ดของฉันพร้อมสำหรับ OpenSourcing และวางบน GitHub ได้อย่างไร
ในอีกไม่กี่สัปดาห์โครงการของฉันจะเสร็จและฉันต้องการเริ่มเตรียมโค้ดของฉันให้ผู้อื่นใช้ ฉันจะโพสต์ทุกอย่างใน GitHub เพื่อให้ผู้คนสามารถปรับแต่งและหวังว่าจะทำให้ดีขึ้น ฉันเดาว่าสิ่งที่ฉันถามคืออะไรจะเป็นวิธีที่ดีที่สุดในการตรวจสอบให้แน่ใจว่ารหัสของฉันได้รับการบันทึกไว้อย่างเพียงพอและเหมาะสมสำหรับผู้ใช้ ฉันรู้ว่าคุณควรแสดงความคิดเห็นทุกอย่างอยู่เสมอและฉันจะใส่ในคุณสมบัติ @params สำหรับทุกวิธี แต่มีเคล็ดลับอื่น ๆ บ้างไหม?

1
วัตถุประสงค์ของ Console ในโปรแกรมแก้ไขข้อความ Sublime คืออะไร?
ฉันต้องการทราบว่าคอนโซลแก้ปัญหาอะไรในข้อความประเสริฐ 2 นี่ถูกเรียกใช้โดยการกด Ctrl + Shift + ` นี่เป็นประเภทดีบักเกอร์หรือเพียงแค่ช่วยคุณติดตั้งแพ็คเกจ

3
Erlang เหมาะสำหรับแอปพลิเคชันระบบคลาวด์อย่างไร
เรากำลังเริ่มโครงการใหม่และนำไปใช้กับอินสแตนซ์ของ บริษัท openstack cloud (ดูhttp://www.openstack.org/ ) โครงการนี้เป็นเครื่องมือรักษาความปลอดภัยให้กับ บริษัท ของเรา ขณะนี้เราใช้เซิร์ฟเวอร์เฉพาะหลายร้อยเครื่องสำหรับเครื่องมือรักษาความปลอดภัยและย้ายพวกเขาไปยัง บริษัท ของเราในการเริ่มต้น openstack โครงการอื่น ๆ ใน บริษัท ของฉันใช้ erlang ในแอพพลิเคชั่นเซิร์ฟเวอร์แบบกระจายหลายตัวและ Q / A อื่น ๆ ที่ชี้ว่า erlang ถูกนำมาใช้ในบริการคลาวด์ยอดนิยมหลายอย่าง ฉันพยายามโน้มน้าวให้คนอื่นพิจารณาว่ามันอาจจะใช้กับโครงการของเราได้ที่ไหน จุดแข็งของ erlang สำหรับการโปรแกรมบนคลาวด์คืออะไร พื้นที่ใดบ้างที่เหมาะสมที่จะใช้ erlang

9
ทางเลือกระบบปฏิบัติการสำหรับการพัฒนาฟังก์ชั่น [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันเป็นนักพัฒนา. NET เป็นหลักดังนั้นฉันจึงใช้ Windows / VisualStudio (นั่นหมายถึง: ฉันนิสัยเสีย) แต่ฉันสนุกกับ Haskell และภาษาอื่น ๆ (ส่วนใหญ่ใช้งานได้) ในเวลาว่าง ตอนนี้สำหรับ Haskell การสนับสนุน windows ก็โอเค (คุณสามารถรับ Haskell-Platform) แต่ latley ฉันพยายามที่จะได้รับสภาพแวดล้อม Clojure / Scheme พื้นฐานติดตั้งและมันก็แค่ความเจ็บปวดบน windows ดังนั้นฉันจึงคิดว่าจะลองใช้ระบบปฏิบัติการอื่นเพื่อการใช้เครื่องมือและการสนับสนุนที่ดีขึ้น แน่นอนว่าทำให้ฉันใช้ MacOS หรือ Linux ได้บ้าง ฉันไม่เคยใช้ MacOS มาก่อนและแน่นอนว่า Linux จะมีราคาถูกกว่า (ฟรี) และฉันไม่คิดว่าฉันจะสามารถบูต MacOS …

1
ทำไมต้องมีค่าใช้จ่ายเมื่อจัดสรรออบเจ็กต์ / อาร์เรย์ใน Java
มีอาร์เรย์จำนวนเท่าใดใน Java? สมมติว่าเป็นเครื่อง 64 บิตและสมมติว่ามีองค์ประกอบ N ในอาร์เรย์ดังนั้นองค์ประกอบเหล่านี้จะใช้ 2 * N, 4 * N หรือ 8 * N ไบต์สำหรับอาร์เรย์ประเภทต่างๆ และการบรรยายใน Coursera บอกว่ามันจะครอบครอง 2 * N + 24, 4 * N + 24 หรือ 8 * N + 24 ไบต์สำหรับอาร์เรย์องค์ประกอบ N และ 24 ไบต์เรียกว่าโอเวอร์เฮด แต่ไม่ได้อธิบายว่าทำไมโอเวอร์เฮดจึงเป็น จำเป็น นอกจากนี้วัตถุยังมีค่าใช้จ่ายซึ่งเป็น 16 ไบต์ ค่าโสหุ้ยเหล่านี้คืออะไร? 24/16 ไบต์ประกอบด้วยอะไรบ้าง …
9 java  memory 

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