เรียนรู้การเขียนโปรแกรม IDL เพื่อแสดงภาพข้อมูลด้วย

การเปิดเผยข้อมูล: การสนับสนุนของคุณช่วยให้เว็บไซต์ทำงานต่อไป! เราได้รับค่าธรรมเนียมการอ้างอิงสำหรับบริการบางอย่างที่เราแนะนำในหน้านี้.


IDL หรือ Interactive Data Language เป็นภาษาโปรแกรมคอมพิวเตอร์ที่ใช้สำหรับการวิเคราะห์ข้อมูลและการสร้างภาพข้อมูลเป็นหลัก ในขณะที่มันปรากฏตัวครั้งแรกในปี 1977 (โดยมีรากกลับมามากขึ้น) และเป็นผู้เชี่ยวชาญเล็กน้อยในขอบเขตของมันมันยังคงเป็นภาษาที่สำคัญสี่สิบปีใน.

IDL ยังอยู่ภายใต้การพัฒนาที่แข็งขันและมีการใช้อย่างกว้างขวางในสาขาวิทยาศาสตร์อวกาศ – รวมถึงงานวิเคราะห์ข้อมูลที่สำคัญโดย NASA และองค์การอวกาศยุโรป.

ประวัติความเป็นมาของ IDL

ประโยชน์ปัจจุบันของ IDL ในการวิเคราะห์ข้อมูลเชิงพื้นที่นั้นเป็นผลมาจากแนวคิดและประวัติของมัน ในปี 1970 David Stern ทำงานที่ University of Colorado at Boulder ในห้องปฏิบัติการสำหรับฟิสิกส์บรรยากาศและอวกาศ (LASP).

ในขณะนั้นเขาเริ่มทำงานเพื่อออกแบบวิธีการที่อนุญาตให้นักวิทยาศาสตร์และนักวิจัยอื่น ๆ ทดสอบสมมติฐานและทำการวิเคราะห์ข้อมูลด้วยตนเองโดยไม่ต้องนำโปรแกรมเมอร์คอมพิวเตอร์มาพัฒนาแอปพลิเคชันเฉพาะจุดประสงค์.

ความพยายามครั้งแรกในครั้งนี้คือโปรแกรมสำหรับ PDP-12 ที่เรียกว่า Rufus PDP หรือ Programmed Data Processor เป็นโปรโต – คอมพิวเตอร์ขนาดเล็กที่ใช้สำหรับงานวิเคราะห์ข้อมูลต่าง ๆ.

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

ในที่สุดงานของ Rufus นำไปสู่การเขียนโปรแกรมภาษาเต็มรูปแบบที่เรียกว่า SOL นี่ถูกออกแบบมาให้ทำงานบน PDP-8 (รุ่น PDP เดียวกับที่ใช้ในการทำงานของนาวิน) และคล้ายกับ Fortran ในรูปแบบและรูปแบบ.

David Stern ก่อตั้ง บริษัท ที่ชื่อว่า Research Systems Inc (RSI) เพื่อทำการค้าโดยเริ่มจาก Rufus ผลิตภัณฑ์แรกของ RSI คือภาษาข้อมูลแบบโต้ตอบออกแบบมาเพื่อทำงานบน PDP-11.

ลูกค้ารายแรกของ RSI คือ NASA รุ่นต่อมาที่เขียนขึ้นสำหรับแพลตฟอร์ม VAX / VMS ถูกนำมาใช้โดยผู้เล่นคนสำคัญอื่น ๆ ในอุตสาหกรรมการบินและอวกาศและดาราศาสตร์รวมถึง National Center for Atmospheric Research (NCAR), มหาวิทยาลัยมิชิแกน, มหาวิทยาลัยโคโลราโดและห้องปฏิบัติการวิจัยทางทะเล.

ด้วยการเพิ่มขึ้นของคอมพิวเตอร์วัตถุประสงค์ทั่วไป RSI เปลี่ยนโฟกัสของการพัฒนา IDL จาก VAX / VMS เป็น Unix สิ่งนี้ต้องการการเขียนซ้ำใน C และเวอร์ชันที่เขียนใหม่นี้คือ “บรรพบุรุษทางพันธุกรรม” ของภาษาที่ใช้งานอยู่ในปัจจุบัน อย่างไรก็ตามภาษายังคงไม่เปลี่ยนแปลง.

