อะแพชี เวโลซิตี

จากวิกิพีเดีย สารานุกรมเสรี
อะแพชี เวโลซิตี
นักพัฒนามูลนิธิซอฟต์แวร์อะแพชี
รุ่นเสถียร
ที่เก็บข้อมูล
ระบบปฏิบัติการหลายระบบปฏิบัติการ
ประเภทเอนจินแม่แบบ
สัญญาอนุญาตสัญญาอนุญาตอะแพชี 2.0
เว็บไซต์http://velocity.apache.org/

อะแพชี เวโลซิตี (Apache Velocity) เป็นแพ็กเกจโอเพนซอร์สที่สร้างและกำกับดูแลโดยมูลนิธิซอฟต์แวร์อะแพชี เวโลซิตีเป็นเอนจินแม่แบบบนพื้นฐานของภาษาจาวา ซึ่งช่วยผูกภาษาแม่แบบกับอ็อบเจกต์ที่อ้างถึงในโค้ดจาวา โดยจุดประสงค์เพื่อทำให้เกิดความชัดเจนในการแบ่งแยกระหว่างระดับชั้นการนำเสนอกับระดับชั้นธุรกิจบนเว็บแอปพลิเคชัน (ดูเพิ่มที่ Model-view-controller) แอปพลิเคชันที่มักใช้เวโลซิตีเช่น

  • เว็บแอปพลิเคชันที่ใช้การแทรกข้อมูลจากอ็อบเจกต์ เช่น จาวาบีนส์ ลงในเพจของ HTML โดยตรง การทำงานนี้คล้ายการแทรกตัวแปรบนเพจของเจเอสพีและพีเอชพี เวโลซิตีนั้นยังมีคลาสเซิร์ฟเลตเป็นของตัวเอง ซึ่งสามารถนำไปผนวกใช้บน อะแพชี ทอมแคต (Apache Tomcat) ได้ทันที
  • เวโลซิตีสามารถผลิตซอร์สโค้ดของภาษาจาวา เอสคิวแอล โพสต์สคริปต์ ฯลฯ แล้วนำซอร์สโค้ดที่ผลิตได้ไปใช้งานต่อไป ซึ่งขึ้นอยู่กับแม่แบบที่ใช้ผลิตด้วย
  • ข้อความในอีเมลอัตโนมัติที่ส่งจากการสร้างบัญชีผู้ใช้ การส่งรหัสผ่าน หรือการแจ้งเตือนรายงานทางอีเมล โดยใช้แม่แบบที่สร้างขึ้นจากแฟ้มข้อความที่แยกไว้ต่างหาก แทนที่จะฝังข้อความทั้งหมดลงในโค้ดจาวา
  • การแปลงแฟ้มเอกซ์เอ็มแอลจากรูปแบบหนึ่งไปสู่อีกรูปแบบหนึ่ง เวโลซิตีจะประมวลผลแฟ้มต้นฉบับให้เป็นอ็อบเจกต์ที่สามารถเข้าถึงได้ตามลำดับชั้น และต้องมีแฟ้มเอกซ์เอ็มแอลอีกแฟ้มเป็นแม่แบบปลายทางรอรับ

อะแพชี เวโลซิตี เคยเป็นโครงการย่อยของโครงการจาการ์ตา แต่ปัจจุบันได้แยกตัวออกมาเป็นโครงการหลักของมูลนิธิซอฟต์แวร์อะแพชี

ตัวอย่างโค้ด[แก้]

ส่วนนี้คือแฟ้มแม่แบบ

## Velocity Hello World
<html>
<body>
#set( $foo = "Velocity" )
## followed by
Hello $foo World!
</body>
</html>

หลังจากประมวลผลผ่านเวโลซิตีแล้วจะได้ผลลัพธ์ดังนี้

<html>
<body>
Hello Velocity World!
</body>
</html>

ซึ่งรูปแบบของไวยากรณ์และแนวความคิดแม่แบบทั้งหมดในเวโลซิตี นำมาจากเอนจินแม่แบบของเว็บแมโคร (WebMacro) ซึ่งเป็นโครงการเก่าและขณะนี้ก็เป็นโครงการโอเพนซอร์สเหมือนกัน

ดูเพิ่ม[แก้]

แหล่งข้อมูลอื่น[แก้]