เอด้าหายไปจริงๆหรือ


17
  • ผู้คนยังใช้ Ada - (ส่วนใหญ่ใช้ในกระทรวงกลาโหม)
  • แอปพลิเคชันทั้งหมดเขียนด้วย Ada "Legacy" หรือไม่
  • ความรู้ของ Ada ยังคงขายอยู่หรือไม่

5
อ่านสิ่งนี้ก่อนที่จะถามคำถามนี้: tiobe.com/index.php/content/paperinfo/tpci/index.htmlมันได้รับความนิยมมากกว่า F # หรือแอสเซมบลีและจริง ๆ แล้วมีไวยากรณ์ที่ประณีต (IMO)
งาน

2
หน้าข้อมูลอื่น: seas.gwu.edu/~mfeldman/ada-project-summary.html
BlackJack

1
@greenlit นักพัฒนา Java ถึง Ada ปัจจุบันมีประมาณ 20: 1 หากต้องการข้อมูลเพิ่มเติมลองสแกนการประกาศงาน มุมของคุณที่นี่คืออะไร? คุณหวังที่จะหางาน Ada ที่ให้ผลตอบแทนสูงหรือไม่?
งาน

3
ถ้าคุณต้องการที่จะใช้มันในแอพพลิเคชั่นทั่วไปทำไมความนิยมถึงมีความหมาย? คุณวางแผนที่จะเพิ่ม devs อื่น ๆ หรือไม่?
JeffO

1
@greengit ดูstackoverflow.com/questions/1078043/why-didnt-ada-make-it - จริง ๆ แล้วมันทำให้มันเป็นจริง java ใช้เวลาส่วนใหญ่ในการตามทัน!
NWS

คำตอบ:


27

ผู้คนยังใช้ Ada - (ส่วนใหญ่ใช้ในกระทรวงกลาโหม)

ปรากฏว่า Ada ได้รับการปรับปรุงล่าสุดในปี 2005และมีการทำงานต่อAda 2012ดังนั้นภาษาของตัวเองยังคงมีชีวิตชีวาและเตะได้

เท่าที่ใช้ Ada ไม่ได้รับคำสั่งให้ใช้ในกระทรวงกลาโหมอีกต่อไป งานส่วนใหญ่ที่ฉันเห็นและทำอยู่ใน Java, C และ C ++ แต่ก็มีการใช้. NET Framework และฉันยังเคยได้ยินเกี่ยวกับโปรเจ็กต์ที่ใช้ภาษา JVM อื่น ๆ เช่น Scala ขึ้นอยู่กับว่า ระบบจะถูกใช้ อาจมีรหัสจำนวนมากอยู่ใน Ada ดังนั้นฉันจะไม่แปลกใจหากมีการนำรหัสมาใช้ซ้ำจำนวนมากและมีการบำรุงรักษาเกิดขึ้น ด้วยลักษณะของโครงการป้องกันจึงเป็นเรื่องยากที่จะหาตัวเลขเฉพาะเกี่ยวกับการใช้งาน

มีรายการของโครงการ Ada และผู้ใช้แต่ดูเหมือนว่าการอัปเดตครั้งล่าสุดคือในเดือนมิถุนายน 2008 อาจมีรายการใหม่กว่านี้ที่นั่น แต่ฉันไม่สามารถค้นหาได้อย่างรวดเร็ว

แอปพลิเคชันทั้งหมดเขียนด้วย Ada "Legacy" หรือไม่

หากคุณถามว่ามีการพัฒนา Ada ใหม่หรือไม่ฉันจะไม่แปลกใจหากระบบใหม่ถูกเขียนขึ้นมาตั้งแต่ต้นใน Ada ฉันสงสัยว่าจะมีมากเกินไป แต่อาจมีบางอย่างที่นั่น อย่างไรก็ตามฉันสงสัยว่า Ada ส่วนใหญ่จะมีการบำรุงรักษาหรืออัปเกรดระบบที่มีอยู่ไม่ใช่การพัฒนาใหม่

