ภาษากรูวี
ภาษากรูวี (Groovy) เป็นภาษาโปรแกรมเชิงวัตถุสำหรับแพลตฟอร์มจาวาอันหนึ่ง นอกเหนือจากภาษาจาวา เราอาจมองกรูวีเป็นเหมือนภาษาสคริปต์สำหรับแพลตฟอร์มจาวาก็ได้ เนื่องจากมันมีคุณลักษณะหลายอย่างเหมือนกับภาษาสคริปต์อย่าง ไพทอน (Python) รูบี้ (Ruby) เพิร์ล (Perl) และ สมอลทอล์ค (Smalltalk). ในบางบริบท, เราจะใช้ชื่อ JSR 241 เพื่อเรียกภาษากรูวี โปรแกรมที่เขียนด้วยภาษากรูวี จะถูกคอมไพล์ เป็นจาวาไบต์โค้ด ซึ่งสามารถใช้งานได้บนจาวาเวอร์ชวลแมชีน (JVM) ปกติ กรูวี 1.0 ได้รับการเผยแพร่ในวันที่ 2 มกราคม ค.ศ. 2007 จากนั้นจึงเผยแพร่กรูวี 2.0 ในเดือนกรกฎาคม ค.ศ. 2012 โดยรุ่นอัปเดตครั้งใหญ่ครั้งล่าสุดคือรุ่น 2.4 ภายใต้การสนับสนุนของ Pivotal Software ที่สิ้นสุดลงในเดือนมีนาคม ค.ศ. 2015[3] คุณลักษณะของภาษาภาษากรูวีมีคุณลักษณะหลายประการที่ไม่พบในภาษาจาวามาตรฐาน:
เปรียบเทียบความสัมพันธ์ตัวอย่างต่อไปนี้จะเปรียบเทียบภาษากรูวีกับภาษาจาวา: จาวามาตรฐาน (Java 5 และสูงกว่า) class Filter { public static void main (String[] args) { List<String> list = Arrays.asList ("Rod", "Carlos", "Chris") ; List<String> shorts = new ArrayList<String> () ; for (String item : list) { if (item.length () <= 4) { shorts.add (item) ; } } for (String item : shorts) { System.out.println (item) ; } } } Groovy list = ["Rod", "Carlos", "Chris"] shorts = list.findAll { it.size () <= 4 } shorts.each { println it } สนับสนุนภาษามาร์กอัปคุณลักษณะเด่นอันหนึ่งของกรูวีก็คือ การที่มันสนับสนุนภาษามาร์กอัป (markup language) อย่าง XML และ HTML จากในตัวมันเองเลย คุณลักษณะนี้ทำให้การสร้างและใช้งานข้อมูลจากหลายแหล่ง เป็นไปได้ในวากยสัมพันธ์ของภาษาและวิธีการเขียนโปรแกรมที่เหมือนกัน ตัวอย่างเช่น: โค้ด Groovy ต่อไปนี้ ... import groovy.xml.MarkupBuilder def myXMLDoc = new MarkupBuilder () myXMLDoc.workbook { worksheet (caption:"Employees") { row (fname:"John", lname:"McDoe") row (fname:"Nancy", lname:"Davolio") } worksheet (caption:"Products") { row (name:"Veeblefeetzer", id:"sku34510") row (name:"Prune Unit Zappa", id:"sku3a550") } } println myXMLDoc ... สร้างผลลัพธ์ XML: <workbook> <worksheet caption='Employees'> <row fname="John" lname="McDoe" /> <row fname="Nancy" lname="Davolio" /> </worksheet> <worksheet caption='Products'> <row name="Veeblefeetzer" id="sku34510" /> <row name="Prune Unit Zappa" id="sku3a550" /> </worksheet> </workbook> ดูเพิ่ม
อ้างอิง
ข้อมูล
แหล่งข้อมูลอื่น
|
Portal di Ensiklopedia Dunia