FSD-eslint-plugin
(github.com/kyh0726)ลองทำปลั๊กอิน eslint สำหรับ FSD ขึ้นมาครับ!
สวัสดีครับ
ระหว่างที่ใช้งานโครงสร้าง Feature-Sliced Design (FSD) ผมอยากให้มีกฎช่วยตรวจจับอัตโนมัติ เลยลองทำ eslint plugin ขึ้นมาตัวหนึ่งครับ
ตอนนี้มีกฎที่พัฒนาไว้แล้ว 2 ข้อดังนี้
รายการกฎ
no-cross-layer-import
→ ป้องกันการ import ที่ทำให้เลเยอร์บนล้ำเข้าไปในเลเยอร์ล่าง
segment-naming-rule
→ บังคับใช้การตั้งชื่อเซกเมนต์ของ FSD
เซกเมนต์ที่อนุญาตในตอนนี้มีจำกัดดังนี้
api / ui / model / lib / config
รายละเอียดเพิ่มเติมอยู่ใน README ของ GitHub ครับ!
ตอนนี้ยังอยู่ในช่วงเริ่มต้น เลยเพิ่มเฉพาะสิ่งที่ผมรู้สึกว่าจำเป็นระหว่างทำโปรเจกต์ส่วนตัวเท่านั้นครับ
ส่วนตัวผมคิดว่าการใช้ eslint plugin แล้วตั้งกฎมากเกินไป กลับจะทำให้ประสิทธิภาพการทำงานลดลง เลยพยายามทำให้มีกฎเท่าที่จำเป็นครับ! นี่เป็นครั้งแรกที่ผมทำปลั๊กอินแบบนี้ เลยอยากขอคำแนะนำดูครับ
ถ้าใครสนใจ รบกวนช่วยส่งฟีดแบ็กให้หน่อยจะขอบคุณมากจริง ๆ ครับ!!
2 ความคิดเห็น
ว้าว.. อันนี้จำเป็นมากจริง ๆ ขอบคุณครับ!!
ช่วงนี้ผมเพิ่งนำ FSD มาใช้กับโปรเจกต์ของตัวเอง แต่กำหนดเลเยอร์กับเซกเมนต์ให้ชัดเจนได้ยาก แถมดูแลจัดการก็ลำบาก เลยกังวลอยู่พอดี.. เดี๋ยวจะลองใช้แล้วมาเขียนรีวิวไว้ครับ!!
โอ้ ขอบคุณครับ 555 หวังว่าจะเป็นประโยชน์นะครับ!