ความรู้ของ Ada ยังคงขายอยู่หรือไม่

ความรู้ในสิ่งที่ขายถ้าคุณสามารถหาคนที่กำลังมองหาชุดทักษะที่ แม้ว่าคุณจะไม่ได้ใช้ Ada ในการพัฒนาฉันก็พบว่าการรู้ภาษาหรือกรอบงานหนึ่ง ๆ ได้เปลี่ยนความคิดเห็นของฉันและฉันจะใช้ภาษาหรือกรอบงานอื่นได้อย่างไร ฉันสงสัยว่าการรู้จัก Ada จะทำให้คุณเข้าใจถึงวิธีการอื่น ๆ ในการออกแบบและสร้างซอฟต์แวร์ในภาษาอื่นเช่นกัน


5
ฉันกำลังเขียนระบบใหม่ใน Ada :)
NWS

1
C # & .NET ยังใช้ในแอปพลิเคชันธุรกิจที่เขียนขึ้นโดยผู้รับเหมาป้องกัน
George Stocker

@NWS: ในบางวิธีดูเหมือนว่ามันจะให้การตรวจสอบแบบคงที่ที่มีประสิทธิภาพมากกว่าที่เป็นไปได้ใน C. ฉันอยากรู้อยากเห็นว่าการพิมพ์โดยใช้ระดับ subrange ทำงานอย่างไรเพื่อลดการพึ่งพาขนาดของเครื่อง หากมีตัวอย่างเช่นสองตัวแปรที่ประกาศเป็นประเภท 0..200 และต้องการทดสอบว่าผลิตภัณฑ์ของตนมีค่ามากกว่า 250 หรือไม่สามารถเปรียบเทียบผลิตภัณฑ์ของพวกเขากับ 250 และรับประกันว่าจะใช้งานได้หรือจะล้มเหลวในการรวบรวมในกรณีที่ อาจล้มเหลวหรือสามารถผ่านการคอมไพล์ แต่ล้มเหลวขณะรันไทม์หากผลิตภัณฑ์เกิน 32,767?
supercat

@supercat ใช่การตรวจสอบแบบคงที่ดีมากใน Ada สำหรับคำถามเฉพาะของคุณการใช้ชนิดย่อยและชนิดโมดูลาร์ที่ถูกต้องเพื่อสร้างช่วงที่จะทดสอบจะช่วยแก้ปริศนาของคุณได้ นอกจากนี้ยังมีห้องสมุดสำหรับการจัดการจำนวนมากที่สามารถทำงานกับเครื่อง 16/32 บิต คุณอ่านเกี่ยวกับระบบที่แข็งแกร่งใน Ada แล้วหรือยัง? เมื่อคุณเรียนรู้วิธีการใช้อย่างถูกต้องมันมีประสิทธิภาพมาก
NWS

@NWS: ฉันดูคำจำกัดความภาษา Ada ที่เชื่อมโยงจากหน้า Wiki และในขณะที่ฉันพบว่ามีการพูดถึงการกำหนดประเภทตัวเลขฉันไม่สามารถหาคำอธิบายเกี่ยวกับวิธีที่พวกเขาโต้ตอบกับผู้ให้บริการ หาก Ada ต้องใช้ typecasts เมื่อทำงานกับประเภทที่ไม่ตรงกับที่ดูเหมือนจะมีประโยชน์น้อยกว่า แต่ฉันไม่เห็นสิ่งที่ต้องการจริงๆ ถ้าผมกำลังออกแบบภาษาในกรณีดังกล่าวข้างต้นอย่างใดอย่างหนึ่งที่ผมต้องการให้แน่ใจว่าการเปรียบเทียบจะทำตัวราวกับว่าการประเมินผลที่มีประเภทที่อาจถืออะไรถึง 40,000 หรืออื่น ...
SuperCat

12