เมื่อมีการเปลี่ยนแปลงเทคโนโลยีคุณสมบัติใหม่มากมายได้ถูกนำมาใช้ใน IDL ตัวอย่างเช่นในช่วงต้นปี 1990 มีการแนะนำอินเทอร์เฟซผู้ใช้แบบกราฟิก (GUIs) ที่ขับเคลื่อนด้วยเหตุการณ์.

ในช่วงปลายทศวรรษ 1990 มีการนำเสนอบริการเว็บและการเขียนโปรแกรมเชิงวัตถุ ปัจจุบันภาษานี้ (ตามที่เขียนนี้) ในเวอร์ชัน 8.5 และมีให้บริการบนแพลตฟอร์มและระบบปฏิบัติการหลักทั้งหมด.

RSI เปลี่ยนเจ้าของไม่กี่ครั้งรวมถึงช่วงเวลาสั้น ๆ เมื่อ Eastman Kodak เป็นเจ้าของ บริษัท ภาพยนตร์.

บริษัท เปลี่ยนชื่อเป็น Exelis Visual Information Solutions ซึ่งเป็น บริษัท ย่อยของ Exelis ITT Harris Corporation Exelis ซื้อกิจการในปี 2558 David Stern ไม่มีส่วนเกี่ยวข้องกับการพัฒนาอีกต่อไป.

IDL ถูกนำมาใช้ในโครงการที่เกี่ยวข้องกับดาราศาสตร์หลายโครงการ มันถูกใช้เพื่อประมวลผลภาพของฮัลลีย์ดาวหางที่ถ่ายโดยยานอวกาศ Giotto ขององค์การอวกาศยุโรปและมันก็ถูกใช้เพื่อวินิจฉัยปัญหาด้วยกล้องโทรทรรศน์ฮับเบิล.

เกี่ยวกับภาษา

IDL เป็นภาษาที่ใช้แบบเวกเตอร์ที่มีไดนามิกและมีรูปแบบคล้ายกับ Fortran มันมีความเชี่ยวชาญในการจัดการกับอาร์เรย์และเมทริกซ์ ภาษานี้มีเครื่องมือสำหรับการวิเคราะห์ทางคณิตศาสตร์และส่วนใหญ่สำหรับการสร้างภาพข้อมูล.

คุณสมบัติอื่น ๆ ของภาษารวมถึง:

  • คั่นเนมสเปซสำหรับตัวแปรฟังก์ชันและโพรซีเดอร์
  • ฟังก์ชั่นและขั้นตอนแบบมัลติเธรด
  • อาร์กิวเมนต์ของฟังก์ชันถูกส่งผ่านโดยการอ้างอิง
  • พารามิเตอร์ที่มีชื่อเรียกว่าคำหลักที่ส่งผ่านโดยการอ้างอิง
  • การสืบทอดพารามิเตอร์ที่มีชื่อในรูทีนที่ซ้อนกัน c

    เอี้ยม;

  • การประกาศบล็อกทั่วไปและตัวแปรระบบที่แบ่งใช้ตัวแปรระหว่างรูทีนแยก
  • รูปแบบพื้นฐานของการเขียนโปรแกรมเชิงวัตถุ
  • ฮีปโกลบอลแบบถาวรสำหรับตัวแปรพอยน์เตอร์และออบเจ็กต์
  • ชนิดข้อมูลแบบรวมเช่นสตริงอักขระอาร์เรย์ชนิดที่เป็นเนื้อเดียวกันรายการตารางแฮชและโครงสร้างระเบียนแบบเรียบง่าย (ไม่ใช่แบบลำดับชั้น) ของชนิดข้อมูลแบบผสม.

ทรัพยากร

