4 คะแนน โดย javafactory 2025-05-27 | ยังไม่มีความคิดเห็น | แชร์ทาง WhatsApp

JavaFactory

JavaFactory เป็นปลั๊กอิน IntelliJ ที่สร้างโค้ด Java แบบทำซ้ำโดยอัตโนมัติ
โดยให้ผู้ใช้กำหนดกฎการสร้างโค้ดและกฎการรวบรวม reference ได้เอง จึงช่วยชดเชยข้อจำกัดของการสร้างโค้ดด้วย AI แบบเดิม

สำหรับวิธีติดตั้งและวิธีใช้งานอย่างละเอียด โปรดดูที่ GitHub README : )


🧭 ภาพรวม

ช่วงหลังมานี้มีเครื่องมือสร้างโค้ดที่ใช้ LLM ออกมาหลากหลาย แต่หลายครั้งโค้ดที่สร้างขึ้นมากลับนำไปใช้งานได้ทันทีได้ยาก

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

JavaFactory คือเครื่องมือที่ออกแบบมาเพื่อแก้ปัญหาเหล่านี้
โดยนิยามงานที่ผู้ใช้ต้องทำซ้ำเป็น แพตเทิร์นแบบภาษาธรรมชาติ และระบุแหล่งอ้างอิงที่จำเป็นด้วย annotation เพื่อให้ได้ผลลัพธ์ที่คาดเดาได้


เดโม

1. เดโม 90 วินาที: 400 Lines in 20s – All Tests Passed

วิดีโอด้านล่างแสดงให้เห็นกระบวนการที่ JavaFactory สร้างโค้ดมากกว่า 400 บรรทัดภายใน 20 วินาที และผ่านการทดสอบทั้งหมด


ฟีเจอร์ที่มีให้

หลักการและฟีเจอร์ที่มีให้ค่อนข้างเรียบง่าย
มีฟังก์ชันและกฎที่ช่วยให้ผู้ใช้ปรับแต่งเนื้อหาที่จะเข้าไปใน System Prompt และ User Prompt ได้เอง


1. การกำหนดแพตเทิร์นด้วยภาษาธรรมชาติ

สามารถนิยามงานที่ทำซ้ำด้วยภาษาธรรมชาติได้
และระบุได้อย่างชัดเจนว่า จะสร้างอะไร, จะสร้างอย่างไร, จะอ้างอิงคลาสใด

ระบบจะประกอบ prompt ขึ้นจากแพตเทิร์นในตอนรัน

มี UI สำหรับบันทึก / แก้ไขค่าแพตเทิร์น (GitHub README อ้างอิง)


2. การรวบรวม reference ด้วย annotation

คลาสที่จะใช้ในแพตเทิร์นจะถูกระบุอย่างชัดเจนด้วย annotation
เนื่องจากจะรวมเฉพาะคลาสที่ตรงกับบทบาทที่กำหนดไว้ จึงสามารถ รวบรวม reference ได้อย่างแม่นยำโดยไม่มีบริบทที่ไม่จำเป็น

ประเภทของ annotation
  • @JavaFactoryData

    • รวบรวม reference ของคลาสแบบ recursive โดยอิงจาก referencedData
    • ตัวอย่าง: domain model, entity เป็นต้น
  • @JavaFactoryApi

    • รวบรวมเฉพาะ referencedApi ที่ระดับความลึก 1 ชั้น
    • สามารถระบุ implementation, test, fixture class เพิ่มเติมแบบเลือกได้
    • ตัวอย่าง: API interface เช่น Reader, Writer, Validator

ทรัพยากร

สำหรับวิธีติดตั้งและวิธีใช้งานอย่างละเอียด โปรดดูที่ GitHub README : )

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น