AWS SAM CLI เพิ่มการรองรับส่วนขยายภาษา AWS CloudFormation เพื่อเร่งการพัฒนาแบบไม่ต้องใช้เซิร์ฟเวอร์ในเครื่อง

โพสต์บน: 18 พ.ค. 2026

ขณะนี้ AWS SAM CLI รองรับส่วนขยายภาษา AWS CloudFormation แล้ว ซึ่งช่วยให้คุณสามารถลดความซ้ำซ้อนในเทมเพลต Infrastructure as Code (IaC) ได้ พร้อมทั้งยังคงเวิร์กโฟลว์การพัฒนาในเครื่องแบบครบถ้วนไว้ได้ ซึ่งช่วยเร่งการพัฒนาแบบไม่ต้องใช้เซิร์ฟเวอร์ของคุณ โดยช่วยให้คุณสามารถกำหนดทรัพยากรเพียงครั้งเดียว และทำการวนซ้ำในเครื่องได้โดยไม่ต้องรอการนำไปใช้จริงบนคลาวด์

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

ในการเริ่มต้นใช้งาน โปรดดาวน์โหลดหรืออัปเดต SAM CLI เป็นเวอร์ชันล่าสุด เพิ่ม transform AWS::LanguageExtensions ลงในเทมเพลต SAM ของคุณ และใช้ Fn::ForEach เพื่อสร้างทรัพยากรหลายรายการจากนิยามเดียว คำสั่ง SAM CLI เช่น sam build, sam local invoke, sam sync, sam local start-api และ sam validate จะขยายลูปของคุณโดยอัตโนมัติและประมวลผลทรัพยากรที่ถูกสร้างขึ้นแต่ละรายการ คุณสามารถเรียกใช้ฟังก์ชันที่ถูกขยายแล้วตามชื่อได้ เช่น sam local invoke AlphaFunction SAM CLI ยังรองรับ Fn::Length, Fn::ToJsonString, Fn::FindInMap พร้อม DefaultValue และแอตทริบิวต์ DeletionPolicy และ UpdateReplacePolicy แบบมีเงื่อนไข

หากต้องการเรียนรู้เพิ่มเติม โปรดไปที่คู่มือนักพัฒนา SAM CLI และบล็อกเปิดตัว