แหล่งข้อมูลออนไลน์

  • JHU / APL / S1R IDL Library: ห้องสมุดที่มีกิจวัตรประจำวันที่เกี่ยวข้องกับดาราศาสตร์มากกว่า 600 รายการสำหรับ IDL.
  • Craig IDwardt IDL Library: กิจวัตรและแบบฝึกหัด.
  • เรียนรู้ IDL: รวบรวมชุดคำสั่งและแหล่งเรียนรู้ที่จัดทำโดยศาสตราจารย์ที่ Texas A&M University ผู้เขียนหนังสือหลายเล่มเกี่ยวกับภาษา.
  • คู่มือของ Coyote ในการเขียนโปรแกรม IDL: หนึ่งในแหล่งข้อมูลออนไลน์ที่ดีที่สุดเกี่ยวกับ IDL; เกือบทั้งหมดเป็นงานของผู้เชี่ยวชาญ IDL และผู้ที่กระตือรือร้น.
  • คู่มือสำหรับ IDL ของ Slug: คำอธิบายแนวคิดของ IDL ที่ง่ายขึ้นสำหรับนักเรียน.
  • การเขียนโปรแกรม IDL ของ Robbie: การรวบรวมโครงการและเครื่องมือ IDL ส่วนบุคคลที่ไม่เป็นระเบียบ.
  • MichaelGalloy.com: บล็อกเกี่ยวกับการพัฒนา IDL จากผู้เขียน Modern IDL.
  • โปรแกรม IDL ของ Rob Dimeo: ชุดเครื่องมือส่วนบุคคลอื่นจากนักพัฒนา IDL.

เครื่องมือ

  • Idlwave: การแก้ไข IDL Emacs และโหมดเชลล์
  • Motley IDL Library: คอลเลกชันของกิจวัตร Object Object หลายคลาสคลาสพื้นฐานสำหรับแอปพลิเคชั่นวิดเจ็ตและแอพพลิเคชั่นหลายตัวที่สร้างขึ้นมาเพื่อให้ง่ายต่อการแสดงข้อมูลที่ปรับขนาดบนแกน.
  • TeXtoIDL: คอลเลกชันของรูทีนที่ทำให้ง่ายต่อการใช้ตัวอักษรกรีกตัวห้อยและตัวยกในการทำป้ายกำกับสำหรับพล็อตใน IDL.

การใช้งาน

การดำเนินการตามมาตรฐานของ IDL ได้รับการจัดการโดย Harris Corporation และสามารถดูได้ที่เว็บไซต์ของพวกเขา.

มีสองทางเลือกโอเพนซอร์ซ:

  • ภาษาข้อมูลของ GDU
  • ภาษา Fawlty.

หนังสือเกี่ยวกับ IDL

  • ข้อมูลเบื้องต้นเกี่ยวกับการเขียนโปรแกรมด้วย IDL: Interactive Data Language โดย Kenneth Bowman: ข้อความเบื้องต้นที่ดีเหมาะสำหรับผู้ที่มีประสบการณ์การเขียนโปรแกรมเล็กน้อยทุกชนิด.
  • การเขียนโปรแกรม IDL ในทางปฏิบัติโดย Liam Gumley: ดูชัดเจนและตรงไปตรงมาในการสร้างโปรแกรม IDL จริงสำหรับการแก้ปัญหาจริง.
  • การเขียนโปรแกรมเชิงวัตถุด้วย IDL โดย Ronn Kling: ความสามารถของ OOP ถูกเพิ่มเข้าไปใน IDL ในปลายปี 1990 ณ จุดนี้มันนานมาแล้ว แต่วัฒนธรรมการใช้ภาษานั้นมีมา 20 ปีแล้วในการพัฒนา แม้กระทั่งทุกวันนี้โปรแกรมเมอร์ IDL จำนวนมากไม่ได้ใช้เทคนิค OOP หนังสือเล่มนี้ซึ่งไม่จำเป็นต้องรู้แนวคิดของ OPP ในการเริ่มต้นแสดงวิธีใช้วิธีการเขียนโปรแกรมเชิงวัตถุใน IDL.
  • การพัฒนาแอปพลิเคชันด้วย IDL โดย Ronn Kling: หนังสือเล่มนี้ย้ายนักพัฒนา IDL จากการเขียนโปรแกรมแบบเฉพาะกิจสำหรับงานวิเคราะห์เฉพาะเพื่อสร้างแอพพลิเคชั่นเต็มรูปแบบในภาษา.

เพื่อไม่ให้สับสนกับ …

IDL ย่อมาจาก Interface Definition Language นี่ไม่ใช่ภาษาที่เฉพาะเจาะจง แต่เป็นคำอธิบายของฟังก์ชั่นภาษาบางประเภท.

IDLs เป็นภาษาสเปคที่ใช้ในการออกแบบการทำงานร่วมกันระหว่างระบบซอฟต์แวร์ทั้งสองด้วยวิธีที่ไม่ขึ้นกับภาษา มีหลายภาษาที่นิยามอินเตอร์เฟส.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map