คำตอบคือ: ไม่ Ada ยังคงถูกใช้งานอยู่ บริษัท ของฉันใช้ Ada เพื่อพัฒนาแอปพลิเคชันฝั่งเซิร์ฟเวอร์สำหรับ บริษัท ในการผลิตการค้าปลีกการดูแลสุขภาพและอื่น ๆ


คุณสามารถบอกได้ว่า Ada มีข้อดีเหนือภาษาอื่น ๆ ในแอพพลิเคชั่นฝั่งเซิร์ฟเวอร์แบบดั้งเดิมหรือไม่
Raymond Chenon


6

Ada ยังคงใช้งานอย่างหนักในการป้องกันภารกิจสำคัญความปลอดภัยที่สำคัญเวลาจริงระบบฝังตัว

ดังนั้น: รถไฟ, รถไฟ, เครื่องบิน, การควบคุมจราจรทางอากาศ, ดาวเทียม, ระบบการแพทย์, โรงไฟฟ้านิวเคลียร์ ฯลฯ

สำหรับการใช้งานล่าสุดของ ada ดู: นี่


5

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

Ada อาจใช้การพิมพ์ที่แรงที่สุดและการเขียนโปรแกรมทั่วไปของภาษาใด ๆ ที่ฉันรู้ ประสบการณ์นั้นสามารถขายได้สูงแม้ว่าจะไม่ได้เขียนโปรแกรมใน Ada


1
มันได้รับคำสั่งสำหรับโครงการกระทรวงจนถึงปลายปี 1990 (1997-1998 ถ้าฉันจำได้อย่างถูกต้อง) ยังคงมีรหัส Ada อยู่ แต่มีการสร้างโครงการมากขึ้นเรื่อย ๆ โดยใช้ C, C ++, Java และแม้แต่ภาษาอย่าง Python ก็เริ่มทำการบุกรุก ฉันไม่ได้บอกว่ามันไม่ได้ใช้ - มีโค้ด Ada อยู่มากมายที่ยังดีและสามารถนำกลับมาใช้ใหม่แก้ไขหรือขยายสำหรับโครงการได้ แต่การพัฒนาใหม่ไม่มากใช้ Ada
โธมัสโอเวนส์

ฉันพบเทมเพลต C ++ ที่มีการสร้างอินสแตนซ์ของฟังก์ชันเทมเพลตอัตโนมัติให้มีประสิทธิภาพและ 'สำนวน' มากกว่า Ada generics
วินไคลน์

1
@Kevin, idiomatic หมายถึงรูปแบบการใช้งานทั่วไปที่กำหนดภาษาไม่ใช่วิธี "มีประสิทธิภาพ" ไม่ใช่เรื่องแปลกที่นักเขียนโปรแกรม c ++ จะต้องใช้เวลาหลายปีในการใช้เทมเพลตสำหรับคอนเทนเนอร์ไลบรารีมาตรฐาน ที่ไม่เคยได้ยินจาก Ada โปรแกรมเมอร์และ generics
Karl Bielefeldt

โปรดทราบว่าคำสั่งถูกยกเลิกไม่ใช่การใช้งาน
NWS

1

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

บริษัท และรัฐบาลทวีคูณดังนั้นจึงมีกฎระเบียบมากเกินไปและความกังวลอื่น ๆ ที่จะอัพเกรดเพราะสิ่งที่เก่า ระบบจำนวนมากในยุคนั้นได้รับการสนับสนุนจากภายในดังนั้นการโต้เถียงนอกการสนับสนุนไม่ได้เกิดขึ้นกับสิ่งนั้น

คำตอบของโทมัสนั้นดีในกรณีนี้ Ada จะอยู่รอบ ๆ จนกว่าทุกอย่างที่ใช้เทคโนโลยีก่อนยุคกลางยุค 90 จะถูกแทนที่ในกองทัพ แต่โดยทั่วไปแล้วคำถามประเภทนี้มักจะส่งผลให้เกิดคำตอบประเภทนี้ มวลวิกฤตสำคัญไม่ตายอย่างสมบูรณ